To many time later, anyway for keep reference

Set string = ""
Set length = 256
For i=1:1:length {
    Set Up = $random(2)
    Set tNum = $random(28)
    If (tNum = 26) {
        Set tChar = "-"
    }elseif (tNum = 27) {
        Set tChar = "_"
    } Else {
        If Up {
            // Upper case range
            Set tChar = $CHAR(tNum+65)
        } Else {
            // Lower case range
            Set tChar = $CHAR(tNum+97)
        }
    }
    Set string = string _ tChar
}

Sorry, not enough data on my question,
this machine work as "ensemble",
more bigger database have no more 40Gb (production active),
iristemp growth from aprox 10Gb  to 106Gb,
after init Iris Again i move this database to another disk, and use truncate button, the screen show 24 Gb size, not file total size, after run process file and portal show lower 100Mg file
this machine use outbound queries ODBC, not inbound queries exists, this outbound queries get a lower number of rows,
some process clean tables used as temporal data extracted from Non Iris database to transfer this data to another Iris Server
This machine work on Failover Cluster, the other machine have no news after shutdown
Only one special condition, this cluster work without arbiter
After start iris again i read Audit and logs, not a clue in Iris or Linux logs

ghost in the machine ?

in my case, some fixes for Huawei (like Old version s3)

Class Cloud.Storage
{
ClassMethod GetOBSCredentials(profile = "CloudStorage") As %Status
{
    Set tUsername = ##Class(Ens.Config.Credentials).%OpenId(profile)
    If (tUsername){
        Set %extOBS("AccessKeyId")=tUsername.Username
        Set %extOBS("SecretAccessKey")=tUsername.Password
    }
    Quit $$$OK
}
ClassMethod OBSSignRequest(ByRef request, requeststring, bucket) As %String
{
    If '$data(%extOBS) {
        Set sc=..GetOBSCredentials()
    }
    Set tAccessKeyId = %extOBS("AccessKeyId")
    Set tSecretAccessKey = %extOBS("SecretAccessKey")
    Set tDateH = $ZTS
    Set tWeekDay = $Piece($ZDateTime(tDateH,11)," ",1)
    Set tDate = tWeekDay_", "_$ZDateTime(tDateH,2,1)_" GMT"
    Set request.Date = tDate
    Set tContentMD5 = ""
    Set tContentType = ""
    Set CanonicalizedHeaders = "x-obs-acl:private"
    Set tStringToSign = $Piece(requeststring," ",1)_$Char(10)_
                            tContentMD5_$Char(10)_
                            tContentType_$Char(10)_
                            tDate_$Char(10)_
                            "/"_ bucket_$Piece(requeststring," ",2)
    Set tStringToSignUTF8 = $Zconvert(tStringToSign,"O","UTF8")
    Set tSignature = ##Class(%SYSTEM.Encryption).HMACSHA1(tStringToSignUTF8,tSecretAccessKey)
    Set tSignatureBase64 = ##Class(%SYSTEM.Encryption).Base64Encode(tSignature)
    Set tAuthorization = "OBS "_tAccessKeyId_":"_tSignatureBase64
    Set request.Authorization=tAuthorization
    Quit $$$OK
}
ClassMethod GetFileHeader(filename, ByRef stream As %Stream.GlobalBinary, ByRef status As %Library.DynamicObject, classname = "") As %Status
{
    Set status = {}
    Set bucket = $Piece(filename,"/",3)
    Set key=$Piece(filename,"/",4,*)
    Set object="/"_bucket_"/"_key
    Set obsRegion=$Get(^EXT.OBSBucketRegion(bucket),"la-south-2")
    Set server = bucket_".obs."_obsRegion_".myhuaweicloud.com"
    Set request = ##Class(%Net.HttpRequest).%New()
    Set request.Server = server
    Set request.Https=1
    Set request.SSLConfiguration="ISC.FeatureTracker.SSL.Config"
    Set url =  "/"_key
    Set requeststring="GET "_"/"_key
    Set sc= ..OBSSignRequest(request,requeststring,bucket)
    Set sc = request.Get(url)
    Set status.code = request.HttpResponse.StatusCode
    Set stream=request.HttpResponse.Data
    Set stream.LineTerminator=$Char(10)
    Quit $$$OK
}
}

I use Credentials to save data.

Thanks !!

Set tSC = $System.Status.OK()
Try{
    Set tRequest = ##class(PortalPaciente.s0.ConsultaPaciente1).%New()
    Set tResponse = ##class(PortalPaciente.s0.InformacionPaciente).%New()
    Set pResponse = ##class(PortalPaciente.Msg.OInformacionPaciente).%New()
    Set tRequest.RUT = pRequest.RUT
    Set tSC = ..Adapter.InvokeMethod("ConsultaPaciente",.tResponse,tRequest)
    if '$IsObject(tResponse)
    {
        Set tSC = $System.Status.Error(5001,"The method ConsultaPaciente did not return anything!")
        Quit
    }
    Set pResponse.EstadoConsulta = tResponse.EstadoConsulta
}
catch(tException)
{
    Set tSC = tException.AsStatus()
}
Quit tSC