[jboss-jira] [JBoss JIRA] (JBRULES-3570) JIT exception on multithread environment
Peter P (JIRA)
jira-events at lists.jboss.org
Thu Jul 5 17:25:12 EDT 2012
Peter P created JBRULES-3570:
--------------------------------
Summary: JIT exception on multithread environment
Key: JBRULES-3570
URL: https://issues.jboss.org/browse/JBRULES-3570
Project: Drools
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Components: drools-core
Affects Versions: 5.4.0.Final
Environment: Drools 5.4, Windows, application server, multiple thread
Reporter: Peter P
Assignee: Mark Proctor
Sometimes when there are multiple threads are running rules, we get this JIT exception. Note, not always. The rule is a very same rule just involve one field which is enumeration type in a fact object. Following are exception:
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R Exception in thread "Thread-110" java.lang.RuntimeException: Exception jitting: wireType == WireType.COMMERCIAL || wireType == WireType.BANK_TO_BANK
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:219)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at java.lang.Thread.run(Thread.java:810)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R Caused by: java.lang.RuntimeException: java.lang.RuntimeException: Error writing method evaluate
at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:175)
at org.drools.rule.constraint.ASMConditionEvaluatorJitter.jitEvaluator(ASMConditionEvaluatorJitter.java:53)
at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:217)
at org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
at org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:810)
Caused by: java.lang.RuntimeException: Error writing method evaluate
at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:850)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateBytecode(ClassGenerator.java:117)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateClass(ClassGenerator.java:133)
at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:173)
... 7 more
Caused by: java.lang.ArrayIndexOutOfBoundsException
at org.mvel2.asm.Frame.merge(Frame.java:1373)
at org.mvel2.asm.Frame.merge(Frame.java:1329)
at org.mvel2.asm.MethodWriter.visitMaxs(MethodWriter.java:1282)
at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:848)
... 10 more
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:175)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.constraint.ASMConditionEvaluatorJitter.jitEvaluator(ASMConditionEvaluatorJitter.java:53)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:217)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R ... 5 more
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R Caused by: java.lang.RuntimeException: Error writing method evaluate
at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:850)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateBytecode(ClassGenerator.java:117)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateClass(ClassGenerator.java:133)
at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:173)
at org.drools.rule.constraint.ASMConditionEvaluatorJitter.jitEvaluator(ASMConditionEvaluatorJitter.java:53)
at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:217)
at org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
at org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:810)
Caused by: java.lang.ArrayIndexOutOfBoundsException
at org.mvel2.asm.Frame.merge(Frame.java:1373)
at org.mvel2.asm.Frame.merge(Frame.java:1329)
at org.mvel2.asm.MethodWriter.visitMaxs(MethodWriter.java:1282)
at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:848)
... 10 more
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:850)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator.generateBytecode(ClassGenerator.java:117)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator.generateClass(ClassGenerator.java:133)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:173)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R ... 7 more
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R Caused by: java.lang.ArrayIndexOutOfBoundsException
at org.mvel2.asm.Frame.merge(Frame.java:1373)
at org.mvel2.asm.Frame.merge(Frame.java:1329)
at org.mvel2.asm.MethodWriter.visitMaxs(MethodWriter.java:1282)
at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:848)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateBytecode(ClassGenerator.java:117)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateClass(ClassGenerator.java:133)
at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:173)
at org.drools.rule.constraint.ASMConditionEvaluatorJitter.jitEvaluator(ASMConditionEvaluatorJitter.java:53)
at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:217)
at org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
at org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:810)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.mvel2.asm.Frame.merge(Frame.java:1373)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.mvel2.asm.Frame.merge(Frame.java:1329)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.mvel2.asm.MethodWriter.visitMaxs(MethodWriter.java:1282)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:848)
[08/06/12 10:32:01:107 EDT] 00000078 SystemErr R ... 10 more
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R Exception in thread "Thread-112" java.lang.RuntimeException: Exception jitting: accountType == AccountType.MECH || accountType == AccountType.CBDS
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:219)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at java.lang.Thread.run(Thread.java:810)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R Caused by: java.lang.RuntimeException: java.lang.RuntimeException: Error writing method evaluate
at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:175)
at org.drools.rule.constraint.ASMConditionEvaluatorJitter.jitEvaluator(ASMConditionEvaluatorJitter.java:53)
at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:217)
at org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
at org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:810)
Caused by: java.lang.RuntimeException: Error writing method evaluate
at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:850)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateBytecode(ClassGenerator.java:117)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateClass(ClassGenerator.java:133)
at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:173)
... 7 more
Caused by: java.lang.ArrayIndexOutOfBoundsException
at org.mvel2.asm.Frame.merge(Frame.java:1373)
at org.mvel2.asm.Frame.merge(Frame.java:1329)
at org.mvel2.asm.MethodWriter.visitMaxs(MethodWriter.java:1282)
at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:848)
... 10 more
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:175)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.constraint.ASMConditionEvaluatorJitter.jitEvaluator(ASMConditionEvaluatorJitter.java:53)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:217)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R ... 5 more
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R Caused by: java.lang.RuntimeException: Error writing method evaluate
at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:850)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateBytecode(ClassGenerator.java:117)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateClass(ClassGenerator.java:133)
at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:173)
at org.drools.rule.constraint.ASMConditionEvaluatorJitter.jitEvaluator(ASMConditionEvaluatorJitter.java:53)
at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:217)
at org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
at org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:810)
Caused by: java.lang.ArrayIndexOutOfBoundsException
at org.mvel2.asm.Frame.merge(Frame.java:1373)
at org.mvel2.asm.Frame.merge(Frame.java:1329)
at org.mvel2.asm.MethodWriter.visitMaxs(MethodWriter.java:1282)
at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:848)
... 10 more
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:850)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator.generateBytecode(ClassGenerator.java:117)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator.generateClass(ClassGenerator.java:133)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:173)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R ... 7 more
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R Caused by: java.lang.ArrayIndexOutOfBoundsException
at org.mvel2.asm.Frame.merge(Frame.java:1373)
at org.mvel2.asm.Frame.merge(Frame.java:1329)
at org.mvel2.asm.MethodWriter.visitMaxs(MethodWriter.java:1282)
at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:848)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateBytecode(ClassGenerator.java:117)
at org.drools.rule.builder.dialect.asm.ClassGenerator.generateClass(ClassGenerator.java:133)
at org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:173)
at org.drools.rule.constraint.ASMConditionEvaluatorJitter.jitEvaluator(ASMConditionEvaluatorJitter.java:53)
at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:217)
at org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
at org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:810)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.mvel2.asm.Frame.merge(Frame.java:1373)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.mvel2.asm.Frame.merge(Frame.java:1329)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.mvel2.asm.MethodWriter.visitMaxs(MethodWriter.java:1282)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R at org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:848)
[08/06/12 10:32:01:107 EDT] 00000079 SystemErr R ... 10 more
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R Exception in thread "Thread-127" java.lang.RuntimeException: Null accessor on node: value
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeNode(ConditionAnalyzer.java:229)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeNode(ConditionAnalyzer.java:170)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeSingleCondition(ConditionAnalyzer.java:109)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeCondition(ConditionAnalyzer.java:102)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeCondition(ConditionAnalyzer.java:73)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at org.drools.rule.constraint.MvelConditionEvaluator.getAnalyzedCondition(MvelConditionEvaluator.java:83)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:214)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
[08/06/12 10:32:01:795 EDT] 0000007b SystemErr R at java.lang.Thread.run(Thread.java:810)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R Exception in thread "Thread-126" java.lang.RuntimeException: Null accessor on node: value
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeNode(ConditionAnalyzer.java:229)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeNode(ConditionAnalyzer.java:170)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeSingleCondition(ConditionAnalyzer.java:109)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeCondition(ConditionAnalyzer.java:102)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeCondition(ConditionAnalyzer.java:73)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at org.drools.rule.constraint.MvelConditionEvaluator.getAnalyzedCondition(MvelConditionEvaluator.java:83)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:214)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
[08/06/12 10:32:01:795 EDT] 0000007c SystemErr R at java.lang.Thread.run(Thread.java:810)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list