Grid Footer takes very long for rendering

Hey,

I have been struggling a lot with Grid, but meanwhile I made my peace with most issues. Nevertheless, the rendering time of some of my Views with Grids is still very very poor. In my opinion it is not reasonable for a user to wait more than three seconds for a 25x25 table that displays some plain figures. Now I experienced, that the Grid itself can be rendered in a totally reasonable time (Chrome performance test says 233ms for rendering + 334ms for scripting) but if I add a Footer (just append it this.appenFooterRow() without doing anything else with the Footer) that extends to 2,4s for rendering and 1s for scripting.

Does anyone experienced the same, has an idea where that phenomenon comes from and if there is any way to get around this without relinquishing on a Footer?

Thanks
Best regards

Patric

PS: Used Vaadin Version is 8.3.1

Hi Patric,

I can take a look on this extra rendering time with Footer next week. Can you remind me over here if I don’t get back to this on Monday?

//Teemu

Hi Teemu,

thank you for your reply. Would be great if you can investigate that problem. I’m looking forward to get a feedback how to deal with it.



The performance hit in the initial rendering caused by a footer does seem rather disproportionate.
It happens even for a footer with all its cells merged into one and an empty content, and even for a grid with setFooterVisible(false);

Thank you for conforming my experience. I totally agree with you, that no matter what you do (or not) with the Footer, it takes unreasonably long time. Hope someone will investigate that, because in the current state this is not usable in my opinion.

Hey Teemu,

have you had any chance to have a look on that? Would be great to get some feedback if there is any chance to improve that.

Thanks

Thanks for the reminder!

I did some investigation and found a race condition where adding the footer changed the order of some Grid internal calculations. This did lead to Escalator ending up to count the sizes for all the columns twice even if you had manually set the size of each column. There’s a pull request currently pending review in the Framework GitHub repository.

//Teemu

This just made a world of difference to my footered grids.
Tested with current snapshot. Can’t wait for the next release that includes this.
Thanks Teemu.

Teemu!
Thank you very much! Looks like a small change in the code but it has a huge impact on the rendering time. Thank you again for your fast and helpful support!
Best regards

Patric

Looking at https://github.com/vaadin/framework/pull/10705, this change should make it into release 8.3.3 - is there any chance it might be released soon? We also hit this performance issue… thanks!

Kind regards

Mathis

Hi Mathis,

The fix is already available in the 8.4-SNAPSHOT version of the framework. 8.3.3 is scheduled to be out next week unless something urgent or blocking comes up.

// Teemu

Hi Teemu,
that’s great news! Thanks for the quick feedback.

Kind regards

Mathis

The work on footer performance here has almost certainly solved my performance problem expressed [here]
(https://vaadin.com/forum/thread/16967413). Thanks Teemu.