[ros2] multi threaded executor with single node always makes the wall-timer hung.

asked 2019-07-08 20:24:17 -0500

kaypaklabs gravatar image

updated 2019-07-09 02:01:37 -0500

Hi,

I'm testing the single node run by multi threaded executor and I found that the wall timer(for publish) always hangs after some tick(calling callback). Ticking count is different but it's 1~3 range in average.

I'm doing this because I found often the timer didn't process callback even I let the node spin directly by rclcpp:spin (I noticed this because timer triggers callback that sends acknowledge packet to the other side and it should be returned to make sort of ping-pong communication.)

I found the possibly related issue (https://github.com/ros2/rclcpp/issues...) but It's supposed to be resolved since I'm using ros2 Dashing.

--Edit

This can be reproduced by modifying ros2 composition example source (https://github.com/ros2/examples/blob...) :mod SingleThreadedExecutor to MultiThreadedExecutor

I'm using Ubuntu 18.04 2 with 64G RAM, Intel® Core™ i9-7960X CPU @ 2.80GHz × 32 GeForce GTX 1080 Ti/PCIe/SSE2

Thank you in advance.

Antonio

edit retag flag offensive close merge delete

Comments

If you can reliably reproduce a problem which you believe to be a bug I would suggest to either comment on the issue you've already found (with something like "I just noticed that this may still be a problem on Dashing, here are my steps to reproduce") or post a new one on the issue tracker.

gvdhoorn gravatar image gvdhoorn  ( 2019-07-09 02:09:33 -0500 )edit

Yes, for my available systems(desktop and laptop with Ubuntu 18.04.2 with same ROS2 setups) this is reproduced. I just post a new issue (https://github.com/ros2/rclcpp/issues...). Thanks:)

kaypaklabs gravatar image kaypaklabs  ( 2019-07-09 02:37:28 -0500 )edit

I just post a new issue

please post a link here so we can keep things connected.

gvdhoorn gravatar image gvdhoorn  ( 2019-07-09 02:41:07 -0500 )edit

OK done:-)

kaypaklabs gravatar image kaypaklabs  ( 2019-07-09 02:44:09 -0500 )edit