-
Notifications
You must be signed in to change notification settings - Fork 167
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
sequence number of service-request is not initialized to one in a unit test on ROS 2 build farm for Rolling release #892
Comments
i think i am the one who is confused. so you like to uncomment those skipped tests to be available but facing test failure as following.
my bad...: 😢 anyway i confirmed that this problem still happens. AFAIK, sequence number is not managed by rcl but rmw_implementation. |
I think that this is because of rmw_cyclonedds static local variable used, and i think this is correct for implementation to cover the requirement. (saying this is not a bug.) this means that as long as the test uses the same process space, sequence id will not be reset even if
in rmw header, it tells us at least unique identification number but it does not specify this is mapped to after all, i do not think this is bug for either rcl or rmw. test program should be adjusted based on unique identification provided via |
@fujitatomoya. No this is an issue of rcl, because the sequence number is not initialized to one after calling |
i think i am the one who is confused. so you like to uncomment those skipped tests to be available but facing test failure as following. Yes, we faced these errors, thats why I commented out the check for the sequence-id. Interestingly, it only fails at the ROS 2 build farm for Rolling. It works fine for Dashing, Foxy, Rolling with Github Action and Dashing, Foxy on ROS 2 build farm. |
"after all, i do not think this is bug for either rcl or rmw. test program should be adjusted based on unique identification provided via rcl_send_request." Okay, fine for me. We will not check for sequence-number to be a particular value after calling |
i think we can close this issue, feel free to reopen. |
Bug report
Required Info:
Steps to reproduce issue
Running the unit tests of ros2/rclc on ROS 2 build farm for Rolling release fails, because the sequence number
for a service-request ist not initialized to 1:
https://github.com/ros2/rclc/blob/0bbab9694760f5685413960e93b122c2980eb36e/rclc/test/rclc/test_executor.cpp#L1881
Expected behavior
returns true
Actual behavior
Output of ros2/rclc unit test - build job on ROS 2 build farm, Rolling:
https://build.ros2.org/job/Rpr__rclc__ubuntu_focal_amd64/71/testReport/junit/rclc/TestDefaultExecutor/executor_test_service/
Also all other unit tests, in which the sequence number is checked, fail:
https://build.ros2.org/job/Rpr__rclc__ubuntu_focal_amd64/71/#showFailuresLink
Additional information
See also our issue at ros2/rclc: ros2/rclc#49
As a work-around, I commented out this check for all instances, where we check the sequence-number of the service-request:
ros2/rclc@28a1224#diff-13237951e52bc2adab028d9061ad1832272d2e3d80a45bc3fce707c79e5a8d90R1881
The unit test works for Github Action CI-job for Dashing, Foxy, Rolling:
e.g.: https://github.com/ros2/rclc/actions/runs/574004890
The unit test works for ROS 2 build farm CI-job for Dashing and Foxy:
Dashing: https://build.ros2.org/job/Dpr__rclc__ubuntu_bionic_amd64/76/
Foxy: https://build.ros2.org/job/Fpr__rclc__ubuntu_focal_amd64/71/
Rolling (fails): https://build.ros2.org/job/Rpr__rclc__ubuntu_focal_amd64/71/#showFailuresLink
The text was updated successfully, but these errors were encountered: