]
Geoffrey De Smet commented on JBRULES-3718:
-------------------------------------------
@Michiel Are your planner runs 100% reproducable? (So you're not specifically setting
<environmentMode> to PRODUCTION and you're always seeing the exact same result
and latest move in every run)
java.lang.NullPointerException at
org.mvel2.ast.IntSub.getReducedValueAccelerated
---------------------------------------------------------------------------------
Key: JBRULES-3718
URL:
https://issues.jboss.org/browse/JBRULES-3718
Project: JBRULES
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: drools-core
Affects Versions: 5.5.0.Final
Environment: Windows 7 64bit - Java 1.7.0
Drools-planner 5.5.0.Final
-> Drools-core 5.5.0.Final
-> mvel2 2.1.3.Final
Reporter: Michiel Vermandel
Assignee: Mario Fusco
When I run my planning I get now and then the stacktrace as mentioned below.
It happens about 1 in 5 times during running a JUnit test on small amount of planning
entities and problem facts.
It started after adding my last rule:
rule "tasksInSameCommunityMustBeChained"
when
$lead : Task(this==lead, period!=null, communityId!= null, $communityId :
communityId)
not ( Task(this==lead, communityId == $communityId, id != $lead.id,
($lead.startPeriodId-1) <= endPeriodId && ($lead.endPeriodId+1) >=
startPeriodId ) )
then
insertLogical(new
IntConstraintOccurrence("tasksInSameCommunityMustBeChained",
ConstraintType.NEGATIVE_HARD, Importance.chainedPeriod, $communityId, $lead,
$lead.getStartPeriodId()));
end
Stack trace:
Exception in thread "Thread-1" java.lang.NullPointerException
at org.mvel2.ast.IntSub.getReducedValueAccelerated(IntSub.java:17)
at org.mvel2.compiler.ExecutableAccessor.getValue(ExecutableAccessor.java:38)
at org.mvel2.ast.Substatement.getReducedValueAccelerated(Substatement.java:44)
at org.mvel2.ast.BinaryOperation.getReducedValueAccelerated(BinaryOperation.java:108)
at org.mvel2.ast.And.getReducedValueAccelerated(And.java:34)
at org.mvel2.MVELRuntime.execute(MVELRuntime.java:85)
at org.mvel2.compiler.CompiledExpression.getDirectValue(CompiledExpression.java:123)
at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:119)
at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:113)
at org.mvel2.MVEL.executeExpression(MVEL.java:930)
at
org.drools.rule.constraint.MvelConditionEvaluator.evaluate(MvelConditionEvaluator.java:70)
at
org.drools.rule.constraint.MvelConditionEvaluator.ensureBranchEvaluation(MvelConditionEvaluator.java:117)
at
org.drools.rule.constraint.MvelConditionEvaluator.ensureCompleteEvaluation(MvelConditionEvaluator.java:102)
at
org.drools.rule.constraint.MvelConditionEvaluator.ensureCompleteEvaluation(MvelConditionEvaluator.java:90)
at
org.drools.rule.constraint.MvelConditionEvaluator.getAnalyzedCondition(MvelConditionEvaluator.java:82)
at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:270)
at org.drools.rule.constraint.MvelConstraint.access$200(MvelConstraint.java:51)
at
org.drools.rule.constraint.MvelConstraint$ConditionJitter.run(MvelConstraint.java:250)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: