ros2 / rmw_fastrtps

Implementation of the ROS Middleware (rmw) Interface using eProsima's Fast RTPS.
Apache License 2.0
157 stars 117 forks source link

add line feed for RCUTILS_SAFE_FWRITE_TO_STDERR #608

Closed fujitatomoya closed 2 years ago

fujitatomoya commented 2 years ago

related https://ci.ros2.org/job/ci_linux-aarch64/11327/testReport/projectroot.test/rclcpp/test_publisher/.

[ERROR] [1653330857.635679668] [ns.my_node.rclcpp]: Error in destruction of rcl publisher handle: Failed to delete datawriter, at /home/jenkins-agent/workspace/ci_linux-aarch64/ws/src/ros2/rmw_fastrtps/rmw_fastrtps_shared_cpp/src/publisher.cpp:48, at /home/jenkins-agent/workspace/ci_linux-aarch64/ws/src/ros2/rcl/rcl/src/rcl/publisher.c:187
Failed to delete dds publisher from participantFailed to delete participant[       OK ] TestPublisher.intra_process_publish_failures (11 ms)

Signed-off-by: Tomoya.Fujita Tomoya.Fujita@sony.com

fujitatomoya commented 2 years ago

@MiguelCompany @ivanpauno minor fix, could you check?

fujitatomoya commented 2 years ago

CI:

fujitatomoya commented 2 years ago

CI windows warnings are unrelated.

Blast545 commented 2 years ago

:man_farmer: This PR introduced a test regression in the fastrtps-dynamic nightlies jobs of the buildfarm, see: Rci__nightly-fastrtps-dynamic_ubuntu_jammy_amd64#108

Can I ask you to take a look? @fujitatomoya

``` ======================================================= FAIL: test_cli.TestROS2TopicCLI.test_topic_echo_field_not_a_member[rmw_fastrtps_dynamic_cpp] -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\ -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\ ------------------------------------------------------- Traceback (most recent call last): File "/tmp/ws/install_isolated/launch_testing/lib/python3.10/site-packages/launch_testing/markers.py", line 57, in _wrapper return func(self, *args, **kwargs) File "/tmp/ws/src/ros2/ros2cli/ros2topic/test/test_cli.py", line 607, in test_topic_echo_field_not_a_member assert topic_command.wait_for_output(functools.partial( AssertionError: assert + where = >(functools.partial(, expected_lines=["Invalid field 'not_member': 'Arrays' object has\ no attribute 'not_member'"], strict=True), timeout=10) + where > = .wait_for_output + and functools.partial(, expected_lines=["Invalid field 'not_member': 'Arrays' object has no attribute 'not_member'"], strict=True) = (, expected_lines=["Invalid field 'not_member': 'Arrays' object has no attribute 'not_member'"], strict=True) + where = functools.partial + and = .expect_output + where = launch_testing.tools ```

The error is happening here: https://github.com/ros2/ros2cli/blob/f4e5952f430e502060594d68f3a050b785fd4249/ros2topic/test/test_cli.py#L609

Besides expecting the additional '\n', it seems that the output is now capturing the remaining part of the msg. Failed to delete participant.

fujitatomoya commented 2 years ago

@Blast545 sorry, i will be looking into this. probably CI coverage was not enough.

fujitatomoya commented 2 years ago

This must be tested on CI with all dependent packages. (not only with rmwfastrtps*)