[
https://issues.apache.org/jira/browse/FELIX-827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12652219#action_12652219
]
Tim Moore commented on FELIX-827:
---------------------------------
Karl,
Thanks for your response. I'll test the patch. Unfortunately, the problem with
memory leaks in webapps is rather bad, because class objects contain a
reference to their classloader, and the classloader then contains references to
every class that it loaded. So if even one class object reference leaks from a
webapp classloader to a parent loader, the entire classloader cannot be
collected. This makes it very important for anything in a webapp that registers
itself with an object in the system classloader to unregister when the webapp
is unloaded. These problems can be very tricky to track down, and until every
single leak is patched, the problem will remain.
> URLHandlers does not restore the previous URLStreamHandlerFactory after
> stopping Felix
> --------------------------------------------------------------------------------------
>
> Key: FELIX-827
> URL: https://issues.apache.org/jira/browse/FELIX-827
> Project: Felix
> Issue Type: Improvement
> Components: Framework
> Affects Versions: felix-1.2.1
, felix-1.4.0
> Reporter: Tim Moore
> Assignee: Karl Pauls
> Fix For: felix-1.4.1
>
> Attachments: felix-827.patch, leak.patch,
> test-felix-handler-1.0-SNAPSHOT.jar, test-felix-handler.zip
>
>
> I'm running Felix embedded inside a webapp, running in Tomcat.
> Tomcat installs its own URLStreamHandlerFactory. Felix swaps it out correctly
> when I start it, and seems to delegate properly. When the webapp is unloaded,
> however, and it stops Felix, it does not restore the previous implementation,
> but rather leaves the existing URLHandlers instance installed. Then, if I try
> to redeploy the webapp without restarting the JVM, I get errors, because
> Tomcat automatically sets the URLHandlers class's static members to null when
> it unloads the webapp. (see
> https://issues.apache.org/bugzilla/show_bug.cgi?id=41939)
> I've tested this on 1.2.1 and 1.4.0, and both versions have this problem.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.