Direct links to fixes
APAR status
Closed as program error.
Error description
In IBM Process Portal, when you click a process instance in the Processes tab (to view the business process diagram for the instance in the Process Performance dashboard) or you click a process in the Process Performance dashboard (to view details of the process), a StackOverflow error might occur. This error is displayed in Process Portal and in the SystemOut.log file. The stack trace looks similar to the following stack trace: [9/1/15 16:36:36:736 CDT] 000001f5 wle E CWLLG2229E: An exception occurred in an EJB call. Error: null java.lang.StackOverflowError ... at com.lombardisoftware.core.script.js.Utilities.getExternalDiagra m(Utilities.java:2793) at com.ibm.bpm.script.js.ProcessHistoricalStatistics.findExternalP rocesses(ProcessHistoricalStatistics.java:700) at com.ibm.bpm.script.js.ProcessHistoricalStatistics.findTaskActiv ities(ProcessHistoricalStatistics.java:681) at com.ibm.bpm.script.js.ProcessHistoricalStatistics.findExternalP rocesses(ProcessHistoricalStatistics.java:706) at com.ibm.bpm.script.js.ProcessHistoricalStatistics.findTaskActiv ities(ProcessHistoricalStatistics.java:681) at com.ibm.bpm.script.js.ProcessHistoricalStatistics.findExternalP rocesses(ProcessHistoricalStatistics.java:706) at com.ibm.bpm.script.js.ProcessHistoricalStatistics.findTaskActiv ities(ProcessHistoricalStatistics.java:681) at com.ibm.bpm.script.js.ProcessHistoricalStatistics.findExternalP rocesses(ProcessHistoricalStatistics.java:706) at com.ibm.bpm.script.js.ProcessHistoricalStatistics.findTaskActiv ities(ProcessHistoricalStatistics.java:681) ... The significant characteristic of the stack trace is that the findExternalProcesses and findTaskActivities methods, as previously illustrated, appear alternating many times. The following error is also logged as a result. [12/14/15 12:52:09:963 EST] 0000013d JavaScriptRun E CWLLG2015E: An unexpected runtime exception occurred. See exception for more details. Error: JavaException: com.lombardisoftware.client.persistence.common.BrokenReferenceEx ception: Business Process Diagram with ID BPD.cb42ebbe-5123-44d7-987d-45d1f95c421c not found. (<JSScript>#72). org.mozilla.javascript.JavaScriptException: JavaException: com.lombardisoftware.client.persistence.common.BrokenReferenceEx ception: Business Process Diagram with ID BPD.cb42ebbe-5123-44d7-987d-45d1f95c421c not found. (<JSScript>#72) at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.jav a:2690) at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:24 87) at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunct ion.java:164) at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.j ava:398) at com.lombardisoftware.core.script.JavaScriptContextFactory.doTopC all(JavaScriptContextFactory.java:192) at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.jav a:3070) at org.mozilla.javascript.InterpretedFunction.exec(InterpretedFunct ion.java:175) at com.lombardisoftware.core.script.js.JSScript.exec(JSScript.java: 78) PRODUCTS AFFECTED: IBM Business Process Manager (BPM) Advanced IBM BPM Standard IBM BPM Express
Local fix
1) Disable projected path calculation for a specific BPD via a checkbox in Process Designer. This requires redeploying the BPD. 2) Based on http://www.ibm.com/support/knowledgecenter/SSFPJS_.5.6/com.ibm.w bpm.wle.widget.doc/topics/cport_gettingstarted_instance.html, assign action policy ACTION_VIEW_CRITICAL_PATH to only a group that does not exist, so that no user can view projected path information, preventing critical path calculation for all BPDs. 3) Limit the projected path calculation time and possibility of stack overflow by setting the property documented in http://www-01.ibm.com/support/knowledgecenter/SSFPJS_8.5.6/com.i bm.wbpm.admin.doc/topics/tadm_portal_configprojectedpath.html for all BPDs. Lower this value from its default value of 20 seconds to a smaller value.
Problem summary
Logic that calculates historical data for a process instance can enter a deep recursion loop because as it traverses the instance's business process diagram, which can include nested subprocesses and linked processes. As a result, the logic might fail to mark a diagram as having been visited, causing repeated traversals of previously visited diagrams. Eventually this recursion loop can result in a StackOverflow error.
Problem conclusion
A fix is available for IBM BPM V8.5.5.0 that ensures that diagrams for subprocesses and linked processes inside a process instance's business process diagram are not visited more than once, preventing a recursion loop and StackOverflow error. On Fix Central (http://www.ibm.com/support/fixcentral), search for JR54223. 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 JR54223, 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
JR54223
Reported component name
BPM ADVANCED
Reported component ID
5725C9400
Reported release
855
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2015-09-08
Closed date
2015-10-27
Last modified date
2016-03-07
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 ADVANCED
Fixed component ID
5725C9400
Applicable component levels
R855 PSY
UP
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSFTN5","label":"IBM Business Process Manager Advanced"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"855","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
14 October 2021