Hello, I have been tasked with producing a Proof of Concept surrounding the ability to produce extremely large reports. We have been using the Jasper engine within an in-house reporting system coupled with iReports, since version .0.6.4. We have recently been asked by our clients to enhance the reporting engine to run reports that would easily exceed 1GB in size in PDF format. I'm currently using version 3.7.0 of the Jasper engine and has the following code snippets generating the report. I'm able to generate a report in PDF I have the compression tag set within the exportReportToPdfFile, and use the virtualizer. However, when I add the following tags to turn on the 508 PDF tags, the swap file finishes successfully, but at 75-90 MB during the PDF generation I take an OutOfMemory exception. I have exhausted nearly every alternative I can think of, but know that the problem is somehow tied to the actual PDF generation piece, the fillReport is completing and greating a 3.7GB swap file. The largest report I was able to run, without tags turned on was 1.15GB, took 9 hrs to run, with a total of 623,057 pages, but when I turned the tags on it didn't complete. Is it trying to create the PDF file in memory only? I have tried dropping Jasperreports' 4.1.2 iText library into the 3.7.0 Jasper engine, version 2.1.7, but the same error occurs. This doesn't appear to be an issue related to the virtualizer, however, do the above parameters for the swapFile and invoking the virtualizer look practical? Any assistance would greatly appreciated. -Dan Code:JRSwapFile swapFile = new JRSwapFile(tempdir, 4096 , 4096);System.out.println("Initializing report virtualizer");virtualizer = new JRSwapFileVirtualizer(300, swapFile, true);parameters.put(JRParameter.REPORT_VIRTUALIZER, virtualizer);System.out.println("parameters: " + parameters);System.out.println("virtualizer parameter set - starting pdf creation");long start = System.currentTimeMillis();System.out.println("fillreport file name: " + qc.getAppProperty("ReportDir") + "/" + rpt);JasperPrint jasperPrint = JasperFillManager.fillReport(qc.getAppProperty("ReportDir") + "/" + rpt, parameters, conn);System.out.println("fillreport time : " + (System.currentTimeMillis() - start)); start = System.currentTimeMillis();System.out.println("beginning PDF export");JasperExportManager.exportReportToPdfFile(jasperPrint, tempdir + "/" + qr.queID + "." + ext);System.out.println("PDF creation time : " + (System.currentTimeMillis() - start));///////////////////////////// exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRPdfExporterParameter.IS_TAGGED, Boolean.TRUE); exporter.setParameter(JRPdfExporterParameter.IS_COMPRESSED, Boolean.TRUE); exporter.setParameter(JRPdfExporterParameter.FORCE_SVG_SHAPES, Boolean.TRUE); exporter.setParameter(JRPdfExporterParameter.TAG_LANGUAGE, "English-US"); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFileName);