Hi Maruan, Yes, I saw that, but it would be nice if this issue can be solved within PDFBox, too.
Gilad On Tue, Mar 14, 2023 at 4:52 PM Maruan Sahyoun <sahy...@fileaffairs.de> wrote: > You can set the ulimit on Linux - Standard is 1024 open files. > > BR > Maruan > > > Am 14.03.2023 um 16:05 schrieb Gilad Denneboom < > gilad.denneb...@gmail.com>: > > > > Hi all, > > > > I created an application that opens many files (I'm talking thousands), > > searching them for specific pages and then merges those pages into new > PDF > > files. The way I do it is by using the importPage command from the > original > > files into the split ones. > > However, I'm getting an IOException ("Too many open files") from > > ScratchFile after several thousands files were processed. I had a look at > > the source code for that class and I think it might have to do with a > > RandomAccessFile variable ("raf") not being properly closed. > > All of the documents are opened using MemoryUsageSetting set to > > setupTempFileOnly, by the way. > > Could someone confirm this is the issue, and maybe help solve it? I'm > using > > PDFBox 2.0.26, by the way, and the app runs on a Mac. > > > > The stack-trace: > > Exception in thread "main" java.io.IOException: Too many open files > > at java.base/java.io.UnixFileSystem.createFileExclusively0(Native > Method) > > at > > java.base/java.io > .UnixFileSystem.createFileExclusively(UnixFileSystem.java:356) > > at java.base/java.io.File.createTempFile(File.java:2179) > > at org.apache.pdfbox.io.ScratchFile.enlarge(ScratchFile.java:217) > > at org.apache.pdfbox.io.ScratchFile.getNewPage(ScratchFile.java:167) > > at > > org.apache.pdfbox.io > .ScratchFileBuffer.addPage(ScratchFileBuffer.java:126) > > at org.apache.pdfbox.io.ScratchFileBuffer. > <init>(ScratchFileBuffer.java:84) > > at org.apache.pdfbox.io.ScratchFile.createBuffer(ScratchFile.java:424) > > at > org.apache.pdfbox.cos.COSStream.createRaw0utputStream(COSStream.java:273) > > at > org.apache.pdfbox.pdfparser.COSParser.parseCOSStream(COSParser.java:1140) > > at > org.apache.pdfbox.pdfparser.COSParser.parseFileObject(COSParser.java:929) > > at > > > org.apache.pdfbox.pdfparser.COSParser.parseObjectDynamically(COSParser.java:888) > > at > > > org.apache.pdfbox.pdfparser.COSParser.parseObjectDynamically(COSParser.java:800) > > at > > > org.apache.pdfbox.pdfparser.COSParser.parseDictObjects(COSParser.java:760) > > at org.apache.pdfbox.pdfparser.PDFParser.initialParse(PDFParser.java:187) > > at org.apache.pdfbox.pdfparser.PDFParser.parse(PDFParser.java:226) > > at org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:1107) > > at org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:1090) > > at org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:1014) > > at MergeStudentRecords_2021.main(MergeStudentRecords_2021.java:324) > > > > Thanks in advance! > > > > Gilad > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@pdfbox.apache.org > For additional commands, e-mail: users-h...@pdfbox.apache.org > >