Skip to content

[Bug] Thread Affinity on MacOSX (Apple Silicone) bug not fixed for TCP transports. #234

@KeaneWong

Description

@KeaneWong

HelloWorld.zip

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions