[Bug] Thread Affinity on MacOSX (Apple Silicone) bug not fixed for TCP transports.
Attached is a zipfile with a minimal reproducing example.
Formerly, on OSX when a thread affinity fails to set, the logging function entered a recursive loop that would continue indefinitely. This was seemingly fixed by #5628 in the main API repo.
This makes debugging completely impossible.
In this binding repo, the bug is fixed for the default UDP transport but is not fixed for the LARGE_DATA_CONFIGURATION which uses TCP.
To Reproduce
Build
After building the bindings with
fastddsgen -python HelloWorld.idl
the CMakeLists.txt needs to be modified (unrelated bug detailed in #206 ) by adding
set(CMAKE_SHARED_LIBRARY_SUFFIX .so) under the project(HelloWorld) line.
and run
cmake .
and
make
Run
After running each participant with
python HelloWorldPublisher.py
and
python HelloWorldSubscriber.py
the logs fill with the following error:
2025-05-07 11:44:35.363 [SYSTEM Error] Problem to set affinity of thread with id [0x16e7eb000,dds.tcp.57600] to value 0. Error 'Protocol family not supported' -> Function configure_current_thread_affinity