https://issues.apache.org/bugzilla/show_bug.cgi?id=51585

--- Comment #4 from [email protected] ---
Ok after some debugging, I can see that the code hangs on some very inffecient
looping code centered at ColumnHelper.cleanColumns() and
ColumnHelper.addCleanColIntoCols(CTCols, CTCol)

The attached example xlsx for example has some 10000 column definitons in its
xml structure. The ridiculous looping code, starts to loop over 10000 records,
and then calls some inner loop(s) which have the potential to loop 10000 times
themselves, and as well as for every iteration of the loop, it also tries to
sort that same list of columns which can have upto 10000 entries. 

There is no infinite loops or anything of the sort. Just some poorly designed
iteration code. The call would eventually finish, but who knows how long it
will take. The complexity and size of the list being iterated grows
exponentially, and after about the first 1100 columns it slow to a crawl, Im
guessing the complexity of this looping process is something like n^3

I have worked out some changes to ColumnHelper coupled with Proxy classes for
CTCol and CTCols and was able to complete workbook creation in seconds. Will
post sample code later. Probably needs a patch in the codebase.

-- 
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]

Reply via email to