[jboss-jira] [JBoss JIRA] Commented: (JBRULES-2266) Memory leaks where the classloader cannot be garbage collected / impossible to dispose tomcat devloader when i reload context (drools keep reference)...
GREFFET Emmanuel (JIRA)
jira-events at lists.jboss.org
Thu Sep 3 11:27:23 EDT 2009
[ https://jira.jboss.org/jira/browse/JBRULES-2266?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12484383#action_12484383 ]
GREFFET Emmanuel commented on JBRULES-2266:
-------------------------------------------
More information about my problem.
This is a relative link about the memory leak with Drools and Tomcat :
http://opensource.atlassian.com/confluence/spring/pages/viewpage.action?pageId=2669
And we identified this problem on the following method :
/**
* Chargement des règles dans la rulebase.
*
* @param drlReader
* @param dslReader
*/
Package readRules(URL drlUrl)
{
try
{
// use package builder to build up a rule package.
PackageBuilder builder = new PackageBuilder();
URLConnection drlConn = drlUrl.openConnection();
Reader drlReader = new InputStreamReader(drlConn.getInputStream(),
ENCODING);
if (this.dsl == null)
{
builder.addPackageFromDrl(drlReader);
}
else
{
URLConnection dslConn = this.dsl.openConnection();
Reader dslReader = new InputStreamReader(dslConn.getInputStream());
builder.addPackageFromDrl(drlReader, dslReader);
dslReader.close();
}
drlReader.close();
// get the compiled package
return builder.getPackage();
}
catch (Exception e)
{
throw new RuleEngineException("Le package de règles est invalide !\r\n\r\nFichier : "
+ drlUrl, e);
}
}
So, today, i'm looking for a solution to resolve this problem without stopping tomcat.....
There is a solution with drools to release these allocations to the classloader in the WebApp ?
> Memory leaks where the classloader cannot be garbage collected / impossible to dispose tomcat devloader when i reload context (drools keep reference)...
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: JBRULES-2266
> URL: https://jira.jboss.org/jira/browse/JBRULES-2266
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: All
> Affects Versions: 4.0.7
> Environment: XP SP2 2Mo Tomcat 5.5.9 / drools 4.0.7
> Reporter: GREFFET Emmanuel
> Assignee: Mark Proctor
> Priority: Critical
>
> (sorry for my English) We use drools 4.0.7
> in a hospital application.
> We load drools and our programs (services) with tomcat Devloader
> (5.5.9) We use drools in statefullsession (retract and insert facts
> by rules in a ruleFlow).
> everything is perfect for us, except a little problem of "dispose"
> with tomcat due to drools.
> Through the Tomcat console when we try to restart our webapp, tomcat
> can't dispose the old Devloader (in Eclipse we can see that many
> drools class use class attribute ClassLoader without any dispose ???)
> In production, we used different webapps in a Tomcat, so we can't
> easily stop Tomcat, so until we stop tomcat, the reload of the
> webapps is longer and longer ... (many devloader(s) can't dispose)...
> anyone has had this problem ?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list