-
Notifications
You must be signed in to change notification settings - Fork 47.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Investigate the nested update overflow caused by coalescing #11207
Comments
Any progress or update on this bug? I've been running into it while using "React WayPoint" but have been having trouble replicating it reliably. |
@WardenUnleashed are you sure it was this issue? The PR that introduced this issue has not been released in any public releases. |
If this has anything to do with #11113 or a "Maximum update depth exceeded .." error, than I think it might. To give a brief summary of the physical symptoms I see when encountering my problem, my component essentially tries to setState when it enters or leaves the viewport, when the onLeave event fires, it will completely freeze up the entire browser and become unresponsive, starting to utilize a significant amount of memory until it hits the upper limit of events, then the error will be logged. the duration of this freeze and the logging of the error varies from seemingly never to a few seconds. I figured they might be related due to the infinite-loop nature of my own problem and the fact that I haven't experienced this problem previously. |
The internal bug was fixed by #11212. @WardenUnleashed Infinite loop bugs could be caused by any number of things. Could you open a separate issue with more details, and ideally an isolated repro case? |
We had an internal issue (T22633912) which manifested itself as an infinite nested update loop triggering our invariant.
@trueadm investigated that it was introduced in #10426 and then fixed in #11187. We don’t, however, have any failing tests related to that.
Even though we removed that coalescing implementation, I feel like we need to investigate what happened and add a regression test to prevent the same issue from occurring in the future.
It might also be valuable to think about any additional information we can surface in the error, at least in development. For example, component names for last ten fibers that scheduled an update.
The text was updated successfully, but these errors were encountered: