[rules-users] MVEL optimizer error

gboro54 gboro54 at gmail.com
Wed Jul 18 12:32:09 EDT 2012


I was able to reproduce this error locally by updating my version of java to
1.6_31(thought I had but I didn't) The stack trace doesn't give me any
information really to go off of. I have around 150 rules of which a dozen
will retract the object OrderSideContext. Is there a way to get a better
trace to figure out which rule may be causing this? After a retract I
thought all other activations on the agenda for the tuple should be
cancelled. Is this a wrong assertion? 


TIA


gboro54 wrote
> 
> I am having an issue with an optimizer stack trace on my linux QA box that
> I can't seem to reproduce on my windows development box.  The stack trace
> is:
> 
> 13:01:50,188 ERROR [stderr] (Thread-123) Exception in thread "Thread-123"
> java.lang.RuntimeException: unable to invoke method:
> com.billing.domain.context.OrderSideContext.getPrimarySide: target of
> method is null
> 13:01:50,188 ERROR [stderr] (Thread-123)        at
> org.mvel2.optimizers.impl.refl.nodes.GetterAccessor.getValue(GetterAccessor.java:66)
> 13:01:50,189 ERROR [stderr] (Thread-123)        at
> org.mvel2.optimizers.impl.refl.nodes.VariableAccessor.getValue(VariableAccessor.java:37)
> 13:01:50,189 ERROR [stderr] (Thread-123)        at
> org.mvel2.ast.ASTNode.getReducedValueAccelerated(ASTNode.java:108)
> 13:01:50,189 ERROR [stderr] (Thread-123)        at
> org.mvel2.ast.BinaryOperation.getReducedValueAccelerated(BinaryOperation.java:107)
> 13:01:50,189 ERROR [stderr] (Thread-123)        at
> org.mvel2.ast.And.getReducedValueAccelerated(And.java:34)
> 13:01:50,189 ERROR [stderr] (Thread-123)        at
> org.mvel2.MVELRuntime.execute(MVELRuntime.java:85)
> 13:01:50,190 ERROR [stderr] (Thread-123)        at
> org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:123)
> 13:01:50,190 ERROR [stderr] (Thread-123)        at
> org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:116)
> 13:01:50,190 ERROR [stderr] (Thread-123)        at
> org.mvel2.MVEL.executeExpression(MVEL.java:930)
> 13:01:50,190 ERROR [stderr] (Thread-123)        at
> org.drools.rule.constraint.MvelConditionEvaluator.evaluate(MvelConditionEvaluator.java:70)
> 13:01:50,190 ERROR [stderr] (Thread-123)        at
> org.drools.rule.constraint.MvelConditionEvaluator.ensureBranchEvaluation(MvelConditionEvaluator.java:113)
> 13:01:50,191 ERROR [stderr] (Thread-123)        at
> org.drools.rule.constraint.MvelConditionEvaluator.ensureCompleteEvaluation(MvelConditionEvaluator.java:106)
> 13:01:50,191 ERROR [stderr] (Thread-123)        at
> org.drools.rule.constraint.MvelConditionEvaluator.ensureCompleteEvaluation(MvelConditionEvaluator.java:90)
> 13:01:50,191 ERROR [stderr] (Thread-123)        at
> org.drools.rule.constraint.MvelConditionEvaluator.getAnalyzedCondition(MvelConditionEvaluator.java:82)
> 13:01:50,191 ERROR [stderr] (Thread-123)        at
> org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:214)
> 13:01:50,191 ERROR [stderr] (Thread-123)        at
> org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
> 13:01:50,192 ERROR [stderr] (Thread-123)        at
> org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
> 13:01:50,192 ERROR [stderr] (Thread-123)        at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 13:01:50,192 ERROR [stderr] (Thread-123)        at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 13:01:50,192 ERROR [stderr] (Thread-123)        at
> java.lang.Thread.run(Thread.java:662)
> 13:01:50,192 ERROR [stderr] (Thread-123) Caused by:
> java.lang.NullPointerException
> 13:01:50,193 ERROR [stderr] (Thread-123)        at
> sun.reflect.GeneratedMethodAccessor121.invoke(Unknown Source)
> 13:01:50,193 ERROR [stderr] (Thread-123)        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 13:01:50,193 ERROR [stderr] (Thread-123)        at
> java.lang.reflect.Method.invoke(Method.java:597)
> 13:01:50,193 ERROR [stderr] (Thread-123)        at
> org.mvel2.optimizers.impl.refl.nodes.GetterAccessor.getValue(GetterAccessor.java:40)
> 13:01:50,193 ERROR [stderr] (Thread-123)        ... 19 more
> 
> 
> 
> We are using a CENTOS with Java 1.6._31 and drools 5.4.
> 
> Thanks
> 


--
View this message in context: http://drools.46999.n3.nabble.com/MVEL-optimizer-error-tp4018714p4018759.html
Sent from the Drools: User forum mailing list archive at Nabble.com.


More information about the rules-users mailing list