Fixes are available
APAR status
Closed as program error.
Error description
When using collect and decision table in two different rules with sequential compiler, the following NPE might occurs when generating a RuleApp in Rule Designer: java.lang.NullPointerException at com.ibm.rules.engine.fastpath.compiler. AbstractEngineSplitter.<init>(AbstractEngineSplitter.java:54) at com.ibm.rules.engine.fastpath.compiler. SeqEngineSplitter.<init>(SeqEngineSplitter.java:51) at com.ibm.rules.engine.fastpath.compiler. SemSequentialCompiler.visit(SemSequentialCompiler.java:227) at com.ibm.rules.engine.fastpath.semantics.SemMultiTests. accept(SemMultiTests.java:65) at com.ibm.rules.engine.fastpath.compiler. SemSpecializedCompiler.visitTrueNode(SemSpecializedCompiler. java:392) at com.ibm.rules.engine.fastpath.compiler. SemSpecializedCompiler.visit(SemSpecializedCompiler.java:325) at com.ibm.rules.engine.fastpath.compiler. SemSequentialCompiler.visit(SemSequentialCompiler.java:1069) at com.ibm.rules.engine.fastpath.compiler. SemStaticSequentialCompiler.visit(SemStaticSequentialCompiler. java:330) at com.ibm.rules.engine.fastpath.semantics.SemFromNode. accept(SemFromNode.java:55) at com.ibm.rules.engine.fastpath.compiler. SemSpecializedCompiler.visitTrueNode(SemSpecializedCompiler. java:392) at com.ibm.rules.engine.fastpath.compiler. SemSpecializedCompiler.visit(SemSpecializedCompiler.java:325) at com.ibm.rules.engine.fastpath.compiler. SemSequentialCompiler.visit(SemSequentialCompiler.java:1069) at com.ibm.rules.engine.fastpath.compiler. SemStaticSequentialCompiler.visit(SemStaticSequentialCompiler. java:330) at com.ibm.rules.engine.fastpath.semantics.SemFromNode. accept(SemFromNode.java:55) at com.ibm.rules.engine.fastpath.compiler. SemSpecializedCompiler.visitTrueNode(SemSpecializedCompiler. java:392) at com.ibm.rules.engine.fastpath.compiler. SemSpecializedCompiler.visit(SemSpecializedCompiler.java:206) at com.ibm.rules.engine.fastpath.compiler. SemSequentialCompiler.visit(SemSequentialCompiler.java:1061) at com.ibm.rules.engine.fastpath.compiler. SemStaticSequentialCompiler.visit(SemStaticSequentialCompiler. java:335) at com.ibm.rules.engine.fastpath.semantics.SemInNode. accept(SemInNode.java:56) at com.ibm.rules.engine.fastpath.compiler. SemSequentialCompiler.testAsStatement(SemSequentialCompiler. java:614) at com.ibm.rules.engine.fastpath.compiler. SemSequentialCompiler.visit(SemSequentialCompiler.java:599) at com.ibm.rules.engine.fastpath.compiler. SemStaticSequentialCompiler.visit(SemStaticSequentialCompiler. java:325) at com.ibm.rules.engine.fastpath.semantics.SemIfTestNode. accept(SemIfTestNode.java:72) at com.ibm.rules.engine.fastpath.compiler. SemSpecializedCompiler.visitTrueNode(SemSpecializedCompiler. java:392) at com.ibm.rules.engine.fastpath.compiler. SemSpecializedCompiler.visit(SemSpecializedCompiler.java:206) at com.ibm.rules.engine.fastpath.compiler. SemSequentialCompiler.visit(SemSequentialCompiler.java:1061) at com.ibm.rules.engine.fastpath.compiler. SemStaticSequentialCompiler.visit(SemStaticSequentialCompiler. java:335) at com.ibm.rules.engine.fastpath.semantics.SemInNode. accept(SemInNode.java:56) at com.ibm.rules.engine.fastpath.compiler. SemStaticSequentialCompiler.compile(SemStaticSequentialCompiler. java:187) at com.ibm.rules.engine.fastpath.compiler. SemAbstractCompiler.compileRulesetAsModel(SemAbstractCompiler. java:125) at com.ibm.rules.engine.ruledef.compilation. AbstractRuleEngineCompiler.compile(AbstractRuleEngineCompiler. java:180) at com.ibm.rules.engine.ruleflow.compilation. TaskInstanceFactory.addRuleEngine(TaskInstanceFactory.java:389) at com.ibm.rules.engine.ruleflow.compilation. TaskInstanceFactory.addConstrutor(TaskInstanceFactory.java:238) at com.ibm.rules.engine.ruleflow.compilation. TaskInstanceFactory.createTaskInstance(TaskInstanceFactory.java: 147) at com.ibm.rules.engine.ruleflow.compilation. TaskInstanceFactory.createRuleTaskInstance(TaskInstanceFactory. java:167) at com.ibm.rules.engine.ruleflow.compilation. SemNewTaskFactory.getNewSequentialTask(SemNewTaskFactory.java: 116) at com.ibm.rules.engine.ruleflow.semantics. SemSequentialTask.getNewTask(SemSequentialTask.java:86) [...]
Local fix
Change the task execution mode to FastPath will solve this issue
Problem summary
the variable used to hold a collect object is added temporarily to a list for evaluation but never removed. The list is then incorrect leading to this error.
Problem conclusion
The code is fixed
Temporary fix
Comments
APAR Information
APAR number
RS02058
Reported component name
WS DECISION CTR
Reported component ID
5725B6900
Reported release
860
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2015-07-08
Closed date
2015-07-17
Last modified date
2015-07-17
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
999
Fix information
Fixed component name
WS DECISION CTR
Fixed component ID
5725B6900
Applicable component levels
R860 PSY
UP
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSQP76","label":"IBM Operational Decision Manager"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.6","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
07 January 2022