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

Replace "slow app timeout" with bounded channels #112

Open
neonphog opened this issue Nov 1, 2024 · 0 comments · May be fixed by #116
Open

Replace "slow app timeout" with bounded channels #112

neonphog opened this issue Nov 1, 2024 · 0 comments · May be fixed by #116
Assignees

Comments

@neonphog
Copy link
Collaborator

neonphog commented Nov 1, 2024

go pion and libdatachannel both emit events synchronously. To move into the async world without potentially filling up memory with messages we had implemented "slow app timeouts" in the go integration, but also with some tokio timeout wrappers on app-side handling functions.

A simpler solution that is more resilient to momentary cpu pauses would be to just use a bounded channel and close the connection if we cannot send to the channel. This has been implemented in the experimental libdatachannel backend.

This should also be implemented for the go pion integration, and the timeout wrappers in app logic should be removed.

@neonphog neonphog converted this from a draft issue Nov 1, 2024
@neonphog neonphog self-assigned this Nov 1, 2024
@neonphog neonphog moved this from Ready for refinement to Ready in Holochain Nov 26, 2024
@neonphog neonphog removed their assignment Nov 26, 2024
@jost-s jost-s moved this from Ready to Ready for refinement in Holochain Jan 10, 2025
@neonphog neonphog self-assigned this Jan 10, 2025
@neonphog neonphog moved this from Ready for refinement to In progress in Holochain Jan 10, 2025
@neonphog neonphog linked a pull request Jan 14, 2025 that will close this issue
@neonphog neonphog moved this from In progress to In review in Holochain Jan 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In review
Development

Successfully merging a pull request may close this issue.

1 participant