[22647] Shared Memory Object Deleted When Calling system() in QNX Environment #5574
Open
1 task done
Labels
need more info
Issue that requires more info from contributor
Is there an already existing issue for this?
Expected behavior
Calling the system() function within a FastDDS-based application running on a QNX environment should execute the desired system command without interfering with FastDDS's internal mechanisms. Specifically, invoking system() should not result in the deletion or corruption of FastDDS shared memory objects.
Current behavior
When the system() function is invoked within a FastDDS-based application on a QNX environment, it unexpectedly leads to the deletion of a FastDDS shared memory object. This results in the failure of DDS operations, such as the inability of subscribers to receive published data.
The issue persists even when using native FastDDS examples(Fast-DDS-2.12.2/examples/cpp/dds/HelloWorldExampleSharedMem) with minimal modifications。
Steps to reproduce
Operating System: QNX localhost 7.1.0S aarch64le
FastDDS Version: 2.12.2
Modify the (Fast-DDS-2.12.2/examples/cpp/dds/HelloWorldExampleSharedMem/HelloWorldPublisher.cpp)Code:
Compile
Run the examples publisher :
./examples/cpp/dds/HelloWorldExampleSharedMem/bin/DDSHelloWorldExampleSharedMem publisher 100 1000
Observe the Behavior : From the output logs, it can be seen that after the publisher has executed several cycles, a fastrtps_xxxxx shared memory object in /dev/shmem/ disappears.
Fast DDS version/commit
v2.12.2
Platform/Architecture
Other. Please specify in Additional context section.
Transport layer
Default configuration, UDPv4 & SHM
Additional context
No response
XML configuration file
No response
Relevant log output
Network traffic capture
No response
The text was updated successfully, but these errors were encountered: