>is your planner run 100% reproducible (ignoring this issue)?
I am using env-mode DEBUG. I ran the test 4 times (2x ok, 1x crash, 1x ok).
Output of the 3 successful runs were exactly the same (except for timestamps of course).

Filed a Jira Issue: https://issues.jboss.org/browse/DROOLS-18

Regards,

Michiel Vermandel
 
-----------------
http://www.codessentials.com - Your essential software, for free!
Follow us at http://twitter.com/#!/Codessentials

From: Geoffrey De Smet <ge0ffrey.spam@gmail.com>
To: Rules Users List <rules-users@lists.jboss.org>
Sent: Thursday, January 24, 2013 10:52 AM
Subject: Re: [rules-users] [Error: incompatible types in statement: boolean (compared from: class be.axi.planner.domain.Task)] - mvel bug

Look like a bug in mvel, nothing related with Planner,
File a jira in Drools Expert.
  https://issues.jboss.org/browse/DROOLS

Important: is your planner run 100% reproducible (ignoring this issue)?
So, if you do 2 runs, with logging debug, do you get the exact same output?
In the examples, this is the case.

Op 23-01-13 22:28, Michiel Vermandel schreef:
I am using Drools Planner 5.5.0.Final.
During the running of a unit test I sometimes get a crash with stack-trace shown beneath.
It does not happen all the time, just now and then.
But if it happens the process terminates and no solution is reached.
Any ideas on this?
The stack-trace does not show a lot on which rule is failing...

[Error: incompatible types in statement: boolean (compared from: class be.axi.planner.domain.Task)]
[Near : {... this == lead ....}]
             ^
[Line: 1, Column: 1]
    at org.mvel2.ast.BinaryOperation.<init>(BinaryOperation.java:84)
    at org.mvel2.util.CompilerTools.finalizePayload(CompilerTools.java:118)
    at org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:287)
    at org.mvel2.compiler.ExpressionCompiler.compile(ExpressionCompiler.java:62)
    at org.mvel2.MVEL.compileExpression(MVEL.java:810)
    at org.drools.base.mvel.MVELCompilationUnit.compile(MVELCompilationUnit.java:435)
    at org.drools.base.mvel.MVELCompilationUnit.getCompiledExpression(MVELCompilationUnit.java:238)
    at org.drools.rule.constraint.MvelConstraint.createMvelConditionEvaluator(MvelConstraint.java:206)
    at org.drools.rule.constraint.MvelConstraint.evaluate(MvelConstraint.java:190)
    at org.drools.rule.constraint.MvelConstraint.isAllowed(MvelConstraint.java:157)
    at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:137)
    at org.drools.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:497)
    at org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:382)
    at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:235)
    at org.drools.reteoo.EntryPointNode.assertObject(EntryPointNode.java:240)
    at org.drools.common.NamedEntryPoint.insert(NamedEntryPoint.java:350)
    at org.drools.common.NamedEntryPoint.insert(NamedEntryPoint.java:311)
    at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:903)
    at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:847)
    at org.drools.planner.core.score.director.drools.DroolsScoreDirector.afterEntityAdded(DroolsScoreDirector.java:103)
    at org.drools.planner.core.heuristic.selector.variable.PlanningVariableWalker.moveIterator(PlanningVariableWalker.java:145)
    at org.drools.planner.core.constructionheuristic.greedyFit.decider.DefaultGreedyDecider.decideNextStep(DefaultGreedyDecider.java:74)
    at org.drools.planner.core.constructionheuristic.greedyFit.DefaultGreedyFitSolverPhase.solve(DefaultGreedyFitSolverPhase.java:65)
    at org.drools.planner.core.solver.DefaultSolver.runSolverPhases(DefaultSolver.java:190)
    at org.drools.planner.core.solver.DefaultSolver.solve(DefaultSolver.java:155)
    at be.axi.planner.app.InspectionSchedule.solve(InspectionSchedule.java:192)
    at be.axi.planner.testcore.AbstractPlanningTestClass.solve(AbstractPlanningTestClass.java:288)
    at be.axi.planner.testcore.AbstractPlanningTestClass.solve(AbstractPlanningTestClass.java:298)
    at be.axi.planner.testcore.AbstractPlanningTestClass.solve(AbstractPlanningTestClass.java:315)
    at be.axi.planner.TaskGroupingTest.communitySuccess02(TaskGroupingTest.java:289)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
    at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
    at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)

 
-----------------
http://www.codessentials.com - Your essential software, for free!
Follow us at http://twitter.com/#!/Codessentials


_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users