<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.32.2">
</HEAD>
<BODY>
Hi,<BR>
<BR>
We are using a single (Drools 5.1.1) Stateless Sessions for the parallel processing of thousands of facts.<BR>
<BR>
>From time to time we experienced the following error :<BR>
<BR>
org.drools.runtime.rule.ConsequenceException: rule: Priorite - Groupe: TMK2612G01, P10<BR>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:39)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:927)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:856)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1071)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:785)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:751)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:218)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at acme.srv.ept.service.impl.traitement.MoteurTraitementDemandes.traiterDemande(MoteurTraitementDemandes.java:121)<BR>
(...)<BR>
<B>Caused by: java.util.ConcurrentModificationException</B><BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.util.HashMap$AbstractMapIterator.checkConcurrentMod(Unknown Source)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.util.HashMap$AbstractMapIterator.makeNext(Unknown Source)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.util.HashMap$KeyIterator.next(Unknown Source)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.util.HashMap.analyzeMap(Unknown Source)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.util.HashMap.rehash(Unknown Source)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.util.HashMap.rehash(Unknown Source)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.util.HashMap.putImpl(Unknown Source)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.util.HashMap.put(Unknown Source)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.rule.JavaDialectRuntimeData$PackageClassLoader.loadClass(JavaDialectRuntimeData.java:503)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <B>at java.lang.ClassLoader.loadClass(ClassLoader.java:609)</B><BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp; acme.srv.ept.regle.Rule_Priorite___Groupe__TMK2612G01__P10_0DefaultConsequenceInvoker.evaluate(Rule_Priorite___Groupe__TMK2612G01__P10_0DefaultConsequenceInvoker.java:29)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:917)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ... 49 more<BR>
<BR>
We get the same error when we used a pool of Stateless Sessions (serial access) based on the same KnowledgeBase for the processing.<BR>
<BR>
<BR>
Thanks,<BR>
<BR>
</BODY>
</HTML>