ros2 node list hangs when a node is on another machine on Windows and ROS_DOMAIN_ID is used
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 262
- Forks
- 228
- Avg merge
- 23h 15m
- Merged PRs (30d)
- 12
Description
Bug report
Required Info:
- Operating System:
- Windows 10
- Installation type:
- binaries
- Version or commit hash:
- https://ci.ros2.org/view/packaging/job/packaging_windows/2478/
- DDS implementation:
- default
- Client library (if applicable):
- N/A
Steps to reproduce issue
On a linux laptop (not sure OS is important), set a ROS_DOMAIN_ID and start turtlesim_node
export ROS_DOMAIN_ID=42
ros2 run turtlesim turtlesim_node
On a Windows machine using the Binary archive, try to list the node
set ROS_DOMAIN_ID=42
ros2 node list
Expected behavior
The windows machine would list the turtlesim node.
Actual behavior
The ros2 node list command hangs forever, and does not respond to CTRL + C.
Additional information
I'm using a Windows VM on Virtual Box on Ubuntu Focal with bridged networking (machine A). The other machine (machine B) is an Ubuntu Bionic running ROS 2 nightly in a Jammy Apptainer container. I'm able to ping the other machine from the windows VM.
Running a Jammy Apptainer container on A, ros2 node list works as expected. It's only the Windows machine that can't list the node.
I could try a Humble workspace on machine B, but it's probably still similar enough.
ros2 node list returns immediately on the Windows VM when no ROS_DOMAIN_ID is set.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing ros2 node list with ROS_DOMAIN_ID=42 on Windows while the remote Linux machine runs turtlesim_node. Compare the Windows behavior with and without ROS_DOMAIN_ID, and with the container on machine A. Done means the Windows command returns promptly and lists the remote node, including responding to Ctrl+C if discovery fails.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100