Bug 80320 - EDITING: Pictures in Reports blow up *.odb-File
Summary: EDITING: Pictures in Reports blow up *.odb-File
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Database (show other bugs)
Version: Inherited From OOo
Hardware: Other All
: medium normal
Assignee: Not Assigned
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-06-21 09:59 UTC by robert
Modified: 2015-01-03 17:39 UTC (History)
4 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Shows the folder ObjectReplacements in the *.odb-file (65.46 KB, image/png)
2014-06-21 09:59 UTC, robert
Details
Two databases, one with folder ObjectReplacements, the other without (1.04 MB, application/zip)
2014-06-21 10:13 UTC, robert
Details

Description robert 2014-06-21 09:59:51 UTC
Created attachment 101476 [details]
Shows the folder ObjectReplacements in the *.odb-file

Open a new database-file, which hasn't any report.
Create a new report.
Save the report.
Execute the report.
Save the database-file.
Have a look for the size of the file.

Close the database-file and reopen it.
Open the report for editing. You edit anything, only save the file again.
Save the database-file.
Have a look for the size of the file. 

In all tests here the size was bigger tan before. The size would be much bigger if there is an image-control in the report, which reads pictures from outside of the report. I fist detected this with a database and a report, which shows only 3 pictures, which are linked by the table of the database. The database-file blowed up to 16MB.

There is a folder "report" inside the database-file, which contains all reports. After editing a report the second time it shows a subfolder "ObjectReplacements" with a file "report". Don't know why, but this file is the big one. You could delete the subfolder "ObjectReplacements" in a packaging-software and the *.odb-file would work without any problems. This subfolder shouldn't be created. It isn't used by the Report-Builder afterwords.
Comment 1 robert 2014-06-21 10:13:10 UTC
Created attachment 101477 [details]
Two databases, one with folder ObjectReplacements, the other without

Open the database without ObjectReplacements (6,8kb).
Open the report for editing, save the report, save the database-file, close the database-file.
Now have a look at the size of the database-file. Would be blown up to over 700kB.
Now take a picture of your digital-cam. Replace the picture picture.jpg by the picture of your digital-cam. Rename the picture as picture.jpg so the database would read this new picture.
Open the database, open the report for editing, save the report, save the database-file, close the database-file. You would notice LO had something to do - works not as fast as before.
Now have a look at the size of the database-file. With tests of a 2,8 MB *.jpg-File here the database-file blows up to 11,2 MB.
Comment 2 Stephan 2014-06-22 10:30:22 UTC
I can confirm this bug, tested with  
Opensuse 13.1 64bit und LIbreOffice Version: 4.3.0.0.beta1 
Build ID: 2e39c7e59c8fc8b16a54c3d981dceef27fb0c07f.
and set status to NEW
Comment 3 Thomas Hackert 2014-06-23 07:53:55 UTC
Hello Robert, *,
I can confirm this bug with LO Version: 4.1.6.2 Build-ID:
40ff705089295be5be0aae9b15123f687c05b0a, Version 4.2.5.2 Build-ID: 61cb170a04bb1f12e77c884eab9192be736ec5f5 4.3.0.1 Build-ID: 9ed0c4329cf13f882dab0ee8b9ecd7b05e4aafbb, and AOO 4.3.0.1
Build-ID: 9ed0c4329cf13f882dab0ee8b9ecd7b05e4aafbb (all but the first parallel installed, following the instructions from https://wiki.documentfoundation.org/Installing_in_parallel) with installed Germanophone lang- as well as helppack under Debian Testing i686 ... :( It seems, that LO / AOO copies the image into pictures_in_reports_without_ObjectReplacements/reports/Obj11/ObjectReplacements/report instead of only linking it. When I create the report (after I have started LO from command line), I get

<snip>
org.pentaho.reporting.libraries.base.boot.PackageManager loadModule
WARNUNG: Exception while loading module: org.pentaho.reporting.libraries.base.boot.DefaultModuleInfo={ModuleClass=org.jfree.report.modules.gui.swing.common.SwingCommonModule}
java.lang.NullPointerException
        at org.pentaho.reporting.libraries.base.boot.PackageManager.containsModule(PackageManager.java:369)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.loadModule(PackageManager.java:436)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.addModule(PackageManager.java:330)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.load(PackageManager.java:199)
        at org.jfree.report.JFreeReportBoot.performBoot(Unknown Source)
        at org.pentaho.reporting.libraries.base.boot.AbstractBoot.start(AbstractBoot.java:197)
        at org.libreoffice.report.pentaho.PentahoReportEngine.<init>(PentahoReportEngine.java:34)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.createReportJob(SOReportJobFactory.java:319)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.execute(SOReportJobFactory.java:213)

Jun 23, 2014 7:56:54 AM org.pentaho.reporting.libraries.base.boot.PackageManager loadModule
WARNUNG: Exception while loading module: org.pentaho.reporting.libraries.base.boot.DefaultModuleInfo={ModuleClass=org.jfree.report.modules.gui.swing.html.SwingHtmlModule}
java.lang.NullPointerException
        at org.pentaho.reporting.libraries.base.boot.PackageManager.containsModule(PackageManager.java:369)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.loadModule(PackageManager.java:436)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.addModule(PackageManager.java:330)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.load(PackageManager.java:199)
        at org.jfree.report.JFreeReportBoot.performBoot(Unknown Source)
        at org.pentaho.reporting.libraries.base.boot.AbstractBoot.start(AbstractBoot.java:197)
        at org.libreoffice.report.pentaho.PentahoReportEngine.<init>(PentahoReportEngine.java:34)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.createReportJob(SOReportJobFactory.java:319)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.execute(SOReportJobFactory.java:213)

Jun 23, 2014 7:56:54 AM org.pentaho.reporting.libraries.base.boot.PackageManager loadModule
WARNUNG: Exception while loading module: org.pentaho.reporting.libraries.base.boot.DefaultModuleInfo={ModuleClass=org.jfree.report.modules.gui.swing.pdf.SwingPdfModule}
java.lang.NullPointerException
        at org.pentaho.reporting.libraries.base.boot.PackageManager.containsModule(PackageManager.java:369)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.loadModule(PackageManager.java:436)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.addModule(PackageManager.java:330)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.load(PackageManager.java:199)
        at org.jfree.report.JFreeReportBoot.performBoot(Unknown Source)
        at org.pentaho.reporting.libraries.base.boot.AbstractBoot.start(AbstractBoot.java:197)
        at org.libreoffice.report.pentaho.PentahoReportEngine.<init>(PentahoReportEngine.java:34)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.createReportJob(SOReportJobFactory.java:319)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.execute(SOReportJobFactory.java:213)

Jun 23, 2014 7:56:54 AM org.pentaho.reporting.libraries.base.boot.PackageManager loadModule
WARNUNG: Exception while loading module: org.pentaho.reporting.libraries.base.boot.DefaultModuleInfo={ModuleClass=org.jfree.report.modules.gui.swing.preview.SwingPreviewModule}
java.lang.NullPointerException
        at org.pentaho.reporting.libraries.base.boot.PackageManager.containsModule(PackageManager.java:369)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.loadModule(PackageManager.java:436)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.addModule(PackageManager.java:330)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.load(PackageManager.java:199)
        at org.jfree.report.JFreeReportBoot.performBoot(Unknown Source)
        at org.pentaho.reporting.libraries.base.boot.AbstractBoot.start(AbstractBoot.java:197)
        at org.libreoffice.report.pentaho.PentahoReportEngine.<init>(PentahoReportEngine.java:34)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.createReportJob(SOReportJobFactory.java:319)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.execute(SOReportJobFactory.java:213)

Jun 23, 2014 7:56:54 AM org.pentaho.reporting.libraries.base.boot.PackageManager loadModule
WARNUNG: Exception while loading module: org.pentaho.reporting.libraries.base.boot.DefaultModuleInfo={ModuleClass=org.jfree.report.modules.gui.swing.printing.SwingPrintingModule}
java.lang.NullPointerException
        at org.pentaho.reporting.libraries.base.boot.PackageManager.containsModule(PackageManager.java:369)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.loadModule(PackageManager.java:436)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.addModule(PackageManager.java:330)
        at org.pentaho.reporting.libraries.base.boot.PackageManager.load(PackageManager.java:199)
        at org.jfree.report.JFreeReportBoot.performBoot(Unknown Source)
        at org.pentaho.reporting.libraries.base.boot.AbstractBoot.start(AbstractBoot.java:197)
        at org.libreoffice.report.pentaho.PentahoReportEngine.<init>(PentahoReportEngine.java:34)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.createReportJob(SOReportJobFactory.java:319)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.execute(SOReportJobFactory.java:213)

Jun 23, 2014 7:56:54 AM org.pentaho.reporting.libraries.base.boot.AbstractBoot start
INFORMATION: Pentaho Reporting Flow-Engine null started.
Jun 23, 2014 7:57:01 AM org.libreoffice.report.StorageRepository isReadable
SCHWERWIEGEND: ReportProcessing failed
com.sun.star.container.NoSuchElementException: /home/cloph/source/libo-core/package/source/xstor/xstorage.cxx:2996: 
        at com.sun.star.bridges.jni_uno.JNI_proxy.dispatch_call(Native Method)
        at com.sun.star.bridges.jni_uno.JNI_proxy.invoke(JNI_proxy.java:183)
        at com.sun.proxy.$Proxy15.isStreamElement(Unknown Source)
        at org.libreoffice.report.StorageRepository.isReadable(StorageRepository.java:177)
        at org.libreoffice.report.pentaho.output.ImageProducer.produceFromString(ImageProducer.java:330)
        at org.libreoffice.report.pentaho.output.ImageProducer.produceImage(ImageProducer.java:196)
        at org.libreoffice.report.pentaho.output.OfficeDocumentReportTarget.startImageProcessing(OfficeDocumentReportTarget.java:1314)
        at org.libreoffice.report.pentaho.output.text.TextRawReportTarget.startOther(TextRawReportTarget.java:540)
        at org.libreoffice.report.pentaho.output.OfficeDocumentReportTarget.startElement(OfficeDocumentReportTarget.java:715)
        at org.libreoffice.report.pentaho.layoutprocessor.ImageElementLayoutController.generateImage(ImageElementLayoutController.java:109)
        at org.libreoffice.report.pentaho.layoutprocessor.ImageElementLayoutController.delegateContentGeneration(ImageElementLayoutController.java:86)
        at org.libreoffice.report.pentaho.layoutprocessor.AbstractReportElementLayoutController.advance(AbstractReportElementLayoutController.java:73)
        at org.jfree.report.flow.AbstractReportProcessor.processReportRun(Unknown Source)
        at org.jfree.report.flow.SinglePassReportProcessor.processReport(Unknown Source)
        at org.libreoffice.report.pentaho.PentahoReportJob.execute(PentahoReportJob.java:399)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.execute(SOReportJobFactory.java:214)

Jun 23, 2014 7:57:02 AM org.libreoffice.report.StorageRepository isReadable
SCHWERWIEGEND: ReportProcessing failed
com.sun.star.container.NoSuchElementException: /home/cloph/source/libo-core/package/source/xstor/xstorage.cxx:2996: 
        at com.sun.star.bridges.jni_uno.JNI_proxy.dispatch_call(Native Method)
        at com.sun.star.bridges.jni_uno.JNI_proxy.invoke(JNI_proxy.java:183)
        at com.sun.proxy.$Proxy15.isStreamElement(Unknown Source)
        at org.libreoffice.report.StorageRepository.isReadable(StorageRepository.java:177)
        at org.libreoffice.report.pentaho.output.ImageProducer.produceFromString(ImageProducer.java:330)
        at org.libreoffice.report.pentaho.output.ImageProducer.produceImage(ImageProducer.java:196)
        at org.libreoffice.report.pentaho.output.OfficeDocumentReportTarget.startImageProcessing(OfficeDocumentReportTarget.java:1314)
        at org.libreoffice.report.pentaho.output.text.TextRawReportTarget.startOther(TextRawReportTarget.java:540)
        at org.libreoffice.report.pentaho.output.OfficeDocumentReportTarget.startElement(OfficeDocumentReportTarget.java:715)
        at org.libreoffice.report.pentaho.layoutprocessor.ImageElementLayoutController.generateImage(ImageElementLayoutController.java:109)
        at org.libreoffice.report.pentaho.layoutprocessor.ImageElementLayoutController.delegateContentGeneration(ImageElementLayoutController.java:86)
        at org.libreoffice.report.pentaho.layoutprocessor.AbstractReportElementLayoutController.advance(AbstractReportElementLayoutController.java:73)
        at org.jfree.report.flow.AbstractReportProcessor.processReportRun(Unknown Source)
        at org.jfree.report.flow.SinglePassReportProcessor.processReport(Unknown Source)
        at org.libreoffice.report.pentaho.PentahoReportJob.execute(PentahoReportJob.java:399)
        at org.libreoffice.report.pentaho.SOReportJobFactory$_SOReportJobFactory.execute(SOReportJobFactory.java:214)

(LO with Java "1.9.0-ea" Java(TM) SE Runtime Environment (build 1.9.0-ea-b11)
Java HotSpot(TM) Client VM (build 25.0-b62, mixed mode) )

Though I think, only "SCHWERWIEGEND: ReportProcessing failed" ("SCHWERWIEGEND" roughly translated to "GRAVE" or "FATAL"?) seems to indicate, that the integrated report builder has a problem while creating the report, I am not sure, if other warnings ("WARNUNG" in Java's output above) are relevant as well ... :(
Sorry for the inconvenience and HTH
Thomas.
Comment 4 Julien Nabet 2014-06-28 15:11:43 UTC
On MacOs 10.9.3 with master sources updated today, I just tested first part of comment 1 and reproduced the problem.
Comment 5 Alex Thurgood 2015-01-03 17:39:55 UTC
Adding self to CC if not already on


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.