In defence of the java library designers, at the time when the ConcurrentModificationException was introduced (java 1.2) the java.util.concurrent package was three versions away from existence. :)
GreG On Jun 22, 2010, at 6:11 PM, Michael Neale <[email protected]> wrote: FYI - ConcurrentModificationException is the most misleading exception name ever !!! - it never really means what you think it means - it means you were modifying some collection while dealing with its iterator or similar - doesn't even need to be more than one thread. How annoying ! So mentally, replace ConcurrentModificationException with "ModifyingACollectionWhileIteratingException" ! Or else, like me, waste years of your life fretting about threading issues only to realise that isn't the problem (and its usually something far simpler). On Tue, Jun 22, 2010 at 11:25 PM, Mauricio Salatino <[email protected]> wrote: Are you inserting facts from different threads in a statefull session? On Tue, Jun 22, 2010 at 10:21 AM, <[email protected]> wrote: Anybody have any ideas on this? We are seeing ConcurrentModificationException while inserting objects into working memory. This happens occasionally, either at service start-up, where the first transaction is being submitted and the rules are loading for the first time, or sometimes under heavy loads with lots of transactions being processed by the service: Drools 5.0.1-GA AS: Web Logic JVM: 1.5 Fragment of stack trace: Caused by: java.util.ConcurrentModificationException java.util.HashMap$HashIterator.nextEntry(HashMap.java:2117) java.util.HashMap$ValueIterator.next(HashMap.java:2147) org.drools.reteoo.EntryPointNode.updateSink(EntryPointNode.java:285) org.drools.reteoo.ObjectTypeNode.attach(ObjectTypeNode.java:279) org.drools.reteoo.builder.PatternBuilder.attachObjectTypeNode(PatternBuilder.java:234) org.drools.reteoo.ClassObjectTypeConf.<init>(ClassObjectTypeConf.java:93) org.drools.common.ObjectTypeConfigurationRegistry.getObjectTypeConf(ObjectTypeConfigurationRegistry.java:58) org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:849) org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:788) org.drools.impl.StatefulKnowledgeSessionImpl.insert(StatefulKnowledgeSessionImpl.java:216) com.wellsfargo.ARGenT.Execution.DefaultLoader.Load(DefaultLoader.java:16) Tom Murphy Business Process Consultant Wells Fargo HCFG - CORE Deal Decisioning Platform 800 S. Jordan Creek Parkway | West Des Moines, IA 50266 MAC: X2301-01B Office: 515 324 4853 | Mobile: 515 423 4334 [email protected] This transmission may contain information that is confidential and/or proprietary. If you are not the individual or entity to which it is addressed, note that any review, disclosure, copying, retransmission, or other use is strictly prohibited. If you received this transmission in error, please notify the sender immediately and delete the material from your system. _______________________________________________ rules-dev mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-dev -- - CTO @ http://www.plugtree.com - MyJourney @ http://salaboy.wordpress.com - Co-Founder @ http://www.jbug.com.ar - Salatino "Salaboy" Mauricio - _______________________________________________ rules-dev mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-dev -- Michael D Neale home: www.michaelneale.net blog: michaelneale.blogspot.com _______________________________________________ rules-dev mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-dev
_______________________________________________ rules-dev mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-dev
