I have a problem when using Cocoon to aggregate large amounts of content that is to be serialised as PDF.
I have a set of pipelines that build a XML document that contains a set of xincludes which is then transformed using the xinclude transformer before conversion into XSL-FO and final serialisation to PDF. Using all the standard transformers - nothing extra, XML, XSLT, Xinclude but no XSP and the like. If I run this using Tomcat it works for small document sets (29) amounting to 218KB of XML and 43KB of PDF. If I run this using Tomcat for a large document set (1044) amounting to 3.5MB of XML and 2.7MB of PDF then I get OutOfMemoryError messages in the logs (cocoon and tomcat) - see below. If I install a full version of Jetty I get outOfMemory errors too. However, if I run the same app within the version of Jetty that comes with Cocoon there is no problem!!!! *** Can anyone explain why the Jetty that comes with cocoon works while Tomcat does not??? **** I have include system config's and log extracts from both cocoon and tomcat at the end of this e-mail. I have tried all the various tricks with changing memory settings for JVM like: CATALINA_OPTS=" -Xms128m -Xmx128m " But with no success. No out of memory errors, it just never finished after 20 minutes waiting! I have also ensured that I use the FOP tuning tips to ensure best recycling of memory. Server Configuration -------------------- OS: Red Hat Linux - Advanced Server version 2.1 HTTP Server: Apache httpd-2.0.48 VM: Java 1.4.2_02-b03 AppServer: Tomcat 4.1.30 App: Cocoon 2.1.2 cocoon/WEB-INF/logs/core.log ---------------------------- WARN (2004-06-01) 10:49.01:190 [core.manager] (/cocoon/RIU/Aggregate/Content/Documents/World/Former_Soviet_Union/Russia/Ru ssia.pdf) TP-Processor7/ExcaliburComponentManager: Attempted to release a org.apache.cocoon.components.treeprocessor.sitemap.ComponentsSelector but its handler could not be located. ERROR (2004-06-01) 10:50.44:818 [core.store.janitor] (Unknown-URI) Unknown-thread/StoreJanitorImpl: OutOfMemoryError in freeMemory() ERROR (2004-06-01) 10:51.07:636 [core.store.janitor] (Unknown-URI) Unknown-thread/StoreJanitorImpl: OutOfMemoryError in freeMemory() WARN (2004-06-01) 10:51.16:127 [core.manager] (/cocoon/RIU/Aggregate/Content/Documents/World/Former_Soviet_Union/Russia/Ru ssia.pdf) TP-Processor7/ExcaliburComponentManager: Attempted to release a org.apache.cocoon.components.treeprocessor.sitemap.ComponentsSelector but its handler could not be located. ERROR (2004-06-01) 10:52.34:308 [core.store.janitor] (Unknown-URI) Unknown-thread/StoreJanitorImpl: OutOfMemoryError in freeMemory() cocoon/WEB-INF/logs/error.log ----------------------------- ERROR (2004-06-01) 10:50.44:819 [core.store.janitor] (Unknown-URI) Unknown-thread/StoreJanitorImpl: OutOfMemoryError in freeMemory() ERROR (2004-06-01) 10:51.09:073 [core.store.janitor] (Unknown-URI) Unknown-thread/StoreJanitorImpl: OutOfMemoryError in freeMemory() ERROR (2004-06-01) 10:52.34:309 [core.store.janitor] (Unknown-URI) Unknown-thread/StoreJanitorImpl: OutOfMemoryError in freeMemory() Tomcat/logs/localhost_log.2004-06-01.txt ---------------------------------------- 2004-06-01 10:51:15 StandardWrapperValve[Cocoon]: Servlet.service() for servlet Cocoon threw exception javax.servlet.ServletException: Servlet execution threw an exception at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application FilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja va:256) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja va:191) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180 ) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:643) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve. java:171) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:641) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:163 ) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:641) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :174) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne ction(Http11Protocol.java:700) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:683) at java.lang.Thread.run(Thread.java:534) ----- Root Cause ----- java.lang.OutOfMemoryError 2004-06-01 10:52:37 StandardWrapperValve[Cocoon]: Servlet.service() for servlet Cocoon threw exception javax.servlet.ServletException: Servlet execution threw an exception at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application FilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja va:256) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja va:191) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180 ) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:643) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve. java:171) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:641) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:163 ) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:641) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :174) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne ction(Http11Protocol.java:700) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:683) at java.lang.Thread.run(Thread.java:534) ----- Root Cause ----- java.lang.OutOfMemoryError Regards Philip A. R. Fennell Web Developer ------------------------------------------------------------------ empolis UK Ltd. part of arvato: a Bertelsmann company Unit B, The Dorcan Complex, Faraday Road, Swindon, Wiltshire. SN3 5HQ United Kingdom http://www.empolis.co.uk e-mail: [EMAIL PROTECTED] Tel: +44 (0)1793 485465 Fax: +44 (0)1793 485451 Reg No: 3831777 VAT No: GB 718 2715 32 ------------------------------------------------------------------ The information in this email is confidential and may be legally privileged. It is intended solely for the addressee. Access to this email by anyone else is unauthorised. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken in reliance on it, is prohibited and may be unlawful. If you have received this communication in error please return it to the sender, then delete and destroy any copies of it. ------------------------------------------------------------------ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]