xmlgraphics-fop-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Normen Ruhrus" <n.ruh...@alphasoft.biz>
Subject Forcefully stop org.apache.xalan.transformer.TransformerImpl.transform()
Date Wed, 13 Dec 2017 12:52:31 GMT
Hey there,


using FOP for quite some time now, thanks everyone for all the fine


Iam running FOP 2.0 embedded into a Servlet on Tomcat 8.0.x with Java8 on a
Windows Machine (server 2012 R2).

Usually we have no problems but from time to time during the transformation
org.apache.xalan.transformer.TransformerImpl.transform() process an Out of
Memory Error occurs.


When trying to recreate the problem with the same XML and same XSL we have
no problems; the process takes a very short time (<100ms) and uses not much
memory (<50MB).

The application is configured so it can cosume up to 12GB(!) of RAM so it
looks like some indefinite looping is going on, but unfortunately i have no
further  logs at this time to help me with the investigation.


This is why i wanted to put the transformation into a seperate Thread and
supervise it and kill it off if a certain timeout is reached, however iam
not able to. 

So the question is can you think of any way to stop this processing? I have
implemented the multithreading here with FutureTasks but can switch to just
Threads easily, too. It would be better to kill off the Thread before it
throws an Out of Memory error  and with this affecting the whole Servlet so
that subsequent requests cannot be processed anymore.


Naturally it would be best to find the source of the problem, of course, but
that can take me some time and i would like to have a fallback solution
instead with forcefully stopping the Transformation.

Hope someone is able to help me out with this; thanks in advance and best



View raw message