Skip to content
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

ROS2 humble getParams #972

Open
Ewoodss opened this issue Nov 4, 2024 · 1 comment · May be fixed by #978
Open

ROS2 humble getParams #972

Ewoodss opened this issue Nov 4, 2024 · 1 comment · May be fixed by #978
Labels

Comments

@Ewoodss
Copy link

Ewoodss commented Nov 4, 2024

Description
Calling the getParams service, hangs and crashes rosapi node,

  • Library Version: ros-humble-rosbridge-server/jammy,now 2.0.0-1jammy.20241008.092533 amd64
  • ROS Version: humble
  • Platform / OS: Ubuntu 22.04

Steps To Reproduce

ros2 launch rosbridge_server rosbridge_websocket_launch.xml
ros2 service call /rosapi/get_param_names rosapi_msgs/srv/GetParamNames {}

Expected Behavior
A msg return with all available params

Actual Behavior
the rosapi crashes and the calling terminal hangs

[rosbridge_websocket-1] [INFO] [1730726532.349308897] [rosbridge_websocket]: Rosbridge WebSocket server started on port 9090
[rosapi_node-2] Traceback (most recent call last):
[rosapi_node-2]   File "/opt/ros/humble/lib/rosapi/rosapi_node", line 329, in <module>
[rosapi_node-2]     main()
[rosapi_node-2]   File "/opt/ros/humble/lib/rosapi/rosapi_node", line 321, in main
[rosapi_node-2]     rclpy.spin(node)
[rosapi_node-2]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/__init__.py", line 222, in spin
[rosapi_node-2]     executor.spin_once()
[rosapi_node-2]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/executors.py", line 739, in spin_once
[rosapi_node-2]     self._spin_once_impl(timeout_sec)
[rosapi_node-2]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/executors.py", line 736, in _spin_once_impl
[rosapi_node-2]     raise handler.exception()
[rosapi_node-2]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/task.py", line 239, in __call__
[rosapi_node-2]     self._handler.send(None)
[rosapi_node-2]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/executors.py", line 437, in handler
[rosapi_node-2]     await call_coroutine(entity, arg)
[rosapi_node-2]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/executors.py", line 391, in _execute_service
[rosapi_node-2]     response = await await_or_execute(srv.callback, request, srv.srv_type.Response())
[rosapi_node-2]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/executors.py", line 107, in await_or_execute
[rosapi_node-2]     return callback(*args)
[rosapi_node-2]   File "/opt/ros/humble/lib/rosapi/rosapi_node", line 281, in get_param_names
[rosapi_node-2]     response.names = params.get_param_names(self.globs.params)
[rosapi_node-2]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rosapi/params.py", line 201, in get_param_names
[rosapi_node-2]     params.extend(get_node_param_names(node, params_glob))
[rosapi_node-2]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rosapi/params.py", line 221, in get_node_param_names
[rosapi_node-2]     return _get_param_names(node_name)
[rosapi_node-2]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rosapi/params.py", line 235, in _get_param_names
[rosapi_node-2]     raise RuntimeError("Wait for list_parameters service timed out")
[rosapi_node-2] RuntimeError: Wait for list_parameters service timed out
[ERROR] [rosapi_node-2]: process has died [pid 538896, exit code 1, cmd '/opt/ros/humble/lib/rosapi/rosapi_node --ros-args -r __node:=rosapi --params-file /tmp/launch_params_ci7xodun --params-file /tmp/launch_params_677akuqu --params-file /tmp/launch_params_w_m4x5yb'].
@Ewoodss Ewoodss added the bug label Nov 4, 2024
@Mehsias
Copy link

Mehsias commented Nov 25, 2024

Same issue on Jazzy.

I increased the timeout in params.py but it still crashes.

Mehsias added a commit to Mehsias/rosbridge_suite that referenced this issue Dec 5, 2024
- Add check for node's fully qualified name to prevent deadlocks
- Add 2.0s timeout to spin_until_future_complete
- Fix crashes when retrieving parameters via Roslibjs

Fixes RobotWebTools#972
Mehsias added a commit to Mehsias/roslibjs that referenced this issue Dec 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants