| 1. | | | rule "Select closest upstream VMS Sign on same route" |
| 2. | | | salience -200 |
| 3. | | | no-loop true |
| 4. | | | dialect "mvel" |
| 5. | | | when |
| 6. | | | not IncidentWithVmsSign() |
| 7. | | | $incident : Incident() |
| 8. | | | $incidentRoutingIncreasing : RoutingIncreasing(routeName == $incident.routeName) |
| 9. | | | $sign : VmsSign($incident.routeName == routeName) |
| 10. | | | not VmsSign(($incidentRoutingIncreasing.isIncreasing && $sign.routeMileMarker > routeMileMarker) || (!$incidentRoutingIncreasing.isIncreasing && $sign.routeMileMarker < routeMileMarker)) |
| 11. | | | then |
| 12. | | | insert(new IncidentWithVmsSign($incident, $sign)); |
| 13. | | | end |
David R Robison Open Roads Consulting, Inc. 103 Watson Road, Chesapeake, VA 23320 phone: (757) 546-3401 e-mail: drrobison@openroadsconsulting.com web: http://openroadsconsulting.com blog: http://therobe.blogspot.com book: http://www.xulonpress.com/bookstore/bookdetail.php?PB_ISBN=9781597816526On 12/20/2012 9:03 AM, David R Robison wrote:
I have a rule that runs fine when I execute it inside Guvnor in a Test
Scenario but when I run it in production I get the following error.
Exception in thread "Thread-24" java.lang.RuntimeException: Exception
jitting: $incidentRoutingIncreasing.isIncreasing &&
$sign.routeMileMarker > routeMileMarker ||
!$incidentRoutingIncreasing.isIncreasing && $sign.routeMileMarker <
routeMileMarker
at
org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:219)
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.runWorker(ThreadPoolExecutor.java:1110)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.VerifyError: (class:
ConditionEvaluatorebdfa6ebae044e95bc706dfcd6f5654a, method: evaluate
signature:
(Ljava/lang/Object;Lorg/drools/common/InternalWorkingMemory;Lorg/drools/reteoo/LeftTuple;)Z)
Expecting to find integer on stack
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)
at java.lang.Class.getConstructor0(Class.java:2714)
at java.lang.Class.getConstructor(Class.java:1674)
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)
... 5 more
The rule does seem to fire. Any idea what it is trying to tell me or any
hints on how to debug this?
TNX David