My Oracle Support Banner

"No more data to read from socket" while Truncating / Refreshing a JSON Schema (Doc ID 2492260.1)

Last updated on OCTOBER 17, 2019

Applies to:

Oracle Data Integrator - Version 12.1.3.0.0 and later
Information in this document applies to any platform.

Symptoms

A Complex File Data Server was configured in Oracle Data Integrator (ODI) for a JSON file using ODI 12c. For example:

 

In the properties tab of the Complex File Data Server, an external storage was defined:

Testing the connection for data server is successful, tables are created in the external DB schema:

But when running an ODI procedure to truncate or refresh the JSON schema using J2EE Agents located on the same machine as the JSON file, the below error occurs.

The error can be bypassed by creating a new JSON Schema in the ODI topology and then schema refresh job will run fine. But after a while it fails again with the same error.

ODI-1228: Task Procedure-PROC_TEST_REFRESH_JSON_SCHEMA-TRUNCATE fails on the target connection JSON_TEST.
Caused By: java.sql.SQLRecoverableException: No more data to read from socket
  at oracle.jdbc.driver.T4CMAREngineStream.unmarshalUB1(T4CMAREngineStream.java:486)
  at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:414)
  at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:269)
  at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:603)
  at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:218)
  at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:31)
  at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1000)
  at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1316)
  at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:2168)
  at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:2100)
  at oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:363)
  at com.sunopsis.jdbc.driver.xml.SnpsXmlStatementRedirector.execute(SnpsXmlStatementRedirector.java:77)
  at com.sunopsis.jdbc.driver.xml.SnpsXmlStatement.execute(SnpsXmlStatement.java:31)
  at com.sunopsis.rdb.manager.SnpsRDBHelperOracle.truncateTable(SnpsRDBHelperOracle.java:125)
  at com.sunopsis.rdb.manager.SnpsRDBStructCreator.truncateTable(SnpsRDBStructCreator.java:170)
  at com.sunopsis.rdb.manager.SnpsRDBStructCreator.truncateStructure(SnpsRDBStructCreator.java:161)
  at com.sunopsis.jdbc.driver.xml.SnpsXmlSchema.truncate(SnpsXmlSchema.java:1837)
  at com.sunopsis.jdbc.driver.xml.SnpsXmlConnection.internalExecute(SnpsXmlConnection.java:608)
  at com.sunopsis.jdbc.driver.xml.SnpsXmlConnection.preprocessStatement(SnpsXmlConnection.java:1378)
  at com.sunopsis.jdbc.driver.xml.SnpsXmlStatement.execute(SnpsXmlStatement.java:30)
  at oracle.odi.runtime.agent.execution.sql.SQLCommand.execute(SQLCommand.java:205)
  at oracle.odi.runtime.agent.execution.sql.SQLExecutor.execute(SQLExecutor.java:141)
  at oracle.odi.runtime.agent.execution.sql.SQLExecutor.execute(SQLExecutor.java:28)
  at oracle.odi.runtime.agent.execution.TaskExecutionHandler.handleTask(TaskExecutionHandler.java:52)
  at oracle.odi.runtime.agent.execution.SessionTask.processTask(SessionTask.java:189)
  at oracle.odi.runtime.agent.execution.SessionTask.doExecuteTask(SessionTask.java:111)
  at oracle.odi.runtime.agent.execution.AbstractSessionTask.execute(AbstractSessionTask.java:864)
  at oracle.odi.runtime.agent.execution.SessionExecutor$SerialTrain.runTasks(SessionExecutor.java:2024)
  at oracle.odi.runtime.agent.execution.SessionExecutor.executeSession(SessionExecutor.java:562)
  at oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor$1.doAction(TaskExecutorAgentRequestProcessor.java:718)
  at oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor$1.doAction(TaskExecutorAgentRequestProcessor.java:611)
  at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:203)
  at oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor.doProcessStartAgentTask(TaskExecutorAgentRequestProcessor.java:800)
  at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$1400(StartSessRequestProcessor.java:74)
  at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:702)
  at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:180)
  at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:108)
  at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
  at oracle.odi.runtime.agent.execution.job.OdiJob.call(OdiJob.java:73)
  at oracle.odi.runtime.agent.execution.job.OdiJob.call(OdiJob.java:73)
  at java.util.concurrent.FutureTask.run(FutureTask.java:262)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:622)
  at java.lang.Thread.run(Thread.java:745)

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.