Hi,
this might either be a java-users questions or a drools-users, but
I'd like to try here to see if somebody has any suggestions for me.
I have observed that the ruleFlow that I am using gets slower and
slower since its initial deployment. It initially started taking like
30mins to evaluate all the rules, but the run-time goes up to about
4hours in about 4 days.
I am using a statelessSession. I do a RuleBaseFactory().newRuleBase()
and ruleBase.newStatelessSession() each time I begin an evaluation (I
evaluate about 50k objects, once a day). I have the ruleBase as a
private instance in an EvaluationHandler which does other evaluations
as well and is a singleton which is obtained from a factory.
Has anyone else too on this forum faced this issue? I found this
archive, but no reply to it:
http://www.nabble.com/Performance-Question-with-Stateless-Session-to14704...
Could it be that a new ruleBase is being created each time I do an
evaluation (it obviously is), but a reference to the old ruleBase
still hangs around (and hence the entire WorkingMemory)? I checked the
RuleBase apis and I couldn't find anything that could help me clear
the workingMemory once I am done with evaluating all the rules.
Would be great if somebody could ched some light into this issue that
I am facing and/or let me know the path I must follow to find the
root-cause of the slowing down of the evaluations.
Add the drools source code to
your classpath and see what's going on
when it uses stateless sessions. I'd also recommend you install a free
jprofiler trial, it'll help pin point any memory leaks. When you find it
please open a jira with a test for that leak.
Thanks,
- am
------------------------------------------------------------------------
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users