I am attempting to do database publishing using fop to format the output. I have created a style sheet that creates a table of contents and an index for my document using <fo:basic-link internal-destination=...> in combination with id attributes. A larger document is represented by an XML file of approximately 8MB and contains thousands of such links. I am finding that the JVM memory pool required to process this is about 750MB at this point. My database is not yet complete and the documents are likely to grow both in size and number of links a good bit before I am done.
I have tried running this on a machine with 512MB of memory and it trashed hopelessly for 12 hours without completing. I have 1 machine with 1GB of RAM that I normally reserve as a server that can do the processing in 1/2 an hour, but I am worried that I will lose the ability to create the document as it continues to grow.
Do you have any suggestions that would help tame the memory utilization? Will the next release of fop be able to process links with a smaller amount of memory?