Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
2.0
-
None
-
Tomcat servlet container
Description
When using commons vfs in a servlet container the ThreadLocal values stored will not be released once the request finishes.
There needs to be a method to clear these values otherwise the data will leak into the next request.
This was detected with tomcat 6.0.26. Upon undeploying an app that uses commons vfs tomcat detects the leaks with a huge amount of the following messages:
A web application created a ThreadLocal with key of type [java.lang.ThreadLocal] (value [java.lang.ThreadLocal@52fb241d]) and a value of type [org.apache.commons.vfs.provider.FileContentThreadData] (value [org.apache.commons.vfs.provider.FileContentThreadData@6600167a]) but failed to remove it when the web application was stopped. To prevent a memory leak, the ThreadLocal has been forcibly removed.
Attachments
Attachments
Issue Links
- relates to
-
VFS-142 Clear ThreadData after all streams are closed, fixes a memory leak
- Closed