Skip to Main Content

Analytics Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

ODI-1298: failed Caused By: java.lang.NullPointerException

User_FEWMDJan 19 2023

Hi All,
We are dealing with the below issue and your help would be valuable to us.
In our case, a series of mappings are being executed in parallel from a load plan and inserting data from one table to another. Sometimes during the execution of these mappings, we have errors caused by NullPointerException in random steps without any other information about the cause as you can see in Error 1. Additionally, not always but sometimes we have a different mapping with connection issues like Error 2.
Do you know what is the real cause of "NullPointerEception" in this particular case and if there is a way to avoid it?
The agent has been installed in a different database.
Oracle Data integrator version: 12.2.1.4.221007
Autonomous Data Warehouse
IKM Oracle Control Append
Error 1:

ODI-1217: Session DO_LOAD_ADW_VALIDATED_DETAIL_FACT (483744) fails with return code ODI-1298.
ODI-1226: Step LOAD_ADW_VALIDATED_DETAIL_FACT fails after 1 attempt(s).
ODI-1240: Flow LOAD_ADW_VALIDATED_DETAIL_FACT fails while performing a insert FK errors-CKM Oracle- operation. This flow loads target table VALIDATED_DETAIL_FACT.
ODI-1298: Serial task "SERIAL-MAP_MAIN- (10)" failed because child task "SERIAL-EU-LGC_TARGET_ADW_UNIT (20)" is in error.
ODI-1298: Serial task "SERIAL-EU-LGC_TARGET_ADW_UNIT (20)" failed because child task "insert FK errors-CKM Oracle- (180)" is in error.
Caused By: java.lang.NullPointerException
	at oracle.odi.runtime.agent.execution.sql.SQLCommand.doInitializeStatement(SQLCommand.java:115)
	at oracle.odi.runtime.agent.execution.sql.SQLCommand.getStatement(SQLCommand.java:148)
	at oracle.odi.runtime.agent.execution.sql.SQLCommand.getStatement(SQLCommand.java:142)
	at oracle.odi.runtime.agent.execution.sql.SQLCommand.execute(SQLCommand.java:189)
	at oracle.odi.runtime.agent.execution.sql.SQLExecutor.execute(SQLExecutor.java:142)
	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:217)
	at oracle.odi.runtime.agent.execution.SessionTask.doExecuteTask(SessionTask.java:129)
	at oracle.odi.runtime.agent.execution.AbstractSessionTask.execute(AbstractSessionTask.java:892)
	at oracle.odi.runtime.agent.execution.SessionExecutor$SerialTrain.runTasks(SessionExecutor.java:2234)
	at oracle.odi.runtime.agent.execution.SessionExecutor.executeSession(SessionExecutor.java:613)
	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.StartScenRequestProcessor.access$2700(StartScenRequestProcessor.java:85)
	at oracle.odi.runtime.agent.processor.impl.StartScenRequestProcessor$StartScenTask.doExecute(StartScenRequestProcessor.java:923)
	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:511)
	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:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

Error 2:

ODI-1217: Session DO_LOAD_ADW_ENTITY_FACT (483739) fails with return code ODI-1298.
ODI-1226: Step LOAD_ADW_ENTITY_FACT fails after 1 attempt(s).
ODI-1240: Flow LOAD_ADW_ENTITY_FACT fails while performing a insert FK errors-CKM Oracle- operation. This flow loads target table ENTITY_FACT.
ODI-1298: Serial task "SERIAL-MAP_MAIN- (10)" failed because child task "SERIAL-EU-LGC_TARGET_ADW_UNIT (20)" is in error.
ODI-1298: Serial task "SERIAL-EU-LGC_TARGET_ADW_UNIT (20)" failed because child task "insert FK errors-CKM Oracle- (240)" is in error.
ODI-1228: Task insert FK errors-CKM Oracle- fails on the target connection IPTO_ADWH - Prod.
Caused By: java.sql.SQLRecoverableException: IO Error: Connection reset by peer
	at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:952)
	at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1280)
	at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:1921)
	at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:1876)
	at oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:304)
	at oracle.odi.runtime.agent.execution.sql.SQLCommand.execute(SQLCommand.java:208)
	at oracle.odi.runtime.agent.execution.sql.SQLExecutor.execute(SQLExecutor.java:142)
	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:217)
	at oracle.odi.runtime.agent.execution.SessionTask.doExecuteTask(SessionTask.java:129)
	at oracle.odi.runtime.agent.execution.AbstractSessionTask.execute(AbstractSessionTask.java:892)
	at oracle.odi.runtime.agent.execution.SessionExecutor$SerialTrain.runTasks(SessionExecutor.java:2234)
	at oracle.odi.runtime.agent.execution.SessionExecutor.executeSession(SessionExecutor.java:613)
	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.StartScenRequestProcessor.access$2700(StartScenRequestProcessor.java:85)
	at oracle.odi.runtime.agent.processor.impl.StartScenRequestProcessor$StartScenTask.doExecute(StartScenRequestProcessor.java:923)
	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:511)
	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:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Connection reset by peer
	at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
	at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
	at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
	at sun.nio.ch.IOUtil.read(IOUtil.java:197)
	at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:378)
	at oracle.net.nt.TimeoutSocketChannel.read(TimeoutSocketChannel.java:175)
	at oracle.net.nt.SSLSocketChannel.readFromSocket(SSLSocketChannel.java:561)
	at oracle.net.nt.SSLSocketChannel.fillReadBuffer(SSLSocketChannel.java:329)
	at oracle.net.nt.SSLSocketChannel.fillAndUnwrap(SSLSocketChannel.java:259)
	at oracle.net.nt.SSLSocketChannel.read(SSLSocketChannel.java:110)
	at oracle.net.ns.NSProtocolNIO.doSocketRead(NSProtocolNIO.java:571)
	at oracle.net.ns.NIOPacket.readHeader(NIOPacket.java:259)
	at oracle.net.ns.NIOPacket.readPacketFromSocketChannel(NIOPacket.java:191)
	at oracle.net.ns.NIOPacket.readFromSocketChannel(NIOPacket.java:133)
	at oracle.net.ns.NIOPacket.readFromSocketChannel(NIOPacket.java:106)
	at oracle.net.ns.NIONSDataChannel.readDataFromSocketChannel(NIONSDataChannel.java:92)
	at oracle.jdbc.driver.T4CMAREngineNIO.prepareForUnmarshall(T4CMAREngineNIO.java:765)
	at oracle.jdbc.driver.T4CMAREngineNIO.unmarshalUB1(T4CMAREngineNIO.java:430)
	at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:408)
	at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:269)
	at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:656)
	at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:230)
	at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:42)
	at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:929)
	... 28 more


Thank you in advance

Comments

Post Details