Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

High memory usage in SpudSoft Xlsx Emitter #1322

Closed
speckyspooky opened this issue Jun 9, 2023 Discussed in #1318 · 2 comments
Closed

High memory usage in SpudSoft Xlsx Emitter #1322

speckyspooky opened this issue Jun 9, 2023 Discussed in #1318 · 2 comments
Assignees
Labels
Enhancement Small change to improve the current supported functionality
Milestone

Comments

@speckyspooky
Copy link
Contributor

Discussed in #1318

Originally posted by redkark June 8, 2023
I observe high memory usage when using Spudsoft Emitter while generate XLSX output for larger data volumes. I am using the BIRT runtime v4.12 in my Java code to generate the reports. I looked at certain posts where it was suggested to use the ExcelEmitter.Extract in the render options to instruct the spudsoft emitter to use the "streaming" SXSSFWorkbook from Apache POI. However it did not have desired effect. Upon looking at the code for XslxEmitter, I noticed it uses the XSSFWorkbook with no option provided to switch to the SXSSFWorkbook. Would like to know if it is possible to configure spudsoft emitter to make use of the SXSSSFWorkbook, via the render options or other mechanisms?

@speckyspooky speckyspooky added this to the 4.14 milestone Jun 9, 2023
@speckyspooky speckyspooky self-assigned this Jun 9, 2023
@speckyspooky
Copy link
Contributor Author

To have the miniumum of impact to the main project, we could check whether an additonal ExcelEmitter-option would be possible like "ExcelEmitter.StreamingXlsx" as boolean to setup the xlsx-streaming option.

The important thing is that the usage of XSSF and SXSSF isn't the same so the default would be the current handling with XSSF without streaming. The streaming must beactivated with ExcelEmitter.StreamingXlsx = "true".

Apache POI reference:
https://poi.apache.org/components/spreadsheet/

Apache POI details:
https://poi.apache.org/components/spreadsheet/how-to.html#sxssf

speckyspooky added a commit to speckyspooky/birt that referenced this issue Jun 9, 2023
speckyspooky added a commit that referenced this issue Jun 10, 2023
…lEmitter.StreamingXlsx" #1322 (#1323)

* Improvement of the BIRT-viewer, small styling renew, fix issues on
CSS-level #1307

* New excel emitter option "ExcelEmitter.StreamingXlsx" to configure the
memory usage of the SpudSoft Xlsx Emitter #1322
@speckyspooky speckyspooky added the Enhancement Small change to improve the current supported functionality label Jun 10, 2023
@speckyspooky
Copy link
Contributor Author

With the latest built of 4.14-snapshot the new emitter-option is available.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement Small change to improve the current supported functionality
Projects
None yet
Development

No branches or pull requests

1 participant