xmlgraphics-fop-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Rubin <mru...@thunderhead.com>
Subject Re: Fop Memory Use
Date Wed, 18 May 2011 12:24:22 GMT
Just a wild thought. But is there a way you could possibly get the JVM to garbage collect between
each run? Maybe that might free the memory up?



On 18/05/11 13:20, Eric Douglas wrote:

I am using Fop 1.0.
I tried using Fop to transform a single document.  When I got a little over 100 pages my FO
file was over 5 MB.  The transform crashed with a Java heap out of memory error.

I managed to break the input down, as I'm using embedded code generating the input programmatically,
and the PDF output is a lot smaller.

So I'm currently transforming 10 pages at a time, setting the initial-page-number to the next
sequence (1, 11, 21, etc).

Then I save all the generated PDFs in memory and merge them using pdfbox.  So far this is
working great.

I tried to do the same thing with the PNGRenderer, just calling a method to transform 10 pages
at a time and save the output images in an array.

The PNGRenderer is created locally in the method.  It should be getting released when the
method ends but the java process never releases any memory.

I tested a 90 page report and the memory use was over 1 GB.  I tested on another machine where
the memory limit is apparently lower and it crashed on page 24.

Everything about the method to render to PNG is the same as the method to render to PDF aside
from the Renderer.
Is there a problem with this renderer or something I could need to do different?

Michael Rubin


[http://thunderhead.com/email_signature/images/Thunderhead-logo.png]    [http://thunderhead.com/email_signature/images/make-every-communication-count.png]






+44 20 8238 7400

+44 20 8238 7401



Thunderhead featured in The Sunday Times Profit Track 100 league table of companies with fastest-growing
profits. Click here<http://www.fasttrack.co.uk/fasttrack/press/pt11-lon.pdf> to read

[http://thunderhead.com/email_signature/images/twitter.png] <http://twitter.com/Thunderheadon>
[http://thunderhead.com/email_signature/images/rss.png] <http://www.thunderhead.com/rss/rss.php>
[http://thunderhead.com/email_signature/images/youtube.png] <http://www.youtube.com/user/ThunderheadOn>
[http://thunderhead.com/email_signature/images/theblog.png] <http://thunderheadinnovate.wordpress.com/>
 [http://thunderhead.com/email_signature/images/werehiring.png] <http://thunderhead.com/about/careers.php>

The contents of this e-mail are intended for the named addressee only. It contains information
that may be confidential. Unless you are the named addressee or an authorized designee, you
may not copy or use it, or disclose it to anyone else. If you received it in error please
notify us immediately and then destroy it.

View raw message