GroupSummaryView Grid - Multi-row selection very slow when groups are shown
We have a grid that utilises a GroupSummaryView, and allows for selection of multiple rows. Selection of the rows is very slow and gets slower the more rows that are selected. With a grid containing 74 rows (grouped across 3 groups), selecting all the rows by scrolling to the last row and use shift-click causes IE 8 to display the 'Stop running this script ?' web browser is running slowly message.
If I deselect the 'Show In Groups' checkbox (via the drop down from the column headings) and try the same multi-select, performance is much quicker and no IE8 warning message is shown.
We have no code that is executed on row select. The performance is currently unacceptable to our users.
The grid is set up as below:
GroupSummaryView<BookingRowItem> groupSummaryView = new GroupSummaryView<BookingRowItem>();
groupSummaryView.groupBy(colEntitlementTradeOrPositionType);bookingsGrid = new Grid<BookingRowItem>(bookingListStore, columnModel);
That seems to be a very reasonable amount of data to display, so I'm afraid we'll need some more information to be able to pin down what the issue might be. Only having three groups should not cause a serious problem. What version of GXT are you running? How many columns are you adding? Are you writing custom valueprovider or using cells to render any of those columns?
While that is many columns, that shouldn't be enough to cause the kinds of slowdowns you are referring to. Can you share a test case that demonstrates this issue to complete this bug report? See http://www.sencha.com/forum/showthre...T-Bug-Template for the template that you should generally follow for your bug reports.
Otherwise if you can post just the cells themselves, there might be perf issues in there, and I can move this to Discussion to go over any inefficiencies in those cells.
One final note: IE's long running script message doesn't show up based on the amount of time it takes to run some JS code, but merely based on how many instructions are executed. While it is true that your grid seems to be much more complex than the examples we offer, it shouldn't be so much more expensive that this error should pop up without some very expensive other work going on. With out being able to reproduce this, we can't be sure if this is a bug at all in GXT being needlessly inefficient, or just more evidence that IE8 is incredibly slow.
Thanks for the replies. I appreciate that this is a difficult one to re-produce and I am not realistically able to provde a test case. I have commented out the cell renderer code and also turned off all grid filtering. The problem persists.
As soon as I 'ungroup' the grid the performance problem is resolved. There is obviously something more going on re row selection on grouped grids.
I cannot see any other code on my side that could be firing merely because I am selecting rows on the grid. It looks like we may have to live with this issue for now I guess.
I've moved this to discussion for now, since it seems to be an isolated case - we haven't heard of this sort of issue even from teams with much larger grids, so I'm not sure how we can help you without seeing some code. Consider opening a support ticket and uploading the relevant classes, or modifying the grouping example I linked above so that it is as complex as your own case (more rows, more columns, and the same custom cells you use).