Fixes are available
Operational Decision Manager V8.10.2.0: Interim Fix 7
Operational Decision Manager V8.9.2.1: Interim Fix 21
Operational Decision Manager V8.10.2.0: Interim Fix 12
Operational Decision Manager V8.9.2.1: Interim Fix 25
Operational Decision Manager for z/OS 8.10.2.2 Fix Pack
IBM Operational Decision Manager V8.10.2.2 Fix Pack
Operational Decision Manager V8.9.2.1: Interim Fix 32
APAR status
Closed as program error.
Error description
In sequential mode (and possibly RetePlus as well) when a rule task contains too many rules having several instructions, the ruleset generation fails with below exception: !MESSAGE java.lang.IndexOutOfBoundsException: Method code too large! !STACK 0 com.ibm.rules.container.EngineOutlineSerializationException: java.lang.IndexOutOfBoundsException: Method code too large! at com.ibm.rules.container.EnginePackageOpenXMLProducer.writeJar(En ginePackageOpenXMLProducer.java:259) at com.ibm.rules.container.EnginePackageOpenXMLProducer.writeJar(En ginePackageOpenXMLProducer.java:267) at com.ibm.rules.container.EngineOutlineSerializer.writeJar(EngineO utlineSerializer.java:47) at com.ibm.rules.studio.rve.builder.RVERulesetArchiveExporter.seria lizeEngineOutline(RVERulesetArchiveExporter.java:714) at com.ibm.rules.studio.rve.builder.RVERulesetArchiveExporter.expor t(RVERulesetArchiveExporter.java:403) at com.ibm.rules.studio.decisionservice.SDsRVERulesetArchiveExporte r.export(SDsRVERulesetArchiveExporter.java:134) at com.ibm.rules.studio.decisionservice.SDsRulesetArchiveBuilder.re freshDecisionEngineArchive(SDsRulesetArchiveBuilder.java:107) at com.ibm.rules.decisionservice.DsRulesetArchiveBuilder.refreshArc hive(DsRulesetArchiveBuilder.java:50) at com.ibm.rules.decisionservice.DsRuleAppArchiveBuilder.buildRuleA ppInformation(DsRuleAppArchiveBuilder.java at com.ibm.rules.decisionservice.DsRuleAppArchiveBuilder.refreshArc hive(DsRuleAppArchiveBuilder.java:365) at com.ibm.rules.studio.decisionservice.SDsRuleAppArchiveBuilder.re freshArchive(SDsRuleAppArchiveBuilder.java:80) at com.ibm.rules.studio.decisionservice.SDsRuleAppDeploymentJob.gen erateRuleApp(SDsRuleAppDeploymentJob.java:90) at com.ibm.rules.studio.decisionservice.SDsRuleAppDeploymentJob.dep loy(SDsRuleAppDeploymentJob.java:64) at com.ibm.rules.studio.decisionservice.SDsXOMDeploymentJob.runInWo rkspace(SDsXOMDeploymentJob.java:103) at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(Int ernalWorkspaceJob.java:39) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:56) Caused by: java.lang.IndexOutOfBoundsException: Method code too large! at com.ibm.rules.org.objectweb.asm.MethodWriter.computeMethodInfoSi ze(MethodWriter.java:1964) at com.ibm.rules.org.objectweb.asm.ClassWriter.toByteArray(ClassWri ter.java:426) at com.ibm.rules.engine.bytecode.asm.coding.ClassBuilder.getByteArr ay(ClassBuilder.java:115) at com.ibm.rules.engine.bytecode.asm.coding.ClassCoder.completeClas s(ClassCoder.java:37) at com.ibm.rules.engine.bytecode.asm.coding.ModelCoder.visit(ModelC oder.java:121) at com.ibm.rules.engine.bytecode.asm.coding.ModelCoder.visit(ModelC oder.java:26) at com.ibm.rules.engine.lang.semantics.impl.SemClassImpl.accept(Sem ClassImpl.java:572) at com.ibm.rules.engine.bytecode.asm.coding.ModelCoder.lambda$visit $0(ModelCoder.java:66) at com.ibm.rules.engine.bytecode.asm.coding.ModelCoder$$Lambda$529. 0000000011CA5D60.accept(Unknown Source) at java.util.ArrayList.forEach(ArrayList.java:1268) at com.ibm.rules.engine.bytecode.asm.coding.ModelCoder.visit(ModelC oder.java:66) at com.ibm.rules.engine.bytecode.asm.coding.ModelCoder.visit(ModelC oder.java:26) at com.ibm.rules.engine.lang.semantics.impl.SemObjectModelImpl.acce pt(SemObjectModelImpl.java:504) at com.ibm.rules.engine.bytecode.asm.SemASMCompiler.buildModel(SemA SMCompiler.java:155) at com.ibm.rules.engine.bytecode.asm.SemASMCompiler.writeInJarStrea m(SemASMCompiler.java:254) at com.ibm.rules.engine.outline.EngineOutlineImpl.writeJarInStream( EngineOutlineImpl.java:571) at com.ibm.rules.container.EnginePackageOpenXMLProducer.writeJar(En ginePackageOpenXMLProducer.java:254) ... 15 more
Local fix
Change the rule task execution mode to fastpath
Problem summary
**************************************************************** * USERS AFFECTED: * * ODM users using sequential mode * **************************************************************** * PROBLEM DESCRIPTION: * * When one rule or DT does a lot of checking, can get error * * indicating method too large. * **************************************************************** * RECOMMENDATION: * ****************************************************************
Problem conclusion
The code was fixed.
Temporary fix
Change the rule task execution mode to fastpath.
Comments
APAR Information
APAR number
RS03287
Reported component name
WDS FOR RULES
Reported component ID
5725B6903
Reported release
892
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2019-01-31
Closed date
2019-04-24
Last modified date
2020-05-29
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
WDS FOR RULES
Fixed component ID
5725B6903
Applicable component levels
R892 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":"892","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
17 February 2022