Skip to content
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

Memory Leak due to TimeSegment widget #540

Open
ogewan opened this issue Apr 6, 2021 · 1 comment
Open

Memory Leak due to TimeSegment widget #540

ogewan opened this issue Apr 6, 2021 · 1 comment
Labels
Priority: Critical Realm: FlyWire Flywire specific changes, should be moved to https://github.com/seung-lab/ng-extend Realm: SeungLab Specific to seung-lab/neuroglancer. Type: Bug Type: Performance

Comments

@ogewan
Copy link

ogewan commented Apr 6, 2021

flatpickr, the module used for timeSegment widget creates a div element every time it is instantiated but never disposes of itself
As a result any state change will generate more unused divs in the dom.
This is extremely problematic combined with undo/redo which causes a state change every operation.

@ogewan ogewan added Type: Bug Priority: Critical Status: In Progress Type: Performance Realm: SeungLab Specific to seung-lab/neuroglancer. Realm: FlyWire Flywire specific changes, should be moved to https://github.com/seung-lab/ng-extend and removed Status: In Progress labels Apr 6, 2021
@ogewan
Copy link
Author

ogewan commented Apr 6, 2021

I can remove leftover divs when I create a new one with the same id using the layer name as the id
However, the layer name is not accessible when creating a layer via the add layer button for some reason

Additionally, GraphOperationLayerView is not disposed of correctly which means that timewidget can't remove the leftover div.

The partial solution mentioned at the beginning removes leftover diivs but all seg w/ graph layers created using the add layerbutton will share a timestamp widget which will lead to unintended behavior.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority: Critical Realm: FlyWire Flywire specific changes, should be moved to https://github.com/seung-lab/ng-extend Realm: SeungLab Specific to seung-lab/neuroglancer. Type: Bug Type: Performance
Projects
None yet
Development

No branches or pull requests

1 participant