[
https://issues.jboss.org/browse/DROOLS-81?page=com.atlassian.jira.plugin....
]
Mario Fusco reassigned DROOLS-81:
---------------------------------
Assignee: Mario Fusco (was: Mark Proctor)
Drools freezes during execution
-------------------------------
Key: DROOLS-81
URL:
https://issues.jboss.org/browse/DROOLS-81
Project: Drools
Issue Type: Bug
Security Level: Public(Everyone can see)
Affects Versions: 5.5
Reporter: Andrew kelly
Assignee: Mario Fusco
When Drools is being run to process rules on a number of threads on occasion the rules
engine freezes with the stack trace below and does not complete. There are a number of
other threads that are also frozen out waiting to lock 0x00002aab9d4caf58:
Frozen Thread
"pool-3-thread-8" prio=10 tid=0x00002ab53d16e000 nid=0x1c29 runnable
[0x0000000049fc7000]
java.lang.Thread.State: RUNNABLE
at java.util.WeakHashMap.expungeStaleEntries(WeakHashMap.java:408)
- locked \<0x00002aab9d4caf58\> (a java.lang.ref.ReferenceQueue)
at java.util.WeakHashMap.getTable(WeakHashMap.java:417)
at java.util.WeakHashMap.get(WeakHashMap.java:464)
at org.mvel2.util.ParseTools.getBestCandidate(ParseTools.java:241)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(ReflectiveAccessorOptimizer.java:1039)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(ReflectiveAccessorOptimizer.java:987)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(ReflectiveAccessorOptimizer.java:377)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor(ReflectiveAccessorOptimizer.java:143)
at org.mvel2.ast.ASTNode.optimize(ASTNode.java:159)
at org.mvel2.ast.ASTNode.getReducedValueAccelerated(ASTNode.java:115)
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.base.mvel.MVELConsequence.evaluate(MVELConsequence.java:104)
at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1287)
- locked \<0x00002aaec5b1b160\> (a org.drools.common.DefaultAgenda)
at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1221)
at org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1456)
at org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:710)
at org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:674)
at
com.iontrading.arc.liquidityrules.engine.BatchRulesEngine.processAll(BatchRulesEngine.java:64)
at
com.iontrading.arc.liquidityrules.api.rulestoresource.AbstractRuleStoreSourceService.performBaselineProcessing(AbstractRuleStoreSourceService.java:860)
at
com.rbc.erm.rulestoresource.RuleStoreSourceService.access$600(RuleStoreSourceService.java:32)
at
com.rbc.erm.rulestoresource.RuleStoreSourceService$RuleStoreProcess.call(RuleStoreSourceService.java:66)
at
com.rbc.erm.rulestoresource.RuleStoreSourceService$RuleStoreProcess.call(RuleStoreSourceService.java:38)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Example of other frozen threads:
"pool-3-thread-9" prio=10 tid=0x00002ab53d16f800 nid=0x1c2a waiting for monitor
entry [0x000000004a0c9000]
java.lang.Thread.State: BLOCKED (on object monitor)
at java.util.WeakHashMap.expungeStaleEntries(WeakHashMap.java:386)
- waiting to lock \<0x00002aab9d4caf58\> (a java.lang.ref.ReferenceQueue)
at java.util.WeakHashMap.getTable(WeakHashMap.java:417)
at java.util.WeakHashMap.get(WeakHashMap.java:464)
at org.mvel2.util.ParseTools.getBestCandidate(ParseTools.java:241)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(ReflectiveAccessorOptimizer.java:1039)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(ReflectiveAccessorOptimizer.java:987)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(ReflectiveAccessorOptimizer.java:377)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor(ReflectiveAccessorOptimizer.java:143)
at org.mvel2.ast.ASTNode.optimize(ASTNode.java:159)
at org.mvel2.ast.ASTNode.getReducedValueAccelerated(ASTNode.java:115)
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.base.mvel.MVELConsequence.evaluate(MVELConsequence.java:104)
at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1287)
- locked \<0x00002aaeedca2870\> (a org.drools.common.DefaultAgenda)
at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1221)
at org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1456)
at org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:710)
at org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:674)
at
com.iontrading.arc.liquidityrules.engine.BatchRulesEngine.processAll(BatchRulesEngine.java:64)
at
com.rbc.erm.rulestoresource.RuleStoreSourceService.performViewProcessing(RuleStoreSourceService.java:133)
at
com.rbc.erm.rulestoresource.RuleStoreSourceService$RuleStoreProcess.call(RuleStoreSourceService.java:78)
at
com.rbc.erm.rulestoresource.RuleStoreSourceService$RuleStoreProcess.call(RuleStoreSourceService.java:38)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
--
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:
http://www.atlassian.com/software/jira