Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.0.23
-
None
-
None
Description
Continuation of PDFBOX-2512
in COSWriter.prepareIncrement(), for the test case cosDoc.getXrefTable().keySet() has size 5925. For each of thes keys, cosDoc.getObjectFromPool() gets an object that is not just referencing some part of the input document, but duplicates it (which is unavoidable in the case where they are decompressed with FlateFilter - albeit this could possibly be done "lazy")
-Xmx20m 746/5925
-Xmx25m 1615/5925
-Xmx30m 2800/5925
-Xmx40m 3872/5925
-Xmx55m 5773/5925
With 60m, it gets them all, but dies later with less telling
java.lang.OutOfMemoryError: GC overhead limit exceeded
This assumes the patch of PDFBOX-5067 already in place - or using CreateVisibleSignature2.java as starting point