0
$\begingroup$

Rosanswers logo

We´re using a SMACH based state machine that uses service calls to retrieve data from other nodes occasionally. Sometimes (We did not find a pattern when so far) the service call fails with "Error 32 Broken Pipe" (reported as the error string when catching exceptions of the service call). The call is made within one machine (so network connectivity issues should not be a problem). The service call also does not do any "weird" things like transmitting hundreds of megabytes of data or so. Due to time constraints and code complexity (RoboCup ;) ) I cannot post code examples currently, but any ideas about the possible cause could be are appreciated. I´m especially interested in understanding if this can happen due things we do in the service server or client or if this is more of a infrastructure/TCP communication problem (and external to ROS nodes).


Originally posted by Stefan Kohlbrecher on ROS Answers with karma: 24361 on 2014-07-21

Post score: 1

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Hmmm. Tough one.

Troubleshooting from the system point of view, a "broken pipe" is very typical of network, but could be that one of the programs died, either the "talker" or the "listener".

Any PID changes suggesting if any of them died ?

Instead of using the name of the computer (supposing you are), have you tried:

use 127.0.0.1

cheat your hosts file to always point the machine to its IP

have only one IP

check system logs for errors.


Originally posted by ccapriotti with karma: 255 on 2014-07-21

This answer was ACCEPTED on the original site

Post score: 0

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.