-
-
Notifications
You must be signed in to change notification settings - Fork 6
Description
Short summary
wire and agents are not being removed fully where deleted
Severity
major
Platform
macOS
Hardware
alpha
Version
2.2.1
Component
EigenD
Agent
None
Steps to reproduce
unload a setup and/or delete again
you will see in logs proxy_down repeatedly for certain agents / wires repeatedly appear.
Logs / additional info
currently analysis shows theres a fundamental reference counting issue when unloading setups / removing wires/agents - its been like this for a long time. I suspect its why changing setups is slow, and new setup wont performance as well (cpu/memory waste)
it could also contribute to GC crashes .e.g if an agent is removed, a wire to it is zombied (of vice versa) leaving a dangling reference.
given this does not happen on every agent/wire - its likely this is either timing or sequence related.
there is some pre-existing defensive coding in place, which attempts to stop crashes, and this is a valid 'stop gap'
this bug is tracking the more long term solution which is likely post 3.0 release, as it's likely to have wide reaching consequences, and potentially trigger other (serious) issues - since some objects that are zombied, but kill other things IF can get them removd.
idea is this bug, means I can close other bugs as 'solved' when working around - without fixing underlying cause .which is this bug ,which remains open. I'll try to reference whilst doing so.
note: false attribution is possible as we dont 100% know cause and effect.