-
Notifications
You must be signed in to change notification settings - Fork 74
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
"Broken pipe" when using service defined in rust #41
Comments
I'll try to Wireshark it as soon as I can. I could have sworn I tried out all combinations by hand, but I guess it reached a point where automated tests will be necessary. I'll post some updated info as soon as I have an idea of what the issue is. |
I now think these are two different issues. I discovered that disabling IPv6 on the machine in question allows the I haven't gotten anywhere with the "broken pipe" issue. |
Oh, FYI, the broken pipe warning I've been aware of, and I should have set it up as a known issue. Nothing actually fails (as far as I know), it's just that the code tries to read until it can read no more, and it says the pipe broke once it can't. I'll have to look into it again, the logic has been there since 0.1 |
I created a new issue for IPv6, let's keep this issue about the broken pipe error. |
I renamed this issue and updated my original description to keep this issue focused on the broken pipe issue. I did notice that things seem to work. Even so, my logs are filling up with the broken pipe issue, which makes it harder to deal with other issues in my code. :) |
At the moment I'm not at a computer with ROS on it to apply fixes, but you can comment this line out to silence that: service.rs#L143 (if I'm not mistaken). |
Turns out a broken pipe is just a scary way of saying that the other party closed the connection, based on the docs. I'll create a similar patch to your PR #47, without the loop modification. |
Great, thanks. Your solution is working for me in my initial testing. |
My testing of rosrust 0.6.4 has most things working, but I'm hitting a couple issues with services. First is an error (
"Broken pipe (os error 32)"
) printed in service calls. This happens when the service is called by the client example inexamples/serviceclient
.Here is how I run the service:
Here is how I run the client:
Although the rust client example evidently successfully calls the service, I think my second issue may be related: the standard ROS tools cannot interact with the service without error: (UPDATE: This second issue is now #46.)
Or
The text was updated successfully, but these errors were encountered: