-
Notifications
You must be signed in to change notification settings - Fork 341
unix sockets don't work since the 0.99.6 release #248
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
Comments
Git bisect points to d25dae5 |
Hey @stjepang, @yoshuawuyts I hope you don't mind me taking a stab at this. I've debugged this issue (thanks @dvc94ch for the code that reproduces it), and I think I've found the cause of the bug, but my solution for it is short and hacky, so I need some guidance from you guys. I'll send a PR so you can take a look. Also, I would like to add a bigger integration test that would cover this issue for the future, if you are okay with that. |
UDS listener was hanging because the accept method would return `Poll::Pending` without registering the task to be awoken in the case when underlying unix listener returns a WouldBlock that gets converted to None. This is a hacky fix for this case. Should fix async-rs#248
UDS listener was hanging because the accept method would return `Poll::Pending` without registering the task to be awoken in the case when underlying unix listener returns a WouldBlock that gets converted to None. This is a hacky fix for this case. Should fix async-rs#248
This one should reproduce async-rs#248 bug to prevent further regressions.
This one should reproduce async-rs#248 bug to prevent further regressions.
* Fix uds listener hanging on accept UDS listener was hanging because the accept method would return `Poll::Pending` without registering the task to be awoken in the case when underlying unix listener returns a WouldBlock that gets converted to None. This is a hacky fix for this case. Should fix #248 * Test simulating uds ping-pong server/client This one should reproduce #248 bug to prevent further regressions. * Code review fixes
Expected behaviour:
Actual behaviour:
server.rs
client.rs
The text was updated successfully, but these errors were encountered: