Business Connect throws the error '"ava.lang.NullPointerException, AckReconciler.handleReconcileInterchange".

Business Connect throws the error '"ava.lang.NullPointerException, AckReconciler.handleReconcileInterchange".

book

Article ID: KB0093988

calendar_today

Updated On:

Products Versions
TIBCO BusinessConnect EDI Protocol Powered by Instream -
Not Applicable -

Description

Description:

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



Symptoms:
As described.
Cause:

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.

Issue/Introduction

Business Connect throws the error '"ava.lang.NullPointerException, AckReconciler.handleReconcileInterchange".

Resolution

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. 

Additional Information

BusinessConnect EDI Protocol User's Guide