ROS2 galacitc: Failed to find a free participant index for domain
I am using ros2 galactic on Ubuntu 20.04 and when running more node I get error, whatever I run I get the same error:
1666768083.909628 [0] ros2: selected interface "lo" is not multicast-capable: disabling multicast
1666768083.909821 [0] ros2: Failed to find a free participant index for domain 0
[ERROR] [1666768083.909895118] [rmw_cyclonedds_cpp]: rmw_create_node: failed to create domain, error Error
>>> [rcutils|error_handling.c:108] rcutils_set_error_state()
This error state is being overwritten:
'error not set, at /tmp/binarydeb/ros-galactic-rcl-3.1.3/src/rcl/node.c:261'
with this new error message:
'rcl node's rmw handle is invalid, at /tmp/binarydeb/ros-galactic-rcl-3.1.3/src/rcl/node.c:413'
rcutils_reset_error() should be called after error handling to avoid this.
<<<
[ERROR] [1666768083.909944183] [rcl]: Failed to fini publisher for node: 1
error creating node: rcl node's rmw handle is invalid, at /tmp/binarydeb/ros-galactic-rcl-3.1.3/src/rcl/node.c:413
I think that it allows me only to run some number of nodes, but I don't find any file to change that. Can someone Help me?
Asked by urban.kenda on 2022-10-31 02:43:02 UTC
Answers
I had the same problem. It was related with custom configuratoin of the cyclonedds file. I needed to add a larger number of participants in the cyclonedds configuration file. Have a look to the following and the MaxAutoParticipantIndex parameter:
<CycloneDDS>
<Domain>
<General>
<AllowMulticast>false</AllowMulticast>
</General>
<Discovery>
<ParticipantIndex>auto</ParticipantIndex>
<MaxAutoParticipantIndex>1000</MaxAutoParticipantIndex>
</Discovery>
</Domain>
</CycloneDDS>
Asked by Pablo IƱigo Blasco on 2023-06-12 04:00:21 UTC
Comments