RoboStack / RoboStack/ros-jazzy
Fast DDS Thread Affinity Errors on macOS Sequoia (M3 Apple Silicon)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 44
- Forks
- 55
- Avg merge
- 8h 57m
- Merged PRs (30d)
- 14
Description
Solution to issue cannot be found in the documentation.
- I checked the documentation.
Issue
I'm getting repeated error messages when running RoboStack on macOS Tahoe with M3 Apple Silicon.
Setup:
- Following the installation instructions from https://robostack.github.io/GettingStarted.html#__tabbed_2_3
- ROS 2 Jazzy environment
- with
export RMW_IMPLEMENTATION=rmw_fastrtps_cpp- Cyclone DDS and Zenoh don't have this issue
Error:
Every time I run a ROS command (e.g., ros2 topic list), I get multiple [SYSTEM Error] messages about thread affinity:
Problem to set affinity of thread with id [0x16d1f7000,dds.log] to value 0.
Error 'Protocol family not supported' -> Function configure_current_thread_affinity
This repeats for various DDS threads (dds.shm.wdog, dds.ev.0, dds.udp.*, etc.)
Current Behavior:
- The errors appear at the start of every ROS executable that uses DDS
- Despite the errors, basic functionality seems to work (can run examples, subscribe to topics, etc.)
Extra:
When I tried rebuilding ROS/fastrtps/fastcdr from scratch I got to suppress these warnings by setting up some cmake flags when building...
--cmake-args \
-DLOG_NO_INFO=ON \
-DLOG_NO_WARNING=ON \
-DLOG_NO_ERROR=ON \
-DINTERNAL_DEBUG=OFF \
It was not a fix, it just hid the error messages
Installed packages
Name Version Build Channel
──────────────────────────────────────────────────────────────────────────────────────────────────────────
ros-jazzy-desktop 0.11.0 np126py312h9e87179_10 robostack-jazzy
.
.
.
Environment info
libmamba version : 2.3.3
mamba version : 2.3.3
curl version : libcurl/8.17.0 OpenSSL/3.5.4 zlib/1.3.1 zstd/1.5.7 libssh2/1.11.1 nghttp2/1.67.0 mit-krb5/1.21.3
libarchive version : libarchive 3.8.1 zlib/1.3.1 liblzma/5.8.1 bz2lib/1.0.8 liblz4/1.10.0 libzstd/1.5.7 liblzo2/2.10 CommonCrypto/system libb2/bundled
envs directories : /Users/chello/.local/share/mamba/envs
package cache : /Users/chello/.local/share/mamba/pkgs
/Users/chello/.mamba/pkgs
environment : ros_jazzy (active)
env location : /Users/chello/.local/share/mamba/envs/ros_jazzy
user config files : /Users/chello/.mambarc
populated config files : /Users/chello/.condarc
virtual packages : __unix=0=0
__osx=26.0.1=0
__archspec=1=arm64
channels : https://conda.anaconda.org/conda-forge/noarch
https://conda.anaconda.org/conda-forge/osx-arm64
base environment : /Users/chello/.local/share/mamba
platform : osx-arm64
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the RoboStack GettingStarted installation instructions and the ROS 2 Jazzy environment using rmw_fastrtps_cpp; reproduce the issue with ros2 topic list on macOS arm64. Compare the Fast DDS thread-affinity errors with Cyclone DDS and Zenoh, and review the cited CMake flags. Done means identifying a real fix rather than merely suppressing the messages.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cmake, macos
- Domain
- distributed-systems, networking, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100