I've tried it with trunk and the OOM error still happens.<br><br>In our project working memories/facts are not shared between threads. One thread does not interfere with another thread rule evaluation. <br><br>Do we need shadow proxies for such a scenario?
<br><br>The document says:<br><i><span class="remark">IMPORTANT: disabling shadow facts for a class inhibits the
ability of the engine keep track of changes to that class attributes. It
means, once asserted, a fact of that class MUST NOT change any of its
attributes or the engine may start to present unpredictable behavior. It
does not help to use update(). The only way to safely change an
attribute of a fact whose shadow fact is disabled is to call
modifyRetract() before changing the attribute, change the attribute and
call modifyAssert()<br><br><span style="font-style: italic;"></span></span></i><span class="remark">What about when retracting in order to assert a new reference? Is it safe to use normal retract() ?<br><br></span>
<br><br><div><span class="gmail_quote">On 10/8/07, <b class="gmail_sendername">Mark Proctor</b> <<a href="mailto:mproctor@codehaus.org">mproctor@codehaus.org</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div bgcolor="#ffffff" text="#000000"><span class="q">
s erel wrote:
<blockquote type="cite">I understand that shadow facts are created once during
building.<br>
Still, the application crashes in less than a minute when shadow facts
are enabled and it runs for hours when they are disabled.<br>
<br>
I was assuming it to be related to a corrupted data structure that
leaks.
<br>
<br>
Can you think of such a case? <br>
Are there any limitations for shadow facts (besides them being final)?<br>
</blockquote></span>
Can you try this with trunk and let us know if it still happens?<br>
<a href="https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/
</a><span class="q"><br>
<blockquote type="cite"><br>
<br>
<div><span class="gmail_quote">On 10/8/07, <b class="gmail_sendername">Mark Proctor</b> <<a href="mailto:mproctor@codehaus.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
mproctor@codehaus.org</a>> wrote:</span>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div bgcolor="#ffffff" text="#000000">
<div><span>s erel wrote:
<blockquote type="cite">Hello,<br>
<br>
I've posted before regarding this issue.<br>
We currently evaluating drools 4.01 for our project. We've noticed that
the perm gen space grows at a rapid rate and that eventually results<br>
in a OOM. When shadow facts are disabled, the problem seems to go away
(or at least not as noticeable as before). <br>
<br>
Any ideas?<br>
What is the effect of a shadowed object which itself contains complex
objects that are also involved in a pattern (through inline eval)?<br>
</blockquote>
</span></div>
when the system encounters a new Class, and shadow is enabled, it
generates a proxy to that class - however this is a one time operation.
The only way that shadow proxies would continue to be created would be
if you where continually creating or loading new classes or
redefinitions of the old classes.<br>
<blockquote type="cite"><br>
<br>
<br>
<br>
<pre><hr size="4" width="90%"><span>
_______________________________________________<br>rules-users mailing list<br><a href="mailto:rules-users@lists.jboss.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">rules-users@lists.jboss.org
<br></a>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">https://lists.jboss.org/mailman/listinfo/rules-users</a>
</span></pre>
</blockquote>
<br>
</div>
<br>
_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br>
</blockquote>
</div>
<br>
<pre><hr size="4" width="90%">
_______________________________________________<br>rules-users mailing list<br><a href="mailto:rules-users@lists.jboss.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">rules-users@lists.jboss.org
</a>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">https://lists.jboss.org/mailman/listinfo/rules-users</a>
</pre>
</blockquote>
<br>
</span></div>
<br>_______________________________________________<br>rules-users mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br><a 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>