cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nicolas Toper <nto...@jouve.fr>
Subject Re: AW: Cocoon 2.1.3 breakdown when load testing
Date Mon, 05 Jan 2004 13:21:43 GMT
I don't know well Solaris, but you're on the Sun's JVM: have you tried another 
one (like IBM's)
Le Lundi 05 Janvier 2004 14:15, Rottmann, Lars a écrit :
> Hi Nicolas,
>
> >Are you sure the problem isn't from the Sun JVM: it is known that
> > Solaris's
> >
> >JVM are a lot buggier than for other OS
> >(http://www.theinquirer.net/?article=7601)
> >
> >Have you tried with another JVM?
>
> Yes, we made the tests with 1.4.1_02 and 1.4.2_02. We cannot go back 1.3.x
> because we depend on the 1.4.
>
> Lars
>
> Le Lundi 05 Janvier 2004 13:46, Rottmann, Lars a écrit :
> > Hello everybody,
> >
> > we are currently migrating from a rather old development version of
> > Cocoon (december 2002) to the latest stable release 2.1.3. The
> > increase in performance is awesome, but unfortunately we are facing
> > reproducable faulty behaviour when load testing the actual version.
> > After delivering roughly
> > 20000+ pages without an error, the server starts sending back error
> > 20000+ pages
> > with status code 500.
> >
> > This is the configuration we use for testing: Sun Fire V480 (OS 5.8)
> > with 2x 900 MHz, 4 GB RAM, Cocoon 2.1.3 (with Xalan as XSLT
> > processor), Jetty 4.2.12, Sun Java 1.4.2_02-b03. We do the load
> > testing with the tool "Siege" (version 2.56) with 40 concurrent users
> > requesting 2000 pages each.
> >
> > I traced down the problem to the ExcaliburComponentManager or its
> > adjacent classes. The end is near when the warning message below is
> > popping up in the log files. Mostly it is the TransformerSelector that
> > could not be looked up (a null value is returned), but I also saw the
> > same message in conjunction with the SerializerSelector in another
> > run. The effect is the same. The ECM tries to set up new instances of
> > all Selectors but with an empty DefaultConfiguration object. This
> > leads to failures in all subsequent lookups of the TraxTransformer in
> > the case below. All pages involving XSLT transformations will fail
> > including the error pipeline itself, though delivery of images is not
> > affected.
> >
> > I suppose that this problem is a concurrency or threading issue.
> > Disabling one the cpus of the server, switching between several
> > versions of the JVM, disabling the "use-store" feature, increasing
> > pool sizes of the sitemap components etc. didn't solve it.
> > Interestingly I couldn't reproduce the errors on my Linux development
> > box, it only showed up in production-like environment.
> >
> > I hacked the ECM doing a second lookup attempt after waiting 10ms and
> > almost everytime the second try was successful. When additionaly
> > prohibiting re-instantiation of the org.apache.cocoon.*.*Selector
> > classes I managed to run a test with more than 7 million requests in a
> > timeframe of about 10 hours constantly penetrating the server with 40+
> > users without breaking Cocoon.
> >
> > Has anyone an idea? Any help is really appreciated. Thanks alot in
> > advance!
> >
> > Best regards
> >
> > Lars
> >
> >
> > --------- Logs -----------------
> >
> > WARN    (2003-12-17) 03:52.24:043   [sitemap] (/vsky/index.preg)
> > wap-18/ExcaliburComponentManager: ComponentLocator exception from
> >parent CM  during lookup.
> > org.apache.avalon.framework.component.ComponentException: Could not
> >find  component (key
>
> [org.apache.cocoon.transformation.TransformerSelector])
>
> >         at
> >org.apache.avalon.excalibur.component.ExcaliburComponentManager.lookup(
> >Exca
> >l iburComponentManager.java:297)
> >         at
>
> org.apache.cocoon.components.CocoonComponentManager.lookup(CocoonComponentM
>
> >a nager.java:324)
> >         at
>
> org.apache.avalon.excalibur.component.ExcaliburComponentManager.lookup(Exca
>
> >l iburComponentManager.java:226)
> >         at
>
> org.apache.cocoon.components.CocoonComponentManager.lookup(CocoonComponentM
>
> >a nager.java:324)
> >         at
>
> org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.addTransfo
>
> >r mer(AbstractProcessingPipeline.java:283)
> >         at
>
> org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipelin
>
> >e .addTransformer AbstractCachingProcessingPipeline.java:167)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.TransformNode.invoke(Tra
>
> >n sformNode.java:94)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:84)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTy
>
> >p eNode.java:176)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:108)
> >         at
>
> org.apache.cocoon.components.treeprocessor.ContainerNode.invoke(ContainerNo
>
> >d e.java:66)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.CallNode.invoke(CallNode
>
> >. java:128)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:108)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(Select
>
> >N ode.java:138)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:84)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTy
>
> >p eNode.java:176)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:84)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTy
>
> >p eNode.java:176)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:108)
> >         at
>
> org.apache.cocoon.components.treeprocessor.ContainerNode.invoke(ContainerNo
>
> >d e.java:66)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.CallNode.invoke(CallNode
>
> >. java:128)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:84)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTy
>
> >p eNode.java:176)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:108)
> >         at
>
> org.apache.cocoon.components.treeprocessor.ContainerNode.invoke(ContainerNo
>
> >d e.java:66)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.CallNode.invoke(CallNode
>
> >. java:128)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:84)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invo
>
> >k e(PreparableMatchNode.java:164)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:108)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(Pipe
>
> >l ineNode.java:163)
> >         at
>
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
>
> >o keNodes(AbstractParentProcessingNode.java:108)
> >         at
>
> org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(Pip
>
> >e linesNode.java:152)
> >         at
>
> org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProces
>
> >s or.java:354)
> >         at
>
> org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProces
>
> >s or.java:307)
> >         at org.apache.cocoon.Cocoon.process(Cocoon.java:656)
> >         at
> > org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1112)
> >         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >         at
> > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:356)
> >         at
>
> org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHand
>
> >l er.java:294)
> >         at
> > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
> >         at org.mortbay.http.HttpContext.handle(HttpContext.java:1723)
> >         at
>
> org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContex
>
> >t .java:514)
> >         at org.mortbay.http.HttpContext.handle(HttpContext.java:1673)
> >         at org.mortbay.http.HttpServer.service(HttpServer.java:879)
> >         at
>
> org.mortbay.http.HttpConnection.service(HttpConnection.java:783)
>
> >         at
> > org.mortbay.http.ajp.AJP13Connection.handleNext(AJP13Connection.java:273)
> >         at
> > org.mortbay.http.HttpConnection.handle(HttpConnection.java:800) at
>
> org.mortbay.http.ajp.AJP13Listener.handleConnection(AJP13Listener.java:204)
>
> >         at
> > org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289) at
> > org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:454)
> >
> >
> >
> > DEBUG   (2003-12-17) 03:52.24:069   [sitemap] (/vsky/index.preg)
> > wap-18/ExcaliburComponentManager: Could not find ComponentHandler,
> > attempting to create one for role
> > [org.apache.cocoon.transformation.TransformerSelector]
> > DEBUG   (2003-12-17) 03:52.24:071   [sitemap] (/vsky/index.preg)
> > wap-18/DefaultComponentFactory: ComponentFactory creating new instance
> > of
> > org.apache.cocoon.components.treeprocessor.sitemap.ComponentsSelector.
> >
> > DEBUG   (2003-12-17) 03:52.24:074   [sitemap] (/vsky/index.preg)
> > wap-18/DefaultComponentFactory: no logger attribute available, using
> > standard logger
> > DEBUG   (2003-12-17) 03:52.24:075   [sitemap] (/vsky/index.preg)
> > wap-18/DefaultRoleManager: looking up shorthand , returning null
> > DEBUG   (2003-12-17) 03:52.24:075   [sitemap] (/vsky/index.preg)
> > wap-18/ComponentsSelector: Setting up sitemap component selector for
> > null (role id = -1)
> > DEBUG   (2003-12-17) 03:52.24:076   [sitemap] (/vsky/index.preg)
> > wap-18/DefaultRoleManager: looking up shorthand , returning null
> > DEBUG   (2003-12-17) 03:52.24:076   [sitemap] (/vsky/index.preg)
> > wap-18/ExcaliburComponentSelector: ComponentSelector setting up with
> > root
> > element:
> > DEBUG   (2003-12-17) 03:52.24:076   [sitemap] (/vsky/index.preg)
> > wap-18/DefaultRoleManager: looking up shorthand , returning null
> > DEBUG   (2003-12-17) 03:52.24:077   [sitemap] (/vsky/index.preg)
> > wap-18/ThreadSafeComponentHandler: ComponentHandler initialized for:
> > org.apache.cocoon.components.treeprocessor.sitemap.ComponentsSelector
> > DEBUG   (2003-12-17) 03:52.24:077   [sitemap] (/vsky/index.preg)
> > wap-18/ExcaliburComponentSelector: UnnamedSelector: ComponentSelector
>
> could
>
> > not find the component for hint [xslt]
> >
> > INFO    (2003-12-17) 03:52.24:105   [sitemap] (/vsky/index.preg)
> > wap-18/HandleErrorsNode: Processing handle-errors at
> > file:/apps/DE/vsky/vsky30-20031204/webapp/sitemap.xmap:1225:24
>
> Vodafone Global Content Services Limited
> Registered Office:  Vodafone House, The Connection, Newbury, Berkshire 
> RG14 2FN
>
> Registered in England No. 4064873
>
> This e-mail is for the addressee(s) only.  If you are not an addressee, you
> must not distribute, disclose, copy, use or rely on this e-mail or its
> contents, and you must immediately notify the sender and delete this e-mail
> and all copies from your system.  Any unauthorised use may be unlawful. 
> The information contained in this e-mail is confidential and may also be
> legally privileged.


Mime
View raw message