2013-05-17 14:30:55 |
Benji York |
description |
There is a DOM node leak triggered by relation lines.
To reproduce:
- start the app against the improv script
- remove all services but two that can be related (e.g., mediawiki and haproxy)
- remove all relations
- start the memory timeline
- click on the trash can icon to trigger a GC collection
- clear the memory timeline
- move a service a few times
- click on the trash can icon to trigger a GC collection
- double-click on the timeline range selector to expand it to "all time"
- note whether or not the DOM node bar goes back to baseline
- note that there is no leak (hopefully)
- add a relation
- click on the trash can icon to trigger a GC collection
- clear the memory timeline
- move a service a few times
- click on the trash can icon to trigger a GC collection
- double-click on the timeline range selector to expand it to "all time"
- note whether or not the DOM node bar goes back to baseline
- note a DOM node leak of > 100 nodes (hopefully) |
There is a DOM node leak triggered by processing websocket messages. By triggering annotation deltas (by moving a service and cuasing the new x and y to be store in the environemnt) the leak can be observed.
To reproduce:
- start the app against the improv script
- remove all services but one
- remove all relations
- start the memory timeline
- click on the trash can icon to trigger a GC collection
- clear the memory timeline
- move a service a few times
- click on the trash can icon to trigger a GC collection
- double-click on the timeline range selector to expand it to "all time"
- note whether or not the DOM node bar goes back to baseline
- note that the leak
If you do the same steps using the sandbox backend, no DOM leak is triggered. |
|