-
Notifications
You must be signed in to change notification settings - Fork 148
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
iroh-net: netcheck actor dropped stun response channel #2647
Comments
Do we have any more details about this? E.g. is this at shutdown? Is this while it is running? Is there a full log? |
I should summarise what I know from having looked at this:
|
flub
added a commit
that referenced
this issue
Sep 6, 2024
netcheck::Client owns the actor task and when dropped it will abort the actor task. Making a struct owning a task Clone means it is easy to lose track of who should be owning a task like this. I now believe each task should have a clear supervisor/owner in charge of it. This cleans up the multiple-ownership of the netcheck::Client, which is just a small step into this direction. Later on, for e.g. #2647, more supervision will be added. But small changes are good.
2 tasks
github-merge-queue bot
pushed a commit
that referenced
this issue
Sep 9, 2024
## Description netcheck::Client owns the actor task and when dropped it will abort the actor task. Making a struct owning a task Clone means it is easy to lose track of who should be owning a task like this. I now believe each task should have a clear supervisor/owner in charge of it. This cleans up the multiple-ownership of the netcheck::Client, which is just a small step into this direction. Later on, for e.g. #2647, more supervision will be added. But small changes are good. ## Breaking Changes - `iroh_net::netcheck::Client::receive_stun_packet` is no longer available. - `iroh_net::netcheck::Client` is not longer `Clone`. ## Notes & open questions I don't want to make `Addr` public, in fact I'd like all of netcheck to be private. So I made some docs not links to avoid the warnings resulting to linking to private items from public docs. Removing `Client::receive_stun_packet` is a bit harsh. I'd like to make all of netcheck private, but the cli uses it for the doctor so I'm a bit stuck. In any case, the way that uses it does not need `receive_stun_packet`. ## Change checklist - [x] Self-review. - [x] Documentation updates following the [style guide](https://rust-lang.github.io/rfcs/1574-more-api-documentation-conventions.html#appendix-a-full-conventions-text), if relevant. - ~~[ ] Tests if relevant.~~ - ~~[ ] All breaking changes documented.~~
@flub can this be closed? |
Does it still happen to the original reporter? (I assume you are a proxy) |
I don’t know, will try to find out |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Have some reports of this happening quite often, inside docker ([email protected])
The text was updated successfully, but these errors were encountered: