ros2 / ros2/realtime_support

Allocator test isn't working well with opensplice and fastrtps

Open
#73 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
C++
Stars
80
Forks
34
Avg merge
1d 15h
Merged PRs (30d)
1

Description

Bug report

  • Operating System:
    Ubuntu 18.04
  • Installation type:
    From source
  • Version or commit hash:
    a9f131b4ba2fcf1978037f3fcd2fdbade0f87ed7 (realtime_support)
  • DDS implementation:
    Opensplice and FastRTPS
  • Client library (if applicable):
    rclcpp
Steps to reproduce issue
  • Checkout rclcpp branch ivanpauno/fix_issue_#668 (4b23cf464dca6feb42f84c0a8cfb1afb74ac1231)
  • Rebuild rclcpp and test_tlsf
colcon build --symlink-install --packages-up-to rclcpp test_tlsf
  • Run test_tlsf
colcon test --packages-select test_tlsf
Expected behavior

The allocator_unique_ptr test fail for the three vendors.

Actual behavior

It's only failing in connext and passing in fastrtps and opensplice, when it shouldn't.

Additional information

This stack trace:

/home/ivanpauno/ros2_ws/build/tlsf_cpp/test_tlsf__rmw_opensplice_cpp : operator new(unsigned long)+0x3b

Is marked as match in check_stacktrace.
only because it contains opensplice in the test name. The same happens with fastrtps. It's not happening with connext, as is not part of the token list.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with tlsf_cpp/test/test_tlsf.cpp, especially check_stacktrace and the allocator_unique_ptr test, then reproduce with the listed colcon build and test commands. Trace how OpenSplice and FastRTPS are matched and make the test distinguish genuine allocator behavior from vendor names in the test path; done means the vendor results match the expected failures.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
testing-qa
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.