[
https://issues.jboss.org/browse/JBRULES-3692?page=com.atlassian.jira.plug...
]
Geoffrey De Smet edited comment on JBRULES-3692 at 11/23/12 4:57 AM:
---------------------------------------------------------------------
Reproduced locally. After 200+ addProblemFactChanges() on a dataset with 400 computers and
1200 processes I have in memory:
- CloudComputer: 400 // Correct
- CloudBalance: 3 // Sounds about right: 1 best, 1 working clone and 1 gui clone?
- CloudProcess: 256 913 // Very wrong. Should be 1200 * 3 = 3600. This leaks
was (Author: ge0ffrey):
Reproduced locally. After 200+ addProblemFactChanges() on a dataset with 400 computers
and 1200 processes I have in memory:
- CloudComputer: 400 // Correct
- CloudBalance: 3 // Sounds about right: 1 best, 1 working clone and 1 gui clone? (maybe 1
to many)
- CloudProcess: 256 913 // Very wrong. Should be 1200 * 3 = 3600. This leaks
Real-time planning: memory leak when calling
addProblemFactChange(ProblemFactChange)
------------------------------------------------------------------------------------
Key: JBRULES-3692
URL:
https://issues.jboss.org/browse/JBRULES-3692
Project: Drools
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: drools-planner
Affects Versions: 5.5.0.Final
Reporter: Radovan Synek
Assignee: Geoffrey De Smet
Priority: Critical
When using Planner with DroolsScoreDirector, after each problem fact change, number of
planning entity instances increases.
Steps to reproduce:
1. open cloud balance example with GUI, choose the largest input
2. start solving the problem
3. delete some of the listed computers - to make the fact change (for me, 5 computers in
a 5 seconds are enough)
4. take a heapdump (I used jmap -dump:live,file=... to enforce GC first)
5. open visualvm or similar tool and look for the planning entity class
6. repeat 3. - 5. several times, you should see increasing number of planning entity
instances
Also, there is a rule base holding sessions under the Planner API - and number of
sessions also increases in time (these sessions reference to planning entity instances).
Steps to reproduce:
1. open the last heapdump in similar tool and look for ReteooRuleBase.
2. the rule base holds ObjectHashSet with stateful sessions in its entries
3. you should see a different number of these session in every heapdump taken in previous
recipe
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira