But the leak is limited to the thread pool in a container? As long as the xml
file is not big,
It should not be a problem. Right?


Xalan - Dev mailing list wrote:
> 
> Memory leak in XMLReaderManager
> -------------------------------
> 
>          Key: XALANJ-2195
>          URL: http://issues.apache.org/jira/browse/XALANJ-2195
>      Project: XalanJ2
>         Type: Bug
>   Components: Xalan  
>     Versions: 2.7    
>     Reporter: Marko Strukelj
> 
> 
> In class org.apache.xml.utils.XMLReaderManager 
> 
> getXMLReader() method creates a new XMLReader (i.e. SAXParser) and stores
> it into ThreadLocal.
> 
> releaseXMLReader() does not remove (set to null) ThreadLocal thus creating
> a permanent leak.
> 
> Unfortunately the size of the cached Reader is typically dependent upon
> the size of the XML document you process (depends on implementation but
> this is the case with xerces SAXParser). In heavy load server environments
> with thread pools of tens and hundreds of threads the server sustains a
> significant memory leak (hundreds of megabytes - depending on the XML
> document sizes and number of threads in a thread pools).
> 
> A fix is trivial:
> 
> Put the following line at the end of releaseXMLReader method:
> 
> m_readers.set(null);
> 
> 
> I wonder, why is reader stored in ThreadLocal in the first place?
> 
> 
> 
> 
> -- 
> This message is automatically generated by JIRA.
> -
> If you think it was sent incorrectly contact one of the administrators:
>    http://issues.apache.org/jira/secure/Administrators.jspa
> -
> For more information on JIRA, see:
>    http://www.atlassian.com/software/jira
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/-jira--Created%3A-%28XALANJ-2195%29-Memory-leak-in-XMLReaderManager-tf284379.html#a5341526
Sent from the Xalan - Dev forum at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to