Occasionally, Batch Simulation fails in SAS 9.4 M9.
In this scenario, the following error occurs in SASServer7_1 log:
2026-04-09 00:33:34,477 ERROR [] com.sas.rtdm.implementation.batch.EngineBatchDriver - Fatal error
com.sas.analytics.ph.RTDMException: SQLException received while writing to results table: Unable to
perform requested operation. The result: closed.
Verify first column is of type string and named 'batch_job_id,' second column is of type
string and named 'correlation_id,' and third column string and named 'status_cd.'
Remaining columns must match event reply variable names and types.
Terminating batch job 6 for event: 'benvt'
at com.sas.rtdm.implementation.batch.EngineBatchDriver.batchRun (Engine BatchDriver.java:828)
~[sas.rtdm.runtime.jar:6040301.0.6..20260331192603_f3sasds64p_pp]
at com.sas.rtdm.batch.BatchService$1.run(BatchService.java:85) ~
[sas.rtdm.runtime.jar:6040301.0.6.20260331192603_f3sasds64p_pp]
at java.util.concurrent.ThreadPoolExecutor.runWorker
(ThreadPoolExecutor.java:1144) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run
(ThreadPoolExecutor.java:642) ~[?:?]
at java.lang.Thread.run(Thread.java:1583) ~[?:?]
Caused by: java.sql.SQLException: Unable to perform requested operation.
The result set is closed.
Also, the following error occurs in SASServer6_1 log:
.sas.analytics.crm.flow.ejb.FlowProxyImpl$83.run(FlowProxyImpl.java:3096) ~
[sas.analytics.crm.ma.core.jar:607000.0.0.2025081320120 .sas.analytics.crm.flow.ejb.FlowProxy
Impl$83.run(FlowProxyImpl.java:3077) ~[sas. analytics.crm.ma.core.jar:607000.0.0.2025081320120
.sas.analytics.crm.cm.ejb.util.RunnableWithInstance.call(
RunnableWithInstance.java:9) ~ [sas.analytics.crm.ma.core.jar:607000.0.0.
3201202_d4ma67]
.sas.analytics.crm.cm.ejb.util.Wrapped Runnable.run(Wrapped Runnable.java:83)
~[sas.analytics.crm.ma.core.jar:607000.0.0.20250813201
.sas.ci.services.common.services.asynchronous.
SessionCountingRunnableQueue$QueueHandler.run
(SessionCountingRunnableQueue.java:88)
cs.ci.services.client.jar:607000.0.0.20250813200554_d4cicmn67]
3201202_d4ma67]
.sas.analytics.crm.task.ejb.Cleared ThreadLocalRunnable.run
(Cleared ThreadLocalRunnable.java:24)
~[sas. analytics.crm.ma.core.jar:607
a.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
a.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
a.lang.Thread.run(Thread.java:1583) ~[?:?]
y: com.sas.analytics.crm.error.client.ApplicationException: Problem creating metadata
for output table. .sas.analytics.crm.flow. inbound.
BatchTableFactory.generateMetadataTableForEvent
(BatchTableFactory.java:294) ~[sas.analytics.crm.ma 0.0.20250813201202_d4ma67]
.sas.analytics.crm.flow. inbound. BatchTableFactory.createTableForOutput
(BatchTableFactory.java:173) ~[sas.analytics.crm.ma.core.jar 3201202_d4ma67]
more
y: com.sas.services.ServiceException: Exception occurred updating the SAS Metadata Repository.
.sas.services.information.OMIServerRepository.updateEntity (OMIServerRepository.java:1075)
~[sas.svc.core.jar:904900.0.0.2025051423
.sas.services.information.OMIServerRepository.addEntity
(OMIServerRepository.java:1151) ~[sas.svc.core.jar:904900.0.0.2025051423115
The issue is caused when you use try-with-resources in the SELECT query, which closes the PreparedStatement. In turn, the ResultSet closes prematurely, leading to the “ResultSet is closed” error shown above during a later iteration.