I am using Drools Planner for an optimization problem and facing weird memory corruption issues. The problem facts and planning entities are JPA entities which have lots of relationships and are large in size.
When I use a few of the entities, then the solving works ok. However when I use large number of these entities, then I get strange exceptions indicating memory corruption in the result. E.g. the serialized best solution (serialized by me for persistence purposes) appears to be have invalid class types in members. I see that there are the following exceptions in the log (for both small and large data sets) - Exception in thread "Thread-106" java.lang.RuntimeException: Unknown accessor type: org.mvel2.optimizers.impl.refl.collection.ArrayCreator@e7d1626d [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeAccessor(ConditionAnalyzer.java:264) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeNode(ConditionAnalyzer.java:250) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.statementToExpression(ConditionAnalyzer.java:467) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.readInvocationParams(ConditionAnalyzer.java:457) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeAccessor(ConditionAnalyzer.java:345) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeExpressionNode(ConditionAnalyzer.java:326) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeAccessor(ConditionAnalyzer.java:286) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeNode(ConditionAnalyzer.java:250) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeSingleCondition(ConditionAnalyzer.java:133) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeCondition(ConditionAnalyzer.java:99) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.ConditionAnalyzer.analyzeCondition(ConditionAnalyzer.java:70) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.MvelConditionEvaluator.getAnalyzedCondition(MvelConditionEvaluator.java:83) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:270) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.MvelConstraint.access$200(MvelConstraint.java:51) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at org.drools.rule.constraint.MvelConstraint$ConditionJitter.run(MvelConstraint.java:250) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919) [2/12/13 12:35:34:309 IST] 00000174 SystemErr R at java.lang.Thread.run(Thread.java:770) Are these exceptions (which appear benign in the small data set solution) causing my issue? Are there any further troubleshooting that I can perform to isolate the root cause? Any help will be much appreciated. Thanks -- View this message in context: http://drools.46999.n3.nabble.com/Drools-Planner-5-5-0-Final-Memory-corruption-issues-tp4022227.html Sent from the Drools: User forum mailing list archive at Nabble.com. _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users
