In the past few months, several users have reported on this mailing list that they ran into score corruption issues,
so I've been working to improve the situation for 6.0.x.

Like in 5.x, by putting the <environmentMode> in ASSERT mode,
it's easy to detect such an issue (and often even the offending score rule),
but it's been generally hard to understand what's the cause on how to fix it.

There are generally 3 common causes of score corruption:

 * Bug in your cloning method.
     o In 6.0.0.Beta1 you no longer need to write the cloning method:
         + 
http://blog.athico.com/2013/02/automatic-solution-cloning-in-planner.html
 * Bug in the causes parameter you supply to ConstraintOccurrence or a
   planner-incompatible hashcode/equals method of any those objects
     o In 6.0.0.Beta1 there is no cause parameter and it no longer
       cares about the hashcode/equals method of your objects during
       score calculation
         + http://blog.athico.com/2013/04/score-drl-faster-and-easier-in.html
 * Bug in our Drools Expert's statefull working memory
     o Most of these bugs were fixed for Drools 5.1 and 5.2. I am not
       aware of any in Drools 5.3 and 5.4.
         + Mario and I are looking into a very exotic bug in
           5.5/6.0.0.Beta1 now, which is unlikely to affect you: it
           only affects 1 dataset of 1 example in OptaPlanner.
     o As always, we welcome detailed bug reports (especially with
       reproducers) if you believe you 've discovered another bug.

Hope that helps :)

wkr,
Geoffrey De Smet
http://www.optaplanner.org



_______________________________________________
rules-users mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to