cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Giacomo Pati <giac...@apache.org>
Subject Re: Strange problems with concurrent access of Xalan-2.0.0
Date Thu, 15 Feb 2001 20:41:00 GMT
Carsten Ziegeler wrote:
> Hello,
>
> since the switch from the Xalan2D07 to the Xalan-2.0.0 version in Cocoon2
> we get sometimes very strange problems.
>
> We are using frames which all four use the same stylesheets. The xalan is
> driven by the cocoon pipeline.
>
> If we turn on the storing (formerly known as caching) of the
> TraxTransformer we get from time to time a NPE in one frame. Sometimes its
> even worse: One frame contains part of the content of another frame and the
> other frame is totally broken. Reloading the whole page brings up all
> frames correctly.
>
> However if we turn off the storing we never did see this phenomenen. So we
> assume that this problems have something to do with the storing.
>
> The store stores the Templates. Is it possible, that this problem can
> occure, when several threads use the same Template (as delivered by the
> store). A thread might finish first, resetting the template and the other
> thread still try to use it.

A Template IIRC should be thread safe but the actual transformation is done 
by a Transformer object which can be obtained from the Template (or is it the 
other way around?).

Wait a second I'll try to do a stress test using ab....

    ab -c 20 -n 200 http://localhost:8080/cocoon/welcome  

No, I can't reproduce the failure. All runs well here.

Any guesses from the Xalan Team?

Giacomo

>
> This is only a guess - has someone else had these problems?
>
> As they only occur occasionally it his very hard to reproduce them...
>
> Perhaps someone of you has a guess whats going on.
>
> The exception we get is the following:
>
> java.lang.NullPointerException
>         at org.apache.xalan.templates.ElemCopy.execute(ElemCopy.java:145)
>         at
> org.apache.xalan.templates.ElemForEach.transformSelectedNodes(ElemFor
> Each.java:495)
>         at
> org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTempla
> tes.java:193)
>         at
> org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(Tr
> ansformerImpl.java:2154)
>         at
> org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(Tr
> ansformerImpl.java:2097)
>         at
> org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(Tran
> sformerImpl.java:2029)
>         at
> org.apache.xalan.transformer.TransformerImpl.transformNode(Transforme
> rImpl.java:1189)
>         at
> org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java
>
> :2894)
>
> This indicates that the ResultTreeHandler is not available (set to null).
>
> As most times everything is working fine it must have to do with the
> parallel usage of the stylesheets.
>
>
>
> Carsten Ziegeler
>
> Open Source Group              sunShine - Lighting up e:Business
> ================================================================
> Carsten Ziegeler, S&N AG, Klingenderstrasse 5, D-33100 Paderborn
> www.sundn.de                           mailto:cziegeler@sundn.de
> ================================================================
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
> For additional commands, email: cocoon-dev-help@xml.apache.org

Mime
View raw message