https://issues.apache.org/bugzilla/show_bug.cgi?id=51635
Bug #: 51635
Summary: [PATCH] Improving performance of XSSFSheet#write
Product: POI
Version: 3.8-dev
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: XSSF
AssignedTo: [email protected]
ReportedBy: [email protected]
Classification: Unclassified
Created attachment 27362
--> https://issues.apache.org/bugzilla/attachment.cgi?id=27362
Patch file
This patch intends to provide improved performance for XSSFSheet#write by
getting rid of XSSFSheet#ensureRowOrdering.
The general idea is to keep the underlying CTSheetData row array collection
sorted all times (this idea was highlighted by Yegor Kozlov in
http://apache-poi.1045710.n5.nabble.com/Performance-Question-with-CTSheetDataImpl-java-td2335065.html).
This requires that methods XSSFSheet#createRow, XSSFSheet#removeRow and
XSSFSheet#shiftRows manage the worksheet.getSheetData() row array collection
correspondingly.
This patch also adapts one of the unit tests:
TestXSSFSheet#testCreateRow
This test was checking that creating rows in reverse order actually keeps the
rows inside worksheet.getSheetData() in the order they have been inserted. This
has been changed to a test that actually checks that rows are kept in ascending
order.
--
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]