Written by

Software Engineer, Interface Team at Sanford Health
Question Don Martin · Sep 5, 2025

LOAD DATA from file erroring after upgrade to 2025.1

We have a task that runs objectscript code to load data into a linked external table.  After upgrading from 2024.1 to 2025.1, the load is throwing an error, with error code -400, and no error message.  The data DOES get loaded into the external table in its entirety, so with no meaningful error message, its hard to determine what the issue is.  The result is the same with and without the USING clause, so don't let that confuse you.  We have logs of this statement succeeding before upgrade, and were able to get this statement to work in our production environment, which is still on version 2024.1.  I have recompiled all namespaces after upgrade, stopped and restarted the JDBC server, and have dropped and relinked the external table, all without success.

Code: LOAD DATA FROM FILE '/intersystems/filepath/loadtest.csv' INTO SCM_Table_sandbox.dontest USING {"maxerrors":0,"from": {"file": {"header":false,"columnseparator": ","}}}

SQL Diagnostic Log:

Start time 2025-09-05 18:07:06.822705
User xxxx
Status Complete
Process ID 650691
SQLCODE -400 - See detailed error messages below
Input record count 0
Error count 2 (max error count: 0)
Statement LOAD DATA FROM FILE '/intersystems/filepath/loadtest.csv' INTO SCM_TABLE_SANDBOX . DONTEST USING { "MAXERRORS" :MAXERRORS 0 , "FROM" :FROM { "FILE" :FILE { "HEADER" :HEADER FALSE , "COLUMNSEPARATOR" :COLUMNSEPARATOR "," } } }

Messages:

18:07:06.848 (server) - info: {"resultid":"21","bufferrowcount":500,"queuesize":2,"statistics":false,"from":{"file":{"file":"/intersystems/filepath/loadtest.csv","columns":null,"header":false,"types":null,"columnseparator":",","lineseparator":"\n"},"select":["name","id"],"intotypes":[12,4]},"into":{"table":"SCM_Table_sandbox.dontest","hints":"","columns":["name","id"],"types":[12,4],"values":["?","?"],"bindings":[0,1],"jdbc":{"threads":3}}}

18:07:07.123 (FileReader) - completed: Reader Complete: Total Input file read time: 42 ms,

18:07:07.124 (JdbcWriter) - completed: Writer Complete: Total write time: 45 ms,

18:07:08.219 (JdbcWriter) - completed: Writer Complete: Total write time: 1142 ms,

18:07:08.220 (JdbcWriter) - error: 1

18:07:08.220 (JdbcWriter) - abort: 1

Any help would be appreciated!

-Don Martin, Sanford Health

Product version: IRIS 2025.1
$ZV: IRIS for UNIX (Red Hat Enterprise Linux 9 for x86-64) 2025.1.1 (Build 308U) Thu Jul 10 2025 15:59:33 EDT [HealthConnect:8.2.3]

Comments

DC AI Bot · May 27 Bot

The retrieved material does not contain a documented explanation or fix specific to a regression in version 2025.1 for LOAD DATA FROM FILE into a linked external table. The closest relevant information says that LOAD DATA can complete with an SQLCODE -400 even when data is loaded, and that detailed diagnostics should be checked in %SQL_Diag.Result and %SQL_Diag.Message for more information.[1][2]

You can inspect the diagnostic tables to get row-level or operation-level details:

  • %SQL_Diag.Result for the overall load result, including errorCount
  • %SQL_Diag.Message for detailed messages, and you can filter it by the related diagnostic result ID[2]

One source also notes that for LOAD DATA, “Full details are logged on the server’s SQL Diagnostic Logs”.[3]

Because the returned documents do not include a 2025.1-specific cause, workaround, or correction for the behavior you described, I can only say that this is beyond the available material here.[4][5]


Sources:

Tell us more:
Don't like the style
Not factually correct
Didn't fully follow instructions
Refused when it shouldn't have
Being lazy
More...
Submit
0 0
Don Martin · May 27

This issue was identified as a bug in the 2025.1 release.  A fix was put in version 2025.1.3 which resolved our issue.  I believe the fix is also included in versions 2025.3 and later.

0