Itgenclr009 bij gebruik ascii_to_blob in Invantive Data Hub 26.0

Bij het uitvoeren van onderstaand SQL statement in Invantive Data Hub 26.0 krijg ik deze foutmelding. Deze foutmelding trad niet op onder release 25.0:

10:29:03.074 itgensql264: Invantive UniversalSQL statement started.
**** 10:29:03.148 Warning itgendhb173: Context: d:\jobs\sql\xxtshtsis.sql: insert into write_file@os
( file_contents
, file_path
)
se...mts
         from FTPFILESTOREMOVE@InMemoryStorage
       ) t
10:29:03.154 Error itgenclr009: External error in Invantive Data Hub.

Expression of type 'System.Byte[]' cannot be used for parameter of type 'System.String' of method 'Byte[] AsciiToBlob(Invantive.Basics.GlobalState, Invantive.Basics.ExecutionOptions, Invantive.Basics.SqlExecutionStep, System.String)' (Parameter 'arg3').
10:29:03.158 Question itgencun002: Show details? Question? [y/N]

SQL statement:

create or replace table FtpFilesToRemove@InMemoryStorage
as
select regexp_replace(regexp_replace(cte.txt, ' => .*', ''), 'remote:/home/ACME/AcmeSISorders/', '')
       file_name
from   read_file_text@Os
       ( '${LOG_PATH}\download-ftp-${TIMESTAMP}.log'
       ) rft
join   csvtable
       ( passing rft.file_contents
         column delimiter '########'
         columns txt varchar2 position next
       ) cte
on     cte.txt like 'remote:%.xml'

insert into write_file@os
( file_contents
, file_path
)
select ascii_to_blob
       ( 'cd AcmeSISorders'
         || chr(13) || chr(10) || t.delete_stmts
         || chr(13) || chr(10) || 'quit'
       )
,      '${OUT_PATH}\delete-ftp.scr'
from   ( select listagg('delete ' || file_name, chr(13) || chr(10)) delete_stmts
         from FTPFILESTOREMOVE@InMemoryStorage
       ) t

De call stack is:

Expression of type 'System.Byte[]' cannot be used for parameter of type 'System.String' of method 'Byte[] AsciiToBlob(Invantive.Basics.GlobalState, Invantive.Basics.ExecutionOptions, Invantive.Basics.SqlExecutionStep, System.String)' (Parameter 'arg3').
10:37:17.030 System.ArgumentException
ValidationException
   at System.Dynamic.Utils.ExpressionUtils.ValidateOneArgument(MethodBase method, ExpressionType nodeKind, Expression arguments, ParameterInfo pi, String methodParamName, String argumentParamName, Int32 index)
   at System.Linq.Expressions.Expression.Call(MethodInfo method, Expression arg0, Expression arg1, Expression arg2, Expression arg3)
   at Invantive.Sql.V1.TransformToExpression.HandleFunctionAscii_to_blob(GlobalState owner, ExecutionOptions executionOptions, SqlExecutionStep sqlExecutionStep, IProviderManager manager, ExpressionAndFilter[] expressionAndFilters, Expression[] expressions, String sqlFunctionLowerCase)
   at Invantive.Sql.V1.TransformToExpression.VisitFunctionExpression...utionOptions executionOptions, SparseArrayPool sparseArrayPool, String statement, ResultSet& resultSet, Action`3 fetchMoreRows, Action`9 executeStatement, Boolean isInInteractiveMode, ScriptingLanguageNextStepSpecification& nextStepSpecification) in c:\smoke\ws-26.0\Invantive.Data.Hub\src\Invantive.Producer.Data.Hub\QueryEngine.cs:line 2555
   at Invantive.Producer.Data.Hub.QueryEngine.ProcessStatements(GlobalState owner, ExecutionOptions executionOptions, SparseArrayPool sparseArrayPool, Action`3 fetchMoreRows, Action`9 executeStatement, IEnumerable`1 statements, String sourceFileName, ScriptingLanguageNextStepSpecification& exitSpecification) in c:\smoke\ws-26.0\Invantive.Data.Hub\src\Invantive.Producer.Data.Hub\QueryEngine.cs:line 1604
10:37:17.040 itgendhb221: End program execution with exit code 6.
10:37:17.041 itgendhb068: Program finished on 24-6-2026 10:37:17.
itgenpgm001: Application finished

Dit probleem is opgelost in versie 26.0.155 en nieuwer.

Deze is te downloaden vanaf https://download.invantive.com.

Dit topic is 3 dagen na het laatste antwoord automatisch gesloten. Nieuwe antwoorden zijn niet meer toegestaan.