You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After the fun of #12417, it's become clear that it's way too easy for us to leak DOM trees by failing to clean up event listeners correctly, leaking promises, or failing to unmount manually mounted React components - and that it's a pain in the ass to diagnose when it happens.
I think it might be prudent to track the number of trees we have instantiated at any given point - e.g. by maintaining a global refcount on MessageComposer or something, and have it displayed somewhere on /develop (like, physically visible all the time), so developers spot when they've suddenly started to leak trees, rather than relying on everyone constantly doing heap snapshots (or keeping a constant eye for slow leaks).
The text was updated successfully, but these errors were encountered:
After the fun of #12417, it's become clear that it's way too easy for us to leak DOM trees by failing to clean up event listeners correctly, leaking promises, or failing to unmount manually mounted React components - and that it's a pain in the ass to diagnose when it happens.
I think it might be prudent to track the number of trees we have instantiated at any given point - e.g. by maintaining a global refcount on MessageComposer or something, and have it displayed somewhere on /develop (like, physically visible all the time), so developers spot when they've suddenly started to leak trees, rather than relying on everyone constantly doing heap snapshots (or keeping a constant eye for slow leaks).
The text was updated successfully, but these errors were encountered: