Uploaded image for project: 'JBRULES'
  1. JBRULES
  2. JBRULES-3570

JIT exception on multithread environment

This issue belongs to an archived project. You can view it, but you can't modify it. Learn more

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Major Major
    • None
    • 5.4.0.Final
    • drools-core
    • None

      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)

              mfusco@redhat.com Mario Fusco
              peter2012_jira Peter P (Inactive)
              Archiver:
              rhn-support-ceverson Clark Everson

                Created:
                Updated:
                Resolved:
                Archived: