<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">As far as I know, older versions of
Drools were not guaranteed to be thread-safe, <br>
and the whole (de)serialization subsystem has been upgraded since
5.3.0.Final.<br>
Could you try a later version such as 5.5.0.Final or 5.6.0.CR1?<br>
<br>
Bugs and issues are usually reported using JIRA (community) or
Bugzilla (product)<br>
You can find more information on how to report/contribute here:<br>
<a class="moz-txt-link-freetext" href="http://www.jboss.org/contribute">http://www.jboss.org/contribute</a><br>
or in the drools documentation, chapter 1.2<br>
<br>
Davide<br>
<br>
On 12/13/2013 12:39 PM, <a class="moz-txt-link-abbreviated" href="mailto:adarsh.chaini@hsbcib.com">adarsh.chaini@hsbcib.com</a> wrote:<br>
</div>
<blockquote
cite="mid:OF3773F95F.57B00781-ON80257C40.0069E134-80257C40.006C0688@hsbcib.com"
type="cite"><font face="sans-serif" size="2">Hi,</font>
<br>
<br>
<font face="sans-serif" size="2">We have found that some
of the drools classes are not thread safe and hence causing the
whole KB
serialisation and deserialisation issues in a highly
concurrent distributed cluster.</font>
<br>
<br>
<font face="sans-serif" size="2">The below is an example of one of
the
instances we have come across where the usage of a non
thread safe collection as instance variables has caused the
issue.</font>
<br>
<br>
<font face="sans-serif" size="2">Could someone look into this and
advise:</font>
<br>
<br>
<font face="sans-serif" size="2">1) If this has been reported
/identified
and logged somewhere as an issue already </font>
<br>
<font face="sans-serif" size="2">2)If there has been any
fix to problems like this in later versions of <b> 5.3.0.Final
?.</b></font>
<br>
<font face="sans-serif" size="2">3)If not fixed already what is
the process to initiate a fix.</font>
<br>
<br>
<font face="Segoe UI" size="1">Caused by:
java.io.InvalidObjectException:
Illegal mappings count: -1</font>
<br>
<font face="Segoe UI" size="1"> <b>at
java.util.HashMap.readObject(</b></font><font color="#0062e1"
face="Segoe UI" size="1"><b><u>HashMap.java:1130</u></b></font><font
face="Segoe UI" size="1"><b>)</b></font>
<br>
<font face="Segoe UI" size="1"> at
sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)</font>
<br>
<font face="Segoe UI" size="1"> at
sun.reflect.DelegatingMethodAccessorImpl.invoke(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>DelegatingMethodAccessorImpl.java:43</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.lang.reflect.Method.invoke(</font><font color="#0062e1"
face="Segoe UI" size="1"><u>Method.java:601</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectStreamClass.invokeReadObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectStreamClass.java:1004</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readSerialData(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1891</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readOrdinaryObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1796</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject0(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"><b> at
org.jbpm.workflow.core.DroolsAction.readExternal(</b></font><font
color="#0062e1" face="Segoe UI" size="1"><b><u>DroolsAction.java:61</u></b></font><font
face="Segoe UI" size="1"><b>)</b></font>
<br>
<font face="Segoe UI" size="1"> at
org.jbpm.workflow.core.impl.DroolsConsequenceAction.readExternal(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>DroolsConsequenceAction.java:49</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readExternalData(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1835</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readOrdinaryObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1794</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject0(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
org.drools.rule.JavaDialectRuntimeData.readExternal(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>JavaDialectRuntimeData.java:182</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readExternalData(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1835</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readOrdinaryObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1794</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject0(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.util.HashMap.readObject(</font><font color="#0062e1"
face="Segoe UI" size="1"><u>HashMap.java:1155</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)</font>
<br>
<font face="Segoe UI" size="1"> at
sun.reflect.DelegatingMethodAccessorImpl.invoke(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>DelegatingMethodAccessorImpl.java:43</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.lang.reflect.Method.invoke(</font><font color="#0062e1"
face="Segoe UI" size="1"><u>Method.java:601</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectStreamClass.invokeReadObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectStreamClass.java:1004</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readSerialData(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1891</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readOrdinaryObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1796</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject0(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
org.drools.rule.DialectRuntimeRegistry.readExternal(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>DialectRuntimeRegistry.java:59</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readExternalData(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1835</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readOrdinaryObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1794</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject0(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
org.drools.rule.Package.readExternal(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>Package.java:197</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readExternalData(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1835</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readOrdinaryObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1794</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject0(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.util.HashMap.readObject(</font><font color="#0062e1"
face="Segoe UI" size="1"><u>HashMap.java:1155</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)</font>
<br>
<font face="Segoe UI" size="1"> at
sun.reflect.DelegatingMethodAccessorImpl.invoke(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>DelegatingMethodAccessorImpl.java:43</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.lang.reflect.Method.invoke(</font><font color="#0062e1"
face="Segoe UI" size="1"><u>Method.java:601</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectStreamClass.invokeReadObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectStreamClass.java:1004</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readSerialData(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1891</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readOrdinaryObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1796</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject0(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
org.drools.common.AbstractRuleBase.readExternal(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>AbstractRuleBase.java:270</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
org.drools.reteoo.ReteooRuleBase.readExternal(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ReteooRuleBase.java:223</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
org.drools.impl.KnowledgeBaseImpl.readExternal(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>KnowledgeBaseImpl.java:116</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readExternalData(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1835</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readOrdinaryObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1794</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject0(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
java.io.ObjectInputStream.readObject(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
com.hsbc.gbm.dsl.domain.DSLRuleSet$Serializer.createInstance(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>DSLRuleSet.java:328</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
com.hsbc.gbm.dsl.domain.DSLRuleSet$Serializer.createInstance(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>DSLRuleSet.java:1</u></font><font
face="Segoe UI" size="1">)</font>
<br>
<font face="Segoe UI" size="1"> at
com.hsbc.gbm.dsl.domain.AbstractSerializer.deserialize(</font><font
color="#0062e1" face="Segoe UI" size="1"><u>AbstractSerializer.java:144</u></font><font
face="Segoe UI" size="1">)</font><font face="sans-serif"
size="2"><br>
</font>
<br>
<font face="sans-serif" size="2">Thanks and regards,<br>
</font>
<br>
<font color="red" face="Arial" size="2"><b>Adarsh CHAINI </b></font>
<br>
<font face="Arial" size="1">SENIOR LEAD DEVELOPMENT SPECIALIST |
HSBC
Bank Plc<br>
8 Canada Square, London E14 5HQ, UK</font>
<table>
<tbody>
<tr>
<td><font color="red" face="Arial" size="1">_______________________________________________</font>
<br>
<font size="1"><br>
</font>
<table width="100%">
<tbody>
<tr>
<td width="12%">
<br>
</td>
<td width="87%">
<br>
</td>
</tr>
<tr>
<td><font color="#4f4f4f" face="Arial" size="1">Phone</font>
</td>
<td><font color="#4f4f4f" face="Arial" size="1">Int:
(0)79914720 Ext: +44 (0)20
79914720</font>
</td>
</tr>
<tr>
<td><font color="#4f4f4f" face="Arial" size="1">Mobile</font>
</td>
<td><font color="#4f4f4f" face="Arial" size="1">+44(0)7595530105</font>
</td>
</tr>
<tr>
<td><font color="#4f4f4f" face="Arial" size="1">Email</font>
</td>
<td><a moz-do-not-send="true"
href="mailto:adarsh.chaini@hsbcib.com"><font
color="red" face="Arial" size="1"><u>adarsh.chaini@hsbcib.com</u></font></a></td>
</tr>
</tbody>
</table>
<br>
<br>
<font color="red" face="Arial" size="1">_______________________________________________</font>
<br>
<font color="#008000" face="Arial" size="1">Protect our
environment - please
only print this if you have to!</font></td>
</tr>
</tbody>
</table>
<br>
<font face="sans-serif" size="2"><br>
<br>
************************************************************<br>
HSBC Bank plc may be solicited in the course of its placement
efforts for
a new issue, by investment clients of the firm for whom the Bank
as a firm
already provides other services. It may equally decide to
allocate to its
own proprietary book or with an associate of HSBC Group. This
represents
a potential conflict of interest. HSBC Bank plc has internal
arrangements
designed to ensure that the firm would give unbiased and full
advice to
the corporate finance client about the valuation and pricing of
the offering
as well as internal systems, controls and procedures to identify
and manage
conflicts of interest.<br>
<br>
HSBC Bank plc<br>
Registered Office: 8 Canada Square, London E14 5HQ, United
Kingdom<br>
Registered in England - Number 14259<br>
Authorised by the Prudential Regulation Authority and regulated
by the
Financial Conduct Authority and the Prudential Regulation
Authority<br>
************************************************************<br>
</font>
-----------------------------------------
SAVE PAPER - THINK BEFORE YOU PRINT!
This transmission has been issued by a member of the HSBC Group
"HSBC" for the information of the addressee only and should not be
reproduced and/or distributed to any other person. Each page
attached hereto must be read in conjunction with any disclaimer
which forms part of it. Unless otherwise stated, this transmission
is neither an offer nor the solicitation of an offer to sell or
purchase any investment. Its contents are based on information
obtained from sources believed to be reliable but HSBC makes no
representation and accepts no responsibility or liability as to
its
completeness or accuracy.
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
rules-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-users">https://lists.jboss.org/mailman/listinfo/rules-users</a></pre>
</blockquote>
<br>
</body>
</html>