Yes, you are right. We are caching the templates of the xsl documents that we 
use. 
Perhaps it is also important to say, that xalan is used to generate a servlets' 
output stream, so we are in a multithreading environment. The function that 
generates the output is marked as synchronized (non-static) and it is the only 
place where xalan is used in this application.

Thomas

P.S.: I appologize, if you get this email twice. I am not really familiar whith 
posting mails to this mailing list... :)

> 
>
> --- Urspr�ngliche Nachricht: ---
> Datum: 31.01.05, 22:25
> Von: John Gentilin <[EMAIL PROTECTED]>
> An: THEN <[EMAIL PROTECTED]>
> Betreff: Re: memory leak in xalan 2.6.0?
>
> Is just the XML data held in memory or are you trying to cache XSL
> transformers also ??
> If so are you caching Transformers or Templates ??
>
> -John G
>
> [EMAIL PROTECTED] wrote:
>
> >Hello,
> >
> >we use xalan 2.6.0 with xerces 2.6.2 on BEA Weblogic Server V8.1. We
> configured the JRE that both, xalan and xerces, are prepended to the
> bootclasspath (-Xbootclasspath/p:.../lib/xercesImpl.jar:.../lib/xml-
> apis.jar:.../lib/xalan.jar).
> >
> >We use xalan to transfer xml streams that are hold in memory to html
> output that is sent back as response to the client. We use XSLT standard
> 1.0.
> >
> >Since we suspected a meory leak, we used a profiling tool to inspect our
> application. And the profiler "said" that two leaks have their home in the
> xalan/xerces code part.
> >
> >Here are excerpts from the 2 stack traces that the profiling tool gave us
> as result (I can send you the full screen shots if you need them):
> >
> >------------------------------------------------
> >The first trace (a leak of type char[]):
> >------------------------------------------------
> >org.apache.xalan.transformer.TransformerImpl.transform()
> >...
> >org.apache.xml.dtm.ref.DTMManagerDefault.getDTM()
> >weblogic.apache.xerces.parsers.AbstractSAXParser.parse()
> >weblogic.apache.xerces.parsers.XMLParser.parse()
> >weblogic.apache.xerces.parsers.DTDConfiguration.parse()
> >...
> >weblogic.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument()
> >...
> >weblogic.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanAttribute()
> >weblogic.apache.xerces.xni.XMLString.toString()
> >--------------------------------------
> >
> >------------------------------------------------
> >The second trace (a leak of type int[]):
> >------------------------------------------------
> >org.apache.xalan.transformer.TransformerImpl.transform()
> >...
> >org.apache.xml.dtm.ref.DTMManagerDefault.getDTM()
> >weblogic.apache.xerces.parsers.AbstractSAXParser.parse()
> >weblogic.apache.xerces.parsers.XMLParser.parse()
> >weblogic.apache.xerces.parsers.DTDConfiguration.parse()
> >...
> >weblogic.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument()
> >...
> >weblogic.apache.xerces.impl.XMLNameSpaceBinder.startElement()
> >...
> >org.apache.xml.dtm.ref.sax2dtm.SAX2DTM.startElement()
> >org.apache.xml.dtm.ref.DTMDefaultBase.indexNode()
> >org.apache.xml.dtm.ref.DTMDefaultBase.ensureSizeOfIndex()
> >--------------------------------------
> >
> >Is this a known bug? We would be very happy if you were able to help us
> to remove those 2 leaks.
> >
> >Thanks in advance!
> >
> >Thomas
> >
> >
> >
> >
> >--
> >Ein Service von http://www.sms.at
> >
> >
> >
>



--
Ein Service von http://www.sms.at

Reply via email to