I have a specific document I'm trying to process which causes Prince to run forever; this occurs in both Prince for Books and in the latest version of the core product.
When running Prince in verbose mode, the logging suggests that it reaches the end of the document, then just tries to resolve cross-references forever. The resulting log looks like this:
prince: Resolving cross-references...
prince: Resolving cross-references...
prince: Resolving cross-references...
prince: Resolving cross-references...
prince: Resolving cross-references...
... and on without end, potentially for hours if I just let it run. Enabling debugging messages isn't much more informative – it results in the following:
prince: Resolving cross-references...
prince: debug: pack
prince: Resolving cross-references...
prince: debug: pack
prince: Resolving cross-references...
prince: debug: pack
prince: Resolving cross-references...
prince: debug: pack
prince: Resolving cross-references...
prince: debug: pack
The document in question makes extensive use of cross-references with generated content; I suspect, but cannot prove, that what's going in here is that the generated content for some cross-reference somewhere in the document is causing the thing it's referring to to be bumped to the next page, which changes its page number, which modifies the original cross reference in such a way that it no longer causes a page break, which pulls the thing it's referring to back to its original page, and so on, and so on. However, since I can't see the rendered PDF output, I'm not sure where this might be happening, if indeed it's the culprit.
Can anyone offer any suggestions regarding how to chase this one down? I unfortunately have not been successful in producing a contrived test case that replicates the issue, and the document in question is not one I'm at liberty to publicly share at this time.
When running Prince in verbose mode, the logging suggests that it reaches the end of the document, then just tries to resolve cross-references forever. The resulting log looks like this:
prince: Resolving cross-references...
prince: Resolving cross-references...
prince: Resolving cross-references...
prince: Resolving cross-references...
prince: Resolving cross-references...
... and on without end, potentially for hours if I just let it run. Enabling debugging messages isn't much more informative – it results in the following:
prince: Resolving cross-references...
prince: debug: pack
prince: Resolving cross-references...
prince: debug: pack
prince: Resolving cross-references...
prince: debug: pack
prince: Resolving cross-references...
prince: debug: pack
prince: Resolving cross-references...
prince: debug: pack
The document in question makes extensive use of cross-references with generated content; I suspect, but cannot prove, that what's going in here is that the generated content for some cross-reference somewhere in the document is causing the thing it's referring to to be bumped to the next page, which changes its page number, which modifies the original cross reference in such a way that it no longer causes a page break, which pulls the thing it's referring to back to its original page, and so on, and so on. However, since I can't see the rendered PDF output, I'm not sure where this might be happening, if indeed it's the culprit.
Can anyone offer any suggestions regarding how to chase this one down? I unfortunately have not been successful in producing a contrived test case that replicates the issue, and the document in question is not one I'm at liberty to publicly share at this time.