SearchBuilder newer than 1.2.0 exceeds maximum callstack

SearchBuilder newer than 1.2.0 exceeds maximum callstack

miked11miked11 Posts: 3Questions: 0Answers: 0

Hello, since upgrading SearchBuilder to 1.2.1 every action (adding/removing a condition, choosing a column to filter on etc., even just displaying the saved filter without any interaction at all (!) ) takes a very long time - sometimes 20 seconds or more. It also occasionally freezes the whole website, and the browser reports that a script is slowing down the page.

The same issue happens with SB 1.2.2
It happens even with micro tables: 20-30 rows and 5 columns.

I tried different config options, but nothing seems to work. Versions 1.2.0 and older work like a charm - every click has an effect immediately and there are no problems with the UI falling apart.
The above makes me think that something got changed/broken in SB 1.2.1.

Here's a recording of the frozen website and console error on simply showing SB filter: https://watch.screencastify.com/v/D9RWDEoRDTx9O1TLTg1t
Here's the recording of the issue with UI falling apart: https://watch.screencastify.com/v/5RtO6NMkaU425EDNZxBy

Here's what I see in the console after almost every interaction with SearchBuilder:

Uncaught RangeError: Maximum call stack size exceeded
at HTMLTableElement.<anonymous> (dataTables.select.min.js:22)
at HTMLTableElement.dispatch (jquery-3.5.1.min.js:2)
at HTMLTableElement.v.handle (jquery-3.5.1.min.js:2)
at Object.trigger (jquery-3.5.1.min.js:2)
at HTMLTableElement.<anonymous> (jquery-3.5.1.min.js:2)
at Function.each (jquery-3.5.1.min.js:2)
at S.fn.init.each (jquery-3.5.1.min.js:2)
at S.fn.init.trigger (jquery-3.5.1.min.js:2)
at F (datatables.min.js:118)
at ja (datatables.min.js:71)

Uncaught RangeError: Maximum call stack size exceeded
at ja (datatables.min.js:70)
at ka (datatables.min.js:71)
at B.<anonymous> (datatables.min.js:153)
at B.iterator (datatables.min.js:146)
at B.<anonymous> (datatables.min.js:153)
at B.draw (datatables.min.js:149)
at HTMLDivElement.<anonymous> (datatables.min.js:545)
at HTMLDivElement.dispatch (jquery-3.5.1.min.js:2)
at HTMLDivElement.v.handle (jquery-3.5.1.min.js:2)
at Object.trigger (jquery-3.5.1.min.js:2)

And similar errors, all mentioning Maximum call stack.

So far I am unable to reproduce it with jsfiddle - will keep trying.

Please advise how can I debug it further or what a reason can be.

Thanks!
Mike

Replies

Sign In or Register to comment.