Hey all, We're seeing a large increase in memory consumption from Wicket 6.23 to 7.3, it seems that most of the increase comes from classes extending ListView that contain a large amount of items (more than 200 items in each ListView).
The application could run with Xmx800m without any performance issues on Wicket 7, and now on Wicket 8 the heap fills up and the application becomes unresponsive even after increasing the heap size to Xmx2g. Could this be related to this change to the base class MarkupContainer "WICKET-5983: mostly linear performance in MarkupContainer.add" (commit 26cecdc6fabb8c4dadf457a2e4b22ef8c6eb1ea3)? In a later commit (7be920d4403d719e26d2a131454928c086a7317c) there is a comment added: /** * The threshold where we start using a Map to store children in, replacing a List. Adding * components to a list is O(n), and to a map O(1). The magic number is 24, due to a Map using * more memory to store its elements and below 24 children there's no discernible difference * between adding to a Map or a List. * * We have focused on adding elements to a list, instead of indexed lookups because adding is an * action that is performed very often, and lookups often are done by component IDs, not index. */ This seems to indicate that this could increase memory usage, but could the effect be this noticeable? Thanks, Mathias -- **** DISCLAIMER **** http://www.tvh.com/glob/en/email-disclaimer "This message is delivered to all addressees subject to the conditions set forth in the attached disclaimer, which is an integral part of this message."
