-
Enhancement
-
Resolution: Done
-
Major
-
6.2.0.Final
-
None
-
NEW
-
NEW
This error message doesn't give enough diagnostic information:
Caused by: java.lang.IllegalStateException: UndoMove corruption: the beforeMoveScore (0hard/0soft) is not the undoScore (-570hard/0soft) which is the uncorruptedScore (-570hard/0soft) of the workingSolution. 1) Enable EnvironmentMode FULL_ASSERT (if you haven't already) to fail-faster in case there's a score corruption. 2) Check the Move.createUndoMove(...) method of the moveClass (class org.optaplanner.core.impl.heuristic.selector.move.generic.chained.ChainedChangeMove). The move (B1 {B0 -> C1}) might have a corrupted undoMove (B1 {B0 -> B0} ). 3) Check your custom VariableListeners (if you have any) for shadow variables that are used by the score constraints with a different score weight between the beforeMoveScore (0hard/0soft) and the undoScore (-570hard/0soft). at org.optaplanner.core.impl.phase.scope.AbstractPhaseScope.assertExpectedUndoMoveScore(AbstractPhaseScope.java:140) ...
- blocks
-
PLANNER-393 Broken TransportTimeToHubUpdatingVariableListener in Coach shuttle gathering
- Resolved
- is related to
-
PLANNER-421 UndoMove.toString() called after it happens causes confusing log message
- Open