Details
-
Bug
-
Resolution: Done
-
Critical
-
5.0.1.FINAL
Description
In multithreading enviroment (with 50 active thread) sometimes occurs a ConcurrentModificationException , the complete stacktrace
Caused by: java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextEntry(HashMap.java:1091)
at java.util.HashMap$ValueIterator.next(HashMap.java:1122)
at org.drools.reteoo.ClassObjectTypeConf.getMatchingObjectTypes(ClassObjectTypeConf.java:171)
at org.drools.reteoo.ClassObjectTypeConf.getObjectTypeNodes(ClassObjectTypeConf.java:163)
at org.drools.reteoo.EntryPointNode.assertObject(EntryPointNode.java:143)
at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:1046)
at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:1001)
at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:788)
at it.vtfinance.vtpie.mlp.bpm.conditions.DroolsCondition.passesCondition(DroolsCondition.java:52)
at com.opensymphony.workflow.AbstractWorkflow.passesCondition(AbstractWorkflow.java:904)
... 24 more
DroolsCondition is SINGLETONE, all thread use a same RuleBase but creates a new Session for each Thread.
Attachments
Issue Links
- duplicates
-
JBRULES-2346 insert: ConcurrentModificationException on iterate of ObjectTypeConfigurationRegistry#typeConfMap.
- Closed
-
JBRULES-2556 ConcurrentModificationException on EntryPoint
- Closed