[
https://issues.apache.org/jira/browse/PDFBOX-4601?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16889974#comment-16889974
]
Timo Boehme commented on PDFBOX-4601:
-------------------------------------
Hi, regarding
{code:java}
if (pageCount + ENLARGE_PAGE_COUNT > pageCount)
{code}
while at first it seems contradictory in its meaning, but you should also read
the comment above:
{code:java}
// enlarge if we do not overflow
{code}
so this tests for the seldom case of int overflow. The maximum-page-count is
tested at start of the method - when later increasing the page count it is
assumed that adding the #ENLARGE_PAGE_COUNT amount is not problematic even if
maxPageCount - pageCount is less than this value (few 4kB pages).
> in AWS lambda pdf merge giving error as Error in pdf consolidation: Expected
> scratch file size of 196608 but found 192512
> -------------------------------------------------------------------------------------------------------------------------
>
> Key: PDFBOX-4601
> URL: https://issues.apache.org/jira/browse/PDFBOX-4601
> Project: PDFBox
> Issue Type: Bug
> Affects Versions: 2.0.12, 2.0.16
> Environment: AWS Lambda
> Reporter: biswajit
> Priority: Major
> Fix For: 2.0.17
>
>
> in AWS lambda pdf merge giving error as
> {{Error in pdf consolidation: Expected scratch file size of 196608 but found
> 192512.}}
> *Code:*
> {code}
> PDFMergerUtility pdfMerger = new PDFMergerUtility();
> pdfMerger.addSources(sources);
> pdfMerger.setDestinationStream(mergedPDFOutputStream);
> pdfMerger.mergeDocuments(MemoryUsageSetting.setupTempFileOnly());
> {code}
> both InputStream and OutputStream are ByteArrayInputStream and
> ByteArrayOutputStream. AWS Lambda environment has 512MB space available only
> for /tmp partition. This could be an issue or not I am not sure. And AWS
> lambda do not permit other directory than /tmp partition to create files.
> And while reading into the code I found below piece of code which I think
> always be true. Because if you add some constant amount to an integer that
> will always be constant amount greater than its original value
> in ScratchFile.java => enlarge() method:
> {code}
> if (pageCount + ENLARGE_PAGE_COUNT > pageCount)
> {
> fileLen += ENLARGE_PAGE_COUNT * PAGE_SIZE;
> raf.setLength(fileLen);
> freePages.set(pageCount, pageCount + ENLARGE_PAGE_COUNT);
> }
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]