[
https://issues.apache.org/jira/browse/MYFACES-4754?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18088352#comment-18088352
]
Werner Punz commented on MYFACES-4754:
--------------------------------------
I already have fixed it in npm there is a new version
[email protected] I will integrate it in myfaces tomorrow and also
need to run a local test on a setup which replaces 125k+ nodes on chromes
locally before handing out the pull requests (also the Tobag guys need to run
their tests on it as well before)
So not today anymore, but the next few days I will have everything prepared!
> "Maximum call stack size exceeded" when AJAX updating large DOM in Chromium
> based browsers
> ------------------------------------------------------------------------------------------
>
> Key: MYFACES-4754
> URL: https://issues.apache.org/jira/browse/MYFACES-4754
> Project: MyFaces Core
> Issue Type: Bug
> Components: General
> Affects Versions: 4.1.3
> Reporter: Ben Chester
> Assignee: Werner Punz
> Priority: Major
> Attachments: image-2026-06-11-19-42-58-778.png
>
>
> We chased this down to the spread operator used in the bottom of
> `querySelectAllDeep` in DomQuery.ts. Changing those spread operators that
> just copy to `.slice()` appears to rectify the issue.
> This is caused by an issue that Chromium (or more specifically V8) is aware
> of but don't care to fix, the earliest report I could find is from 2022:
> [https://issues.chromium.org/issues/41467953] .
> The issue is reproducible with the following xhtml, which creates 100,000
> empty divs (it breaks somewhere between 60k and 70k). I believe the only
> thing that matters is the total number of elements in the DOM.
> {noformat}
> <!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"
> xmlns:ui="jakarta.faces.facelets"
> xmlns:f="jakarta.faces.core"
> xmlns:h="jakarta.faces.html"
> ><h:body>
> <h:form>
> <ui:repeat begin="0" end="100000">
> <div/>
> </ui:repeat>
> <h:outputText value="Test Text"/>
> <br/>
> <h:commandLink
> id="testButton"
> value="Test"
> >
> <f:ajax
> execute="@this"
> render="testButton"
> />
> </h:commandLink>
> </h:form>
> </h:body></html>{noformat}
> I'm happy to prepare a PR for this if that'd help
--
This message was sent by Atlassian Jira
(v8.20.10#820010)