Products | Versions |
---|---|
TIBCO BusinessConnect EDI Protocol Powered by Instream | - |
Not Applicable | - |
Errors in logs in production.
.........................................................
2016 Apr 14 16:00:51:663 GMT -0400 BW.BusinessConnect-Interior_Server Error [bw.logger] BW-EXT-LOG-100000 job=2B305343-62D5-4038-80FD-5B0716D0D46E type=reconcile reconcile() : catch Exception - null
2016 Apr 14 16:00:51:664 GMT -0400 BW.BusinessConnect-Interior_Server Error [bw.logger] BW-EXT-LOG-100000 java.lang.NullPointerException
at com.tibco.ax.tibedi.ack.AckReconciler.handleReconcileInterchange(AckReconciler.java:382)
at com.tibco.ax.tibedi.ack.AckReconciler.reconcile(AckReconciler.java:193)
at com.tibco.ax.tibedi.ack.AckReconcileActivity.ReconcileAck(AckReconcileActivity.java:128)
at com.tibco.ax.tibedi.runtime.pf.inbound.ProcessInterchangeLoop.CallAckReconciler(ProcessInterchangeLoop.java:2188)
at com.tibco.ax.tibedi.runtime.pf.inbound.ProcessInterchangeLoop.executeNextTask(ProcessInterchangeLoop.java:1122)
at com.tibco.ax.tibedi.runtime.pf.inbound.ProcessInterchangeLoop.Start(ProcessInterchangeLoop.java:136)
at com.tibco.ax.tibedi.runtime.inbound.EDIBMHService.doProcessing(EDIBMHService.java:622)
at com.tibco.ax.tibedi.runtime.inbound.EDIBMHService.formatBoMsgData(EDIBMHService.java:593)
at com.tibco.ax.fw.runtime.inbound.impl.IBBMHService.handleAsyncMessage(IBBMHService.java:626)
at com.tibco.ax.fw.runtime.inbound.impl.IBBMHService.processMsg(IBBMHService.java:27
This issue is caused by a database (DB) access delay or other delay in the Business Connect environment. If there is a DB access delay after BusinessConnect sends the ACK response to the private process, it needs to log the transaction in the audit log in DB while the inbound ACK message is being reconciled. However, this issue is harmless because BC only cleans up these non-ACK objects before reconciliation while ACK objects are cleaned up after the reconcile process completes. Check if there is any performance issue in the DB and adjust the connection pool size according to volume. You may want to use a separate connection pool for Audit log, Runtime log and the NR log to improve DB performance.
To eliminate the retry issue, add the integer property "edi.ack.reconciler.retryCount" under System settings -> Activated Protocol Plug-ins and Properties -> tibEDI, and set the value of this property to 3.