<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
increase your perm gen space,or use the MVEL dialect with code
generation off.<br>
<br>
Mark<br>
s erel wrote:
<blockquote
cite="mid:1a1500b50707030946m3775b004k2f0a67977840ddab@mail.gmail.com"
type="cite">
<div>Hello,</div>
<div> </div>
<div>During capacity tests we've received permGen OOM exception. The
occupied space in the permGen area increases rapidly. Any opinions?</div>
<br>
<br>
<div><span class="gmail_quote">On 7/3/07, <b class="gmail_sendername">s
erel</b> <<a moz-do-not-send="true" href="mailto:erelsagi@gmail.com">erelsagi@gmail.com</a>>
wrote:</span>
<blockquote class="gmail_quote"
style="border-left: 1px solid rgb(204, 204, 204); margin: 0px 0px 0px 0.8ex; padding-left: 1ex;">
<div>In our project we are creating a StatefulRuleSession and
saving it in a per-thread context (i.e. Each thread has it's own
StatefulRuleSession):</div>
<div> </div>
<div>ruleServiceProvider.getRuleRuntime().createRuleSession(contextName,
properties, RuleRuntime.STATEFUL_SESSION_TYPE);</div>
<div> </div>
<div>When a thread session ends, we are calling release on the
previously created StatefulRuleSession.</div>
<div> </div>
<div> </div>
<div>Changing the following lines:</div>
<div> </div>
<div>
<p>public abstract class AbstractHashTable<br>
</p>
<p>...</p>
<p> public Iterator iterator() {<br>
// if ( this.iterator == null ) {<br>
// this.iterator = new HashTableIterator( this );<br>
// }<br>
//<br>
// this.iterator.reset();<br>
// return this.iterator;</p>
<p> HashTableIterator iterator = new HashTableIterator(this);<br>
iterator.reset();</p>
<p> return iterator;<br>
}</p>
Seems to solve the problem I've encountered. What's your opinion?<br>
<br>
</div>
<div><span class="e" id="q_1138b0cdf75be3e8_1">
<div><span class="gmail_quote">On 7/2/07, <b
class="gmail_sendername">Mark Proctor</b> <<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="mailto:mproctor@codehaus.org" target="_blank">mproctor@codehaus.org
</a>> wrote:</span>
<blockquote class="gmail_quote"
style="border-left: 1px solid rgb(204, 204, 204); margin: 0px 0px 0px 0.8ex; padding-left: 1ex;">
<div text="#000000" bgcolor="#ffffff">a working memory should be
single threaded, so not sure how this could be a race condition?<br>
<span><br>
Mark</span>
<div><span><br>
s erel wrote:
<blockquote type="cite">
<div>I've done a little debugging. The code fails in the
following segment:</div>
<div> </div>
<div>public static class HashTableIterator</div>
<div>...</div>
<div> while ( this.entry == null ) {<br>
this.row++;<br>
if ( this.row == this.length ) {<br>
return null;<br>
}<br>
this.entry = this.table[this.row]; <strong>//
---> index out of bounds exception</strong><br>
}</div>
<div>}<br>
</div>
<div>this.row has the same value as this.length despite the
condition above it. Probably a race condition issue.</div>
<div><br>
</div>
<div><span class="gmail_quote">On 7/2/07, <b
class="gmail_sendername">Mark Proctor</b> <<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="mailto:mproctor@codehaus.org" target="_blank">mproctor@codehaus.org
</a>> wrote:</span>
<blockquote class="gmail_quote"
style="border-left: 1px solid rgb(204, 204, 204); margin: 0px 0px 0px 0.8ex; padding-left: 1ex;">
<div text="#000000" bgcolor="#ffffff">Not really :(<br>
<br>
In your situation I tend to keep removing rules and data while still
making sure the error happens, to get it down to a minimum. Please do
try, as this isn't an error that should happen. Or alterntaively you
can open drools-core and drools-compiler in eclipse and execuse and
debug this yourself - in your situation this might best. you can put in
a breakpoint to listen for that particular exception. <br>
<span><br>
Mark</span>
<div><span><br>
s erel wrote:
<blockquote type="cite">
<div>It's hard for me to provide a self contained project.
The drl is long and uses several business objects. It's the same drl as
we've been using for 306 minus the keyword changes. </div>
<div>Is there anything else i can check or provide you in
order to solve this matter.</div>
<div> </div>
<div>Thanks<br>
</div>
<div><span class="gmail_quote">On 7/1/07, <b
class="gmail_sendername">Mark Proctor</b> <<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="mailto:mproctor@codehaus.org" target="_blank">mproctor@codehaus.org
</a>> wrote:</span>
<blockquote class="gmail_quote"
style="border-left: 1px solid rgb(204, 204, 204); margin: 0px 0px 0px 0.8ex; padding-left: 1ex;">
<div text="#000000" bgcolor="#ffffff">Can you provide us
a self contained project which creates this error? Unless we can
recreate it, it will be very hard to track it down. Please attach the
project to a jira and we'll make it a priority. <br>
<br>
Mark<br>
s erel wrote:
<blockquote type="cite">
<div><span>
<div>Hello,</div>
<div> </div>
<div>I've just started integrating MR3 into my project
(I've previously used 3.06). The drl compiles and everything seems
fine, but during </div>
<div>tests the following exception is thrown for time
to time:</div>
<div> </div>
<div>java.lang.ArrayIndexOutOfBoundsException: 17<br>
at
org.drools.util.AbstractHashTable$HashTableIterator.next(AbstractHashTable.java:250)<br>
at org.drools.reteoo.Rete$ObjectTypeConf.buildCache(Rete.java:434)<br>
at
org.drools.reteoo.Rete$ObjectTypeConf.getObjectTypeNodes(Rete.java:425)<br>
at org.drools.reteoo.Rete.assertObject(Rete.java:172)<br>
at
org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:190)<br>
at
org.drools.reteoo.ReteooWorkingMemory$WorkingMemoryReteAssertAction.execute
(ReteooWorkingMemory.java:163)<br>
at
org.drools.common.AbstractWorkingMemory.executeQueuedActions(AbstractWorkingMemory.java:1135)<br>
at
org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:781)<br>
at
org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:584)<br>
at
org.drools.jsr94.rules.StatefulRuleSessionImpl.addObject(StatefulRuleSessionImpl.java:162)</div>
<div> </div>
<div>This only happens during high load tests.</div>
<div>Can anyone help me?</div>
<div> </div>
<div>Thanks</div>
<div> </div>
</span></div>
<pre><hr size="4" width="90%">
_______________________________________________
rules-users mailing list
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a>
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="https://lists.jboss.org/mailman/listinfo/rules-users"
target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a>
</pre>
</blockquote>
<br>
</div>
<br>
_______________________________________________<br>
rules-users mailing list<br>
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org
</a><br>
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="https://lists.jboss.org/mailman/listinfo/rules-users"
target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users </a><br>
<br>
</blockquote>
</div>
<br>
<pre><hr size="4" width="90%">
_______________________________________________
rules-users mailing list
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a>
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="https://lists.jboss.org/mailman/listinfo/rules-users"
target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a>
</pre>
</blockquote>
<br>
</span></div>
</div>
<br>
_______________________________________________<br>
rules-users mailing list<br>
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a><br>
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="https://lists.jboss.org/mailman/listinfo/rules-users"
target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users </a><br>
<br>
</blockquote>
</div>
<br>
<pre><hr size="4" width="90%">
_______________________________________________
rules-users mailing list
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a>
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="https://lists.jboss.org/mailman/listinfo/rules-users"
target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a>
</pre>
</blockquote>
<br>
</span></div>
</div>
<br>
_______________________________________________<br>
rules-users mailing list<br>
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a><br>
<a moz-do-not-send="true"
onclick="return top.js.OpenExtLink(window,event,this)"
href="https://lists.jboss.org/mailman/listinfo/rules-users"
target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users </a><br>
<br>
</blockquote>
</div>
<br>
</span></div>
</blockquote>
</div>
<br>
<pre wrap="">
<hr size="4" width="90%">
_______________________________________________
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>