https://bugs.documentfoundation.org/show_bug.cgi?id=50916
--- Comment #28 from Markus Mohrhard <[email protected]> --- (In reply to Dennis Francis (ldcs.co.in) from comment #27) > From table.hxx, and column.[hc]xx, it looks like each column is set as a > fixed sized mdds mtv of MAXROWCOUNT. > > http://opengrok.libreoffice.org/xref/core/sc/source/core/data/column.cxx#83 > > hence every single column in the table costs us memory space proportional to > MAXROWCOUNT irrespective of the number of non empty data cells in that > column. > > Can't we set the initial number of elements of mtv's like maCells, > maBroadcasters etc.. to a smaller value say INITROWCOUNT=100 in the ScColumn > constructor and call mtv resize() only when we get a request to set a new > data at a logical location (say 120) which is beyond the current capacity of > the mtv (100) ? > > If calling mtv resize(old_size + additional_space_needed) for every new data > addition is suboptimal, can we do resize(old_size + > k*additional_space_needed) where k is some heuristic measure of "expected > growth" in space for that column from the saved history of previous calls to > resize() ? mdds is not the problem as mdds internally does not more or less what you mentioned. Actually increasing the row limit is not a problem. The problem is all the places where we iterate through each column. -- You are receiving this mail because: You are the assignee for the bug.
_______________________________________________ Libreoffice-bugs mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
