cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pier Fumagalli <p...@betaversion.org>
Subject VERY odd exceptions...
Date Tue, 25 May 2004 08:49:06 GMT
I'm having a bunch of problems with Avalon in production... And I  
suppose they're kinda all interconnected.

I get some odd ConcurrentModificationException(s) and  
NullPointerException(s) all coming out from the component manager  
"release/dispose" methods: I suppose that, given that the  
ConcurrentModificationException comes out from my server log, Excalibur  
catches it, and it tries to dispose of a component, but at this point  
somehow somewhere it will throw a NullPointerException (uncaught, as it  
comes out in my System.err log)...

Now, after this sequence of exceptions, from time to time, I start  
getting things like IllegalStateException(s) mentioning that I cannot  
lookup components on a disposed ComponentLocator...

And this is BAD, because to get this working again, I have to SHUT DOWN  
COCOON, clean up my sitemaps and cocoon.xconf (I mean, removing them,  
and reverting back to my CVS version, don't ask my why, I don't know),  
restart it with these new "files" (which didn't change), and the  
exception goes away...

Two problems... Definitely, under load, Excalibur fails  
disposing/releasing components, and somehow, Cocoon keeps state EVEN  
between hard restarts of the JVM...

Anyone ever saw something like this?

	Pier

java.util.ConcurrentModificationException
         at java.util.HashMap$HashIterator.nextEntry(HashMap.java:782)
         at java.util.HashMap$KeyIterator.next(HashMap.java:818)
         at  
org.apache.avalon.excalibur.component.ExcaliburComponentManager.dispose( 
ExcaliburComponentManager.java:607)
         at  
org.apache.cocoon.components.CocoonComponentManager.dispose(CocoonCompon 
entManager.java:468)
         at  
org.apache.avalon.framework.container.ContainerUtil.dispose(ContainerUti 
l.java:345)
         at org.apache.cocoon.Cocoon.dispose(Cocoon.java:489)
         at  
org.apache.avalon.framework.container.ContainerUtil.dispose(ContainerUti 
l.java:345)
         at  
org.apache.cocoon.servlet.CocoonServlet.disposeCocoon(CocoonServlet.java 
:1463)
         at  
org.apache.cocoon.servlet.CocoonServlet.destroy(CocoonServlet.java:497)
         at  
org.mortbay.jetty.servlet.ServletHolder.stop(ServletHolder.java:244)
         at  
org.mortbay.jetty.servlet.ServletHandler.stop(ServletHandler.java:470)
         at  
org.mortbay.jetty.servlet.WebApplicationHandler.stop(WebApplicationHandl 
er.java:163)
         at org.mortbay.http.HttpContext.stop(HttpContext.java:1979)
         at  
org.mortbay.jetty.servlet.ServletHttpContext.stop(ServletHttpContext.jav 
a:145)
         at  
org.mortbay.jetty.servlet.WebApplicationContext.stop(WebApplicationConte 
xt.java:504)
         at org.mortbay.http.HttpContext.stop(HttpContext.java:1950)
         at org.mortbay.http.HttpServer.stop(HttpServer.java:732)
         at org.mortbay.http.HttpServer.stop(HttpServer.java:700)
         at org.mortbay.jetty.Server$1.run(Server.java:455)

java.lang.NullPointerException
         at  
org.apache.cocoon.components.CocoonComponentManager.release(CocoonCompon 
entManager.java:507)
         at  
org.apache.cocoon.environment.AbstractEnvironment.release(AbstractEnviro 
nment.java:539)
         at  
org.apache.cocoon.environment.wrapper.MutableEnvironmentFacade.release(M 
utableEnvironmentFacade.java:320)
         at  
org.apache.cocoon.transformation.TraxTransformer.recycle(TraxTransformer 
.java:514)
         at  
org.apache.avalon.excalibur.pool.ResourceLimitingPool.put(ResourceLimiti 
ngPool.java:438)
         at  
org.apache.avalon.excalibur.component.PoolableComponentHandler.doPut(Poo 
lableComponentHandler.java:212)
         at  
org.apache.avalon.excalibur.component.ComponentHandler.put(ComponentHand 
ler.java:425)
         at  
org.apache.avalon.excalibur.component.ExcaliburComponentSelector.release 
(ExcaliburComponentSelector.java:305)
         at  
org.apache.cocoon.components.ExtendedComponentSelector.release(ExtendedC 
omponentSelector.java:284)
         at  
org.apache.cocoon.components.ExtendedComponentSelector.release(ExtendedC 
omponentSelector.java:281)
         at  
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.recycle 
(AbstractProcessingPipeline.java:652)
         at  
org.apache.avalon.excalibur.pool.ResourceLimitingPool.put(ResourceLimiti 
ngPool.java:438)
         at  
org.apache.avalon.excalibur.component.PoolableComponentHandler.doPut(Poo 
lableComponentHandler.java:212)
         at  
org.apache.avalon.excalibur.component.ComponentHandler.put(ComponentHand 
ler.java:425)
         at  
org.apache.avalon.excalibur.component.ExcaliburComponentSelector.release 
(ExcaliburComponentSelector.java:305)
         at  
org.apache.cocoon.components.ExtendedComponentSelector.release(ExtendedC 
omponentSelector.java:284)
         at  
org.apache.cocoon.components.EnvironmentDescription.removeFromAutoReleas 
e(CocoonComponentManager.java:705)
         at  
org.apache.cocoon.components.CocoonComponentManager.removeFromAutomaticR 
elease(CocoonComponentManager.java:445)
         at  
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.release 
(AbstractProcessingPipeline.java:173)
         at  
org.apache.cocoon.components.source.impl.SitemapSource.reset(SitemapSour 
ce.java:454)
         at  
org.apache.cocoon.components.source.impl.SitemapSource.toSAX(SitemapSour 
ce.java:445)
         at  
org.apache.cocoon.components.source.SourceUtil.parse(SourceUtil.java: 
247)
         at  
org.apache.cocoon.generation.FileGenerator.generate(FileGenerator.java: 
106)
         at  
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process 
XMLPipeline(AbstractProcessingPipeline.java:546)
         at  
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process 
(AbstractProcessingPipeline.java:490)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke( 
SerializeNode.java:120)
         at  
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode. 
invokeNodes(AbstractParentProcessingNode.java:49)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.i 
nvoke(PreparableMatchNode.java:130)
         at  
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode. 
invokeNodes(AbstractParentProcessingNode.java:72)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(P 
ipelineNode.java:126)
         at  
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode. 
invokeNodes(AbstractParentProcessingNode.java:72)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke( 
PipelinesNode.java:101)
         at  
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreePro 
cessor.java:336)
         at  
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreePro 
cessor.java:277)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(Moun 
tNode.java:103)
         at  
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode. 
invokeNodes(AbstractParentProcessingNode.java:49)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.i 
nvoke(PreparableMatchNode.java:130)
         at  
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode. 
invokeNodes(AbstractParentProcessingNode.java:72)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(P 
ipelineNode.java:126)
         at  
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode. 
invokeNodes(AbstractParentProcessingNode.java:72)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke( 
PipelinesNode.java:101)
         at  
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreePro 
cessor.java:336)
         at  
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreePro 
cessor.java:277)
         at org.apache.cocoon.Cocoon.process(Cocoon.java:619)
         at  
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java: 
1074)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at  
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:354)
         at  
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationH 
andler.java:294)
         at  
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 
567)
         at org.mortbay.http.HttpContext.handle(HttpContext.java:1808)
         at  
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationCon 
text.java:525)
         at org.mortbay.http.HttpContext.handle(HttpContext.java:1758)
         at org.mortbay.http.HttpServer.service(HttpServer.java:879)
         at  
org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
         at  
org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:952)
         at  
org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
         at  
org.mortbay.http.SocketListener.handleConnection(SocketListener.java: 
197)
         at  
org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
         at  
org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:501)

java.lang.IllegalStateException: You cannot lookup components on a  
disposed ComponentLocator
         at  
org.apache.avalon.excalibur.component.ExcaliburComponentManager.lookup(E 
xcaliburComponentManager.java:167)
         at  
org.apache.cocoon.components.CocoonComponentManager.lookup(CocoonCompone 
ntManager.java:297)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.ErrorHandlerHelper.in 
vokeErrorHandler(ErrorHandlerHelper.java:65)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(P 
ipelineNode.java:149)
         at  
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode. 
invokeNodes(AbstractParentProcessingNode.java:72)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke( 
PipelinesNode.java:101)
         at  
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreePro 
cessor.java:336)
         at  
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreePro 
cessor.java:277)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(Moun 
tNode.java:103)
         at  
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode. 
invokeNodes(AbstractParentProcessingNode.java:49)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.i 
nvoke(PreparableMatchNode.java:130)
         at  
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode. 
invokeNodes(AbstractParentProcessingNode.java:72)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(P 
ipelineNode.java:126)
         at  
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode. 
invokeNodes(AbstractParentProcessingNode.java:72)
         at  
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke( 
PipelinesNode.java:101)
         at  
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreePro 
cessor.java:336)
         at  
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreePro 
cessor.java:277)
         at org.apache.cocoon.Cocoon.process(Cocoon.java:619)
         at  
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java: 
1074)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at  
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:354)
         at  
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationH 
andler.java:294)
         at  
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 
567)
         at org.mortbay.http.HttpContext.handle(HttpContext.java:1808)
         at  
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationCon 
text.java:525)
         at org.mortbay.http.HttpContext.handle(HttpContext.java:1758)
         at org.mortbay.http.HttpServer.service(HttpServer.java:879)
         at  
org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
         at  
org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:952)
         at  
org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
         at  
org.mortbay.http.SocketListener.handleConnection(SocketListener.java: 
197)
         at  
org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
         at  
org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:501)

Mime
View raw message