felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Karl Pauls (JIRA)" <j...@apache.org>
Subject [jira] Commented: (FELIX-827) URLHandlers does not restore the previous URLStreamHandlerFactory after stopping Felix
Date Fri, 21 Nov 2008 12:44:48 GMT

    [ https://issues.apache.org/jira/browse/FELIX-827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12649660#action_12649660

Karl Pauls commented on FELIX-827:

Your last guess is correct, it wouldn't handle the "multiple classloaders that load URLHandlers"
case correctly. That is the reason why I stopped at the current implementation (which does
do what you suggest - at least sort of). I'm planning to revisit this and should have a fix
before long. 

However, now that you mention it, are you sure the memory leak is due to the webapp not getting
fully unloaded? The point is that we do leak framework instances inside the implementation
and my guess would be that this is the reason why you see the run out of permgen space. That
would be much easier to fix right now. In case I get this done, could you test it and see
whether it fixes your issue? Then I would have more time to get the unloading and chaining
case working correctly...

> 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, 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.

View raw message