On Jan 8, 2008, at 1:00 AM, Matt Accola wrote:
Our application has been experiencing signs of a memory leak. We
are using 7.0 b4 of Jess.
Regardless of leaks, why use this two-year-old beta version? Jess 7.0
final was released over a year ago, and there have been several patch
releases since then.
Using heap dumps we have tracked the leak to a large number of jess/
Token arrays and jess/ArrayTokenList instances being referenced by
jess/TokenTree instances.
These are the Rete network memories; it's not a leak. Although the
number of instances of ArrayTokenList will increase over time, there
is in fact an upper bound: it's the sum over all rules of
(number of joins in a rule) x (node-index-hash value for that rule) x 2
The leak issue was that inactive Token objects were being retained in
these memories; the references are now nulled out as appropriate.
You can reduce the number of these objects (at the expense of making
each one larger) by using the set-node-index-hash function to adjust
the geometry of the Rete memories.
---------------------------------------------------------
Ernest Friedman-Hill
Informatics & Decision Sciences Phone: (925) 294-2154
Sandia National Labs FAX: (925) 294-2234
PO Box 969, MS 9012 [EMAIL PROTECTED]
Livermore, CA 94550 http://www.jessrules.com
--------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]
--------------------------------------------------------------------