[SPIKE] Connections held beyond their liveliness
- Dominant language
- Rust
- Stars
- 74
- Forks
- 11
- PR merge metrics
- No merged PRs in 30d
Description
Extracted from https://github.com/holochain/holochain/issues/5376
I've seen some unexpected behavior around connections. Holochain's network metrics show an open connection long after the other conductor has been killed. We should review this behavior and either confirm it is expected and document, or create issues to resolve it.
There may be others, but these are the ones I noticed:
Behavior 1:
- A connection stays open indefinitely after receiving a webrtc event that the connection status changed to disconnected, failed or closed.
- This behavior didn't occur in datachannel, there appears to be inconsistency in the datachannel vs pion implementation.
- Potentially fixed by https://github.com/holochain/tx5/pull/194
Behavior 2:
After a connection is closed, the connection is almost immediately re-established with webrtc: false. This can be reproduced by:
- launch 2 conductors using pion transport
- wait for them to establish a webrtc: true connection
- kill one conductor
- wait for the live conductor to remove the connection
- after a few more seconds, the connection is re-added, with webrtc: false
AC:
- Review behaviors above and confirm if behavior is expected
- If behavior is expected, document it
- If behavior is unexpected, create issues to resolve, or resolve it if spike time permits
Contributor guide
Assessment
This issue has not been assessed yet.