danfickle / openhtmltopdf

An HTML to PDF library for the JVM. Based on Flying Saucer and Apache PDF-BOX 2. With SVG image support. Now also with accessible PDF support (WCAG, Section 508, PDF/UA)!
https://danfickle.github.io/pdf-templates/index.html
Other
1.93k stars 359 forks source link

Batch processing stuck in openhtmltopdf(PdfBoxFontResolver.java) #959

Open enthusiasticaman opened 11 months ago

enthusiasticaman commented 11 months ago

Batch processing stuck after this log "Loading font({}) from {} supplier now" . which is under public boolean realizeFont() of class PdfBoxFontResolver.java.

below is the code for building PdfRendererBuilder().

new PdfRendererBuilder()// .useProtocolsStreamImplementation(streamFactory, "classpath") // .useFastMode() // .useDefaultPageSize(paperSize.getWidth(), paperSize.getHeight(), BaseRendererBuilder.PageSizeUnits.MM) .useSVGDrawer(new BatikSvgDrawerWrapper()) // .withW3cDocument(w3cDoc, "classpath:/") // .toStream(out) // .useReplacementText("\uFFFD") // .usePageSupplier(pageSupplier) .run();

THIS IS HEPPENING IN MULTITHREADED ENVIRONMENT.

while interating with openhtmltopdf(version 1.0.10), towards the END of the batch processing, the job gets stuck under openhtmltopdf.load(PdfBoxFontResolver.java), this issue is not document specific, CPU utilization is around 50%, so that's also not an issue, can you let me know where should I investigate the issue from?

Can this be concurrency issue? there is no error msg or exception, is pdfBox threadsafe?

@danfickle can you please have a look?