Very slow performance / browser freeze when pasting data with filters enabled

Tags: #<Tag:0x00007efc64579678>

Hi, i’m currently trialling the pro features, testing the filtering functionality, but this seems to cripple the performance of pasting data into rows.

With filters off, pasting a value into all the rows of a column is very quick, with the filters on, it’s very slow / freezes the browser.

I’ve forked a copy of your performance demo to show the problem: http://jsfiddle.net/8es529ue/. To reproduce, paste a value into all rows of a column (no need to actually set a filter)

Thank you for sharing @matt

I have replicated the issue. What also concerns me is the fact that after removing everything that I could to make the example work the button for filters are still looking odd and they are not usable. Here’s a simplified demo http://jsfiddle.net/q811r2tu/

Do you get the same result?

Thanks for the reply. They look fine if you set column widths, or stretchH, so i’m (personally) not too worried about the dropdown appearance when widths aren’t set, but would be better if the default widths took the dropdowns into account.

The main concern is the performance when pasting into a lot of rows. Should i raise an issue on GitHub for this, or is this something you handle internally?

Thanks,

Matt

Thank you for your prompt reply @matt

All Handsontable PRO features we try to keep on forum and on our internal ticketing system only for developers.

Thanks, Aleksandra. Would it be possible for you to reply here when the issue is fixed please?

Probably a hard question to answer, but do you know how long these things generally take to get fixed and released? We really like the built in filters in the pro version, but would have to pre-filter the data ourselves with this issue.

Thanks,

Matt

Sure @matt I have left a note to developers that this topic is related.

Generally, the performance issues are the hardest to fix. Usually, not only one element is guilty, rather a set of different types of operations or small calls made in each cell.