Broken Pipe

Howdy All,

We have searched the thread but have not found a solution. We are receiving the following errors in our server log when attempting to insert documents into the TN database.

2009-10-06 01:04:46 CDT [ISU.0000.9999V4] Error inserting document 0agkok004gk767mo000001d5 [Error inserting document 0agkok004gk767mo000001d5]
2009-10-06 01:04:46 CDT [ISU.0000.9999V2] Integration Server User: Default [TRNSERV.000016.000032]
2009-10-06 01:04:46 CDT [ISU.0000.9999V2] Brief message: Error inserting document 0agkok004gk767mo000001d5 [TRNSERV.000016.000098]
2009-10-06 01:04:46 CDT [ISU.0000.9999V2] Full message: Document 0agkok004gk767mo000001d5 from this sender was not successfully stored in the datastore. The original exception message was: java.sql.SQLException: [wm-cjdbc34-0042][Oracle JDBC Driver]No more data available to read. [TRNSERV.000016.000075]
2009-10-06 01:04:46 CDT [ISU.0000.9999V2] Related doc: null [TRNSERV.000016.000118]
2009-10-06 01:04:46 CDT [ISU.0000.9999V2] Related partner: 0agkoj0031t93p7a00000doh [TRNSERV.000016.000084]
2009-10-06 01:04:46 CDT [ISU.0000.9999D] An error occurred trying to insert document (doc id = 0agkok004gk767mo000001d5, sender id = 0agkoj0031t93p7a00000doh) into the database. [TRNSERV.000007.000017]
2009-10-06 01:04:46 CDT [ISU.0000.9999D] java.sql.SQLException: [wm-cjdbc34-0042][Oracle JDBC Driver]Broken pipe
java.sql.SQLException: [wm-cjdbc34-0042][Oracle JDBC Driver]Broken pipe
java.sql.SQLException: [wm-cjdbc34-0042][Oracle JDBC Driver]Broken pipe
at com.wm.dd.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.wm.dd.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.wm.dd.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.wm.dd.jdbc.oracle.net8.OracleNet8NSPTDAPacket.sendRequest(Unknown Source)
at com.wm.dd.jdbc.oracle.OracleImplConnection.commitTransaction(Unknown Source)
at com.wm.dd.jdbc.oracle.OracleImplConnection.stopManualTransactionMode(Unknown Source)
at com.wm.dd.jdbc.base.BaseConnection.setAutoCommitInternal(Unknown Source)
at com.wm.dd.jdbc.base.BaseConnection.setAutoCommit(Unknown Source)
at com.wm.app.jdbc.JDBCConnection.setAutoCommit(JDBCConnection.java:179)
at com.wm.app.tn.db.BDSingleDocOperations.insert(BDSingleDocOperations.java:667)
at com.wm.app.tn.db.BDSingleDocOperations.insert(BDSingleDocOperations.java:108)
at com.wm.app.tn.db.BizDocStore.insertDocument(BizDocStore.java:441)
at com.wm.app.tn.route.RoutingActions.persist(RoutingActions.java:633)
at wm.tn.docimpl.persist(docimpl.java:819)
at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.wm.app.b2b.server.JavaService.baseInvoke(JavaService.java:322)
at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:612)
at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44)
at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:226)
at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49)
at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:198)
at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39)
at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:411)
at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:521)
at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:369)
at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246)
at com.wm.app.b2b.server.BaseService.invoke(BaseService.java:168)
at com.wm.lang.flow.FlowInvoke.invoke(FlowInvoke.java:324)
at com.wm.lang.flow.FlowState.invokeNode(FlowState.java:581)
at com.wm.lang.flow.FlowState.step(FlowState.java:438)
at com.wm.lang.flow.FlowState.invoke(FlowState.java:403)
at com.wm.app.b2b.server.FlowSvcImpl.baseInvoke(FlowSvcImpl.java:982)
at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:612)
at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44)
at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:226)
at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49)
at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:198)
at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39)
at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:411)
at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:521)
at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:369)
at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246)
at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:113)
at com.wm.app.b2b.server.Service.doInvoke(Service.java:635)
at com.wm.app.b2b.server.Service.doInvoke(Service.java:532)
at wm.EDIINT.utilImpl.spawn(utilImpl.java:1470)
at sun.reflect.GeneratedMethodAccessor120.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.wm.app.b2b.server.JavaService.baseInvoke(JavaService.java:322)
at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:612)
at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44)
at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:226)
at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49)
at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:198)
at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39)
at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:411)
at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:521)
at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:369)
at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246)
at com.wm.app.b2b.server.BaseService.invoke(BaseService.java:168)
at com.wm.lang.flow.FlowInvoke.invoke(FlowInvoke.java:324)
at com.wm.lang.flow.FlowState.invokeNode(FlowState.java:581)
at com.wm.lang.flow.FlowState.step(FlowState.java:438)
at com.wm.lang.flow.FlowState.invoke(FlowState.java:403)
at com.wm.app.b2b.server.FlowSvcImpl.baseInvoke(FlowSvcImpl.java:982)
at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:612)
at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44)
at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:226)
at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49)
at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:198)
at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39)
at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:411)
at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:521)
at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:369)
at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246)
at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:113)
at com.wm.app.b2b.server.ServiceThread.run(ServiceThread.java:82)
at com.wm.util.pool.PooledThread.run(PooledThread.java:105)
at java.lang.Thread.run(Thread.java:534)
2009-10-06 01:04:46 CDT [ISU.0000.9999E] com.wm.app.tn.db.DatastoreException: Couldnt insert new document
(0) java.sql.SQLException: [wm-cjdbc34-0042][Oracle JDBC Driver]Broken pipe
(1) java.sql.SQLException: [wm-cjdbc34-0042][Oracle JDBC Driver]Broken pipe

Our DBA can see where a few minutes prior to us receiving the errors, a previous connection hangs which essentially starts a snow balling effect of numerous DB connection errors.

Has anyone seen this before?

Hi,

Was document getting inserted before? Are you able to connect to DB from IS host otherwise? Check if you have any firewall between IS and DB…

Cheers!
Shahid

Thanks for your response Shahid! We have narrowed the issue down to being caused by large files being retrived from the /tspace directory and attempting to save to the database. We had configured the /tspace directory to be 100mg but it was actually 400mg. We upped our logging levels and could see where we were receiving errors when trying to route the flat file into TN. We could also see the SenderID and DocID. We could see where there was an empty record created in the database for that SenderID but could not find the DocID. When we checked the file size in the logs, it peaked our interest. We could directly correlate the insert to the times the files were created in the /tspace directory.

We are still monitoring things so I continue to have my fingers crossed :smile: