Skip to content
This repository has been archived by the owner on Feb 4, 2021. It is now read-only.

ROS1 bridge failures on nightly packaging jobs #192

Closed
clalancette opened this issue May 8, 2019 · 11 comments · Fixed by ros2/ros1_bridge#191 or ros2/ros1_bridge#197
Closed

ROS1 bridge failures on nightly packaging jobs #192

clalancette opened this issue May 8, 2019 · 11 comments · Fixed by ros2/ros1_bridge#191 or ros2/ros1_bridge#197
Assignees

Comments

@clalancette
Copy link

The nightly linux packaging job had failures in the ROS 1 bridge: https://ci.ros2.org/view/packaging/job/packaging_linux/1457/testReport/junit/(root)/projectroot/test_topics_across_dynamic_bridge__rmw_connext_cpp/ (there are quite a few others as well). The tests seem to be timing out the tests, with some of the output being:

launch_testing.util.proc_lookup.NoMatchingProcessException: No data recorded for proc ros1_talker_ros2_listener_across_dynamic_bridge__listener-4 
@dirk-thomas
Copy link
Member

While the merge PR reduces the number of test failures there are still a few left.

@dirk-thomas dirk-thomas reopened this May 9, 2019
@clalancette
Copy link
Author

Here's the link the latest failures: https://ci.ros2.org/view/packaging/job/packaging_linux/1460/#showFailuresLink

@dirk-thomas
Copy link
Member

dirk-thomas commented May 9, 2019

I see the exact same test failures locally (using a default build without any customizations).

@clalancette
Copy link
Author

Still seeing this problem last night: https://ci.ros2.org/view/packaging/job/packaging_linux/1461/

@hidmic
Copy link

hidmic commented May 15, 2019

Resolved by ros2/ros1_bridge#194. @dirk-thomas or @clalancette, mind to close the issue? (I don't have the power)

@clalancette
Copy link
Author

@clalancette clalancette reopened this May 17, 2019
@dirk-thomas
Copy link
Member

For the record: the melt failing tests are completely different than before. So this is now a different problem.

@hidmic
Copy link

hidmic commented May 17, 2019

Yeap, that's new. I saw some of them popped up yesterday already while I was running CI for some launch testing PRs. My gut feeling is that it has something to do with ros2/ros1_bridge@43e2fca. I'll take a look.

@hidmic
Copy link

hidmic commented May 17, 2019

Alright folks, this isn't new but just another failure mode of the well known issue that Fast-RTPS has with publishers and/or subscribers that use different typesupports (i.e. for different languages) for the same topic within the same process.

Our dynamic_bridge being a ROS2 node publishes to the /rosout topic via a C typesupport publisher within rcl and then attempts to bridge it to ROS1, subscribing to the same topic via a C++ typesupport subscriber. We had not seen an instance of this because before ros2/ros1_bridge@43e2fca we were not capable of bridging /rosout from ROS2 to ROS1. Of course, none of this happens with e.g. Opensplice.

Fast-RTPS devs said a fix was somewhat tricky, so I either we apply the known workaround or we disable bridge tests for Fast-RTPS. Or help/submit a fix upstream ourselves.

@dirk-thomas
Copy link
Member

we disable bridge tests for Fast-RTPS

I don't think this is a viable option since a) we loose coverage for the default RMW impl. and b) users using the bridge would still run into this problem.

While we could look into working on a fix for upstream I think we need a workaround at least for the near term.

@hidmic
Copy link

hidmic commented May 17, 2019

Let's go with the workaround then. I'll leave a TODO for future correction.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
4 participants