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