Direct links to fixes
APAR status
Closed as program error.
Error description
If you have a business process definition (BPD) that contains an inclusive gateway, evaluating the gateway might run into a loop and an instance of this BPD might hang when the instance goes through the inclusive gateway. You see messages similar to this message in the SystemOut.log file: [3/5/15 12:06:13:711 CET] 00000030 ThreadMonitor W WSVR0605W: Thread "WorkManager.bpm-em-workmanager : 3" (00000583) has been active for 730168 milliseconds and may be hung. There is/are 4 thread(s) in total in the server that may be hung. The stack trace that follows the thread hung message contains lines that are similar to the following lines: at com.lombardisoftware.bpd.runtime.engine.BPDNetState. doIsOrJoinEnabled(BPDNetState.java:691) at com.lombardisoftware.bpd.runtime.engine.BPDNetState. doIsOrJoinEnabled(BPDNetState.java:691) at com.lombardisoftware.bpd.runtime.engine.BPDNetState. doIsOrJoinEnabled(BPDNetState.java:691) at com.lombardisoftware.bpd.runtime.engine.BPDNetState. doIsOrJoinEnabled(BPDNetState.java:691) at com.lombardisoftware.bpd.runtime.engine.BPDNetState. isOrJoinEnabled(BPDNetState.java:561) at com.lombardisoftware.bpd.runtime.engine.BPDNetState. canEnable(BPDNetState.java:204) at com.lombardisoftware.bpd.runtime.engine.BPDNetState. findFlowObjectThatCanBeEnabled(BPDNetState.java:112) at com.lombardisoftware.bpd.runtime.engine.BPDNetState. tryToEnableFlowObjects(BPDNetState.java:95) at com.lombardisoftware.bpd.runtime.engine.BPDExecutionTree. doEnableTransitionsInAllNetStates(BPDExecutionTree.java:185) at com.lombardisoftware.bpd.runtime.engine.BPDExecutionTree. enableTransitionsInAllNetStates(BPDExecutionTree.java:173) at com.lombardisoftware.bpd.runtime.engine.BPDEngine. enableTransitions(BPDEngine.java:603) at com.lombardisoftware.bpd.runtime.engine.BPDEngine. resume(BPDEngine.java:193) When you try to work with such instances, you see the following lock timeout messages for the SQL statement in the SystemOut.log file: SELECT BPD_INSTANCE_ID FROM LSW_BPD_INSTANCE WHERE BPD_INSTANCE_ID = ? FOR UPDATE Alternatively, you might see additional thread hung messages with a stack trace that follows, and that stack trace might contain lines that are similar to the following lines: at com.lombardisoftware.bpd.runtime.engine.util. LockBPDInstanceCommand.lockBPDInstance (LockBPDInstanceCommand.java:92) at com.lombardisoftware.bpd.runtime.engine.util. LockBPDInstanceCommand.access$100 (LockBPDInstanceCommand.java:36) at com.lombardisoftware.bpd.runtime.engine.util. LockBPDInstanceCommand$1.doInTransaction (LockBPDInstanceCommand.java:53) at com.lombardisoftware.server.core.TXCommand$2.call (TXCommand.java:85) at com.lombardisoftware.utility.spring. ProgrammaticTransactionSupport.executeInExistingTransaction (ProgrammaticTransactionSupport.java:634) at com.lombardisoftware.utility.spring. ProgrammaticTransactionSupport.execute (ProgrammaticTransactionSupport.java:335) at com.lombardisoftware.server.core.TXCommand. executeInDeadlockRetryLoop(TXCommand.java:83) at com.lombardisoftware.bpd.runtime.engine.util. LockBPDInstanceCommand.execute (LockBPDInstanceCommand.java:74)
Local fix
Problem summary
When an inclusive gateway is reached during a BPD, all incoming sequence flows are evaluated for open tokens. This evaluation decides whether the navigation can continue. In some cases, cycles on the income sequence flows cause the evaluation to enter an endless loop. Because the corresponding BPD instance is locked during the evaluation, new requests to the BPD instance fail and entries are logged in the SystemOut.log file with a lock timeout for the SQL statement.
Problem conclusion
A fix is/will be available for IBM BPM V8.5.0.1 that avoids entering an endless loop while an inclusive gateway is being evaluated. On Fix Central (http://www.ibm.com/support/fixcentral), search for JR52760: 1. Select IBM Business Process Manager with your edition from the product selector, the installed version to the fix pack level, and your platform, and then click Continue. 2. Select APAR or SPR, enter JR52760, and click Continue. When you download fix packages, ensure that you also download the readme file for each fix. Review each readme file for additional installation instructions and information about the fix.
Temporary fix
Not applicable
Comments
APAR Information
APAR number
JR52760
Reported component name
BPM ADVANCED
Reported component ID
5725C9400
Reported release
850
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2015-03-06
Closed date
2015-04-17
Last modified date
2015-04-17
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
BPM STANDARD
Fixed component ID
5725C9500
Applicable component levels
R850 PSY
UP
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSFTDH","label":"IBM Business Process Manager Standard"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.5","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
14 October 2021