Skip to content

test_parameter_server_cpp times out #420

@jacobperron

Description

@jacobperron

Bug report

Required Info:

  • Operating System:
    • All platforms
  • Installation type:
    • source
  • Version or commit hash:
    • master
  • DDS implementation:
  • Client library (if applicable):
    • rclcpp

Steps to reproduce issue

Here is an example failure:

https://ci.ros2.org/view/nightly/job/nightly_osx_repeated/1918/testReport/junit/(root)/projectroot/test_parameter_server_cpp__rmw_fastrtps_cpp/

Note, the "failed to set parameter" messages are expected output of the test.

I'm able to reproduce locally on Linux (note the test is flakey, but happens more often than not):

colcon test --packages-select test_rclcpp --ctest-args -R "test_parameter_server_cpp__rmw_fastrtps_cpp" --event-handlers console_direct+

Expected behavior

Tests pass.

Actual behavior

Tests fail (timeout)

Additional information

With #419 checked out, we can see that the different tests hang at different points in the execution.

With additional print statements, I've been able to determine that the timeouts occur due to the parameter client waiting forever for a service response (GetParameters.srv, SetParameters.srv, or ListParameters.srv). It looks to me that the service request always makes it to the service server (which succesfully makes the rcl call to send the response), but the response sometimes never reaches the client.

So far, I've only been focused on Fast-RTPS, which is the RMW we see failing on the nightlies.

Also, I've only seen the *_sync tests fail. I have not witnessed a test with an AsyncParametersClient fail to get a response.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions