Skip to content

ComposableNodeContainer crashes when unloading NitrosNode with ros2 component unload. #56

@Tuntenfisch

Description

@Tuntenfisch

Hello,

I need to dynamically load and unload NitrosNode instances in my multi-agent software stack. Specifically, I'm trying to load/unload nvidia::isaac_ros::h264_decoder::DecoderNode instances to decode compressed H.264 image data shared by other agents based on the presence/absence of these agent during runtime. To achieve this, I'm leveraging the ros2 component load/unload service interface. I noticed that when I unload an nvidia::isaac_ros::h264_decoder::DecoderNode the entire container crashes.

MWE:

example.launch.py
import launch
from launch_ros.actions import ComposableNodeContainer
from launch_ros.descriptions import ComposableNode


def generate_launch_description():
    example_container = ComposableNodeContainer(
        package="rclcpp_components",
        executable="component_container",
        name="example_container",
        namespace="example_namespace",
        composable_node_descriptions=(
            ComposableNode(
                package="isaac_ros_h264_decoder",
                plugin="nvidia::isaac_ros::h264_decoder::DecoderNode",
            ),
            ComposableNode(
                package="demo_nodes_cpp",
                plugin="demo_nodes_cpp::Talker",
            ),
        ),
        output="screen",
    )

    return launch.LaunchDescription([example_container])

When I launch the above launch file and subsequently try to unload the nvidia::isaac_ros::h264_decoder::DecoderNode with ros2 component unload /example_namespace/example_container 1, I get the following console output:

console output for single threaded component container
constantin@Laptop-CB:/workspaces/experimental_area/colcon_ws$ ros2 launch sfg_experimental_area example.launch.py 
[INFO] [launch]: All log files can be found below /home/constantin/.ros/log/2025-04-24-10-40-43-922251-Laptop-CB-78854
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [component_container-1]: process started with pid [78866]
[component_container-1] [INFO] [1745484044.214638260] [example_namespace.example_container]: Load Library: /opt/ros/humble/lib/libdecoder_node.so
[component_container-1] [INFO] [1745484044.224797029] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<nvidia::isaac_ros::h264_decoder::DecoderNode>
[component_container-1] [INFO] [1745484044.224816699] [example_namespace.example_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<nvidia::isaac_ros::h264_decoder::DecoderNode>
[component_container-1] [INFO] [1745484044.370219755] [NitrosNode]: [NitrosNode] Initializing NitrosNode
[component_container-1] [INFO] [1745484044.370361594] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/std/libgxf_std.so
[component_container-1] [INFO] [1745484044.370875998] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_gxf_helpers.so
[component_container-1] [INFO] [1745484044.372162986] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_sight.so
[component_container-1] [INFO] [1745484044.373519589] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_atlas.so
[component_container-1] 2025-04-24 10:40:44.377 WARN  gxf/std/program.cpp@538: No GXF scheduler specified.
[component_container-1] [INFO] [1745484044.377278677] [NitrosNode]: [NitrosNode] Starting NitrosNode
[component_container-1] [INFO] [1745484044.378902133] [NitrosNode]: [NitrosNode] Loading extensions
[component_container-1] [INFO] [1745484044.378932143] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/multimedia/libgxf_multimedia.so
[component_container-1] [INFO] [1745484044.379987270] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_message_compositor.so
[component_container-1] [INFO] [1745484044.380152908] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/cuda/libgxf_cuda.so
[component_container-1] [INFO] [1745484044.381269680] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/serialization/libgxf_serialization.so
[component_container-1] [INFO] [1745484044.382710594] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_tensorops.so
[component_container-1] [INFO] [1745484044.384540365] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/codec/libgxf_video_decoder_extension.so
[component_container-1] [INFO] [1745484044.390871622] [NitrosNode]: [NitrosNode] Loading graph to the optimizer
[component_container-1] [INFO] [1745484044.391748899] [NitrosNode]: [NitrosNode] Running optimization
[component_container-1] [INFO] [1745484044.395374553] [NitrosNode]: [NitrosNode] Obtaining graph IO group info from the optimizer
[component_container-1] [INFO] [1745484044.397174719] [NitrosNode]: [NitrosNode] Starting negotiation...
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/NitrosNode' in container '/example_namespace/example_container'
[component_container-1] [INFO] [1745484044.398981334] [example_namespace.example_container]: Load Library: /opt/ros/humble/lib/libtopics_library.so
[component_container-1] [INFO] [1745484044.399528577] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::ContentFilteringPublisher>
[component_container-1] [INFO] [1745484044.399535304] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::ContentFilteringSubscriber>
[component_container-1] [INFO] [1745484044.399538385] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::Listener>
[component_container-1] [INFO] [1745484044.399540740] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::ListenerBestEffort>
[component_container-1] [INFO] [1745484044.399542849] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::LoanedMessageTalker>
[component_container-1] [INFO] [1745484044.399544695] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::SerializedMessageListener>
[component_container-1] [INFO] [1745484044.399546564] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::SerializedMessageTalker>
[component_container-1] [INFO] [1745484044.399548463] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::Talker>
[component_container-1] [INFO] [1745484044.399550574] [example_namespace.example_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::Talker>
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/talker' in container '/example_namespace/example_container'
[component_container-1] [INFO] [1745484045.397528034] [NitrosNode]: [NitrosNode] Starting post negotiation setup
[component_container-1] [INFO] [1745484045.397577452] [NitrosNode]: [NitrosNode] Getting data format negotiation results
[component_container-1] [INFO] [1745484045.397589319] [NitrosNode]: [NitrosSubscriber] Negotiation ended with no results
[component_container-1] [INFO] [1745484045.397597067] [NitrosNode]: [NitrosSubscriber] Use the compatible subscriber: topic_name="/image_compressed", data_format="nitros_compressed_image"
[component_container-1] [INFO] [1745484045.397653279] [NitrosNode]: [NitrosPublisher] Negotiation ended with no results
[component_container-1] [INFO] [1745484045.397661595] [NitrosNode]: [NitrosPublisher] Use only the compatible publisher: topic_name="/image_uncompressed", data_format="nitros_image_rgb8"
[component_container-1] [INFO] [1745484045.397771133] [NitrosNode]: [NitrosNode] Exporting the final graph based on the negotiation results
[component_container-1] [INFO] [1745484045.400185211] [NitrosNode]: [NitrosNode] Wrote the final top level YAML graph to "/tmp/isaac_ros_nitros/graphs/RHRHHSGGLK/RHRHHSGGLK.yaml"
[component_container-1] [INFO] [1745484045.400200070] [NitrosNode]: [DecoderNode] preLoadGraphCallback().
[component_container-1] [INFO] [1745484045.400210557] [NitrosNode]: [NitrosNode] Loading application
[component_container-1] [INFO] [1745484045.401571985] [NitrosNode]: [DecoderNode] postLoadGraphCallback().
[component_container-1] [INFO] [1745484045.401615510] [NitrosNode]: [NitrosNode] Initializing and running GXF graph
[component_container-1] [INFO] [1745484045.591538869] [NitrosNode]: [NitrosNode] Node was started
[component_container-1] [INFO] [1745484045.591755147] [talker]: Publishing: 'Hello World: 1'
[component_container-1] [INFO] [1745484046.400710812] [talker]: Publishing: 'Hello World: 2'
[component_container-1] [INFO] [1745484047.400775064] [talker]: Publishing: 'Hello World: 3'
[component_container-1] [INFO] [1745484048.400749492] [talker]: Publishing: 'Hello World: 4'
[component_container-1] [INFO] [1745484049.400815156] [talker]: Publishing: 'Hello World: 5'
[component_container-1] [INFO] [1745484050.400844608] [talker]: Publishing: 'Hello World: 6'
[component_container-1] [INFO] [1745484051.400798813] [talker]: Publishing: 'Hello World: 7'
[component_container-1] [INFO] [1745484052.400906021] [talker]: Publishing: 'Hello World: 8'
[component_container-1] [INFO] [1745484053.400829905] [talker]: Publishing: 'Hello World: 9'
[component_container-1] [INFO] [1745484054.400758481] [talker]: Publishing: 'Hello World: 10'
[component_container-1] [INFO] [1745484055.400899620] [talker]: Publishing: 'Hello World: 11'
[component_container-1] [INFO] [1745484056.400776694] [talker]: Publishing: 'Hello World: 12'
[component_container-1] [INFO] [1745484057.400883161] [talker]: Publishing: 'Hello World: 13'
[component_container-1] [INFO] [1745484058.400916632] [talker]: Publishing: 'Hello World: 14'
[component_container-1] [INFO] [1745484059.400865788] [talker]: Publishing: 'Hello World: 15'
[component_container-1] [INFO] [1745484060.400911203] [talker]: Publishing: 'Hello World: 16'
[component_container-1] [INFO] [1745484069.972032900] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::ContentFilteringPublisher>
[component_container-1] [INFO] [1745484069.972062742] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::ContentFilteringSubscriber>
[component_container-1] [INFO] [1745484069.972065335] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::Listener>
[component_container-1] [INFO] [1745484069.972067504] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::ListenerBestEffort>
[component_container-1] [INFO] [1745484069.972069510] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::LoanedMessageTalker>
[component_container-1] [INFO] [1745484069.972071502] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::SerializedMessageListener>
[component_container-1] [INFO] [1745484069.972074091] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::SerializedMessageTalker>
[component_container-1] [INFO] [1745484069.972076263] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::Talker>
[component_container-1] [INFO] [1745484069.972078209] [example_namespace.example_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::Talker>
[component_container-1] [INFO] [1745484070.973251870] [talker]: Publishing: 'Hello World: 1'
[component_container-1] [INFO] [1745484071.973378935] [talker]: Publishing: 'Hello World: 2'
[component_container-1] [INFO] [1745484072.973263418] [talker]: Publishing: 'Hello World: 3'
[component_container-1] [INFO] [1745484073.973349295] [talker]: Publishing: 'Hello World: 4'
[component_container-1] [INFO] [1745484074.749795506] [NitrosNode]: [NitrosNode] Terminating the running application
[component_container-1] [INFO] [1745484074.749818768] [NitrosNode]: [NitrosContext] Interrupting GXF...
[component_container-1] [INFO] [1745484074.750057681] [NitrosNode]: [NitrosContext] Waiting on GXF...
[component_container-1] [INFO] [1745484074.750063420] [NitrosNode]: [NitrosContext] Deinitializing...
[component_container-1] |==================================================================================================================================================================|
[component_container-1] |                                           Job Statistics Report (regular)                                                                                        |
[component_container-1] |==================================================================================================================================================================|
[component_container-1] | Name                                               |   Count | Time (Median - 90% - Max) [ms] | Load (%) | Exec(ms) | Variation (Median - 90% - Max) [ns]        |
[component_container-1] |------------------------------------------------------------------------------------------------------------------------------------------------------------------|
[component_container-1] |==================================================================================================================================================================|
[component_container-1] |==================================================================================================================================================================|
[component_container-1] |                                           Entity Statistics Report (regular)                                                                                     |
[component_container-1] |==================================================================================================================================================================|
[component_container-1] | Entity Name             | Entity State             |   Count | Time (Median - 90% - Max) [ms]                                                                    |
[component_container-1] |------------------------------------------------------------------------------------------------------------------------------------------------------------------|
[component_container-1] |==================================================================================================================================================================|
[component_container-1] [INFO] [1745484074.752878006] [NitrosNode]: [NitrosContext] Destroying context
[component_container-1] [INFO] [1745484074.752920305] [NitrosNode]: [NitrosNode] Application termination done
[component_container-1] terminate called after throwing an instance of 'rclcpp::exceptions::RCLError'
[component_container-1]   what():  failed to add guard condition to wait set: guard condition implementation is invalid, at ./src/rcl/guard_condition.c:172, at ./src/rcl/wait.c:460
[ERROR] [component_container-1]: process has died [pid 78866, exit code -6, cmd '/opt/ros/humble/lib/rclcpp_components/component_container --ros-args -r __node:=example_container -r __ns:=/example_namespace'].

When, instead of a single threaded container I use a multi threaded container (i.e. component_container_mt), and repeat the launching/unloading procedure, I get another crash with the following output:

console output for multi threaded component container
constantin@Laptop-CB:/workspaces/experimental_area/colcon_ws$ ros2 launch sfg_experimental_area example.launch.py 
[INFO] [launch]: All log files can be found below /home/constantin/.ros/log/2025-04-24-10-51-35-987689-Laptop-CB-92872
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [component_container_mt-1]: process started with pid [92884]
[component_container_mt-1] [INFO] [1745484696.280849121] [example_namespace.example_container]: Load Library: /opt/ros/humble/lib/libdecoder_node.so
[component_container_mt-1] [INFO] [1745484696.290371913] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<nvidia::isaac_ros::h264_decoder::DecoderNode>
[component_container_mt-1] [INFO] [1745484696.290388219] [example_namespace.example_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<nvidia::isaac_ros::h264_decoder::DecoderNode>
[component_container_mt-1] [INFO] [1745484696.449078895] [NitrosNode]: [NitrosNode] Initializing NitrosNode
[component_container_mt-1] [INFO] [1745484696.449223289] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/std/libgxf_std.so
[component_container_mt-1] [INFO] [1745484696.449782402] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_gxf_helpers.so
[component_container_mt-1] [INFO] [1745484696.450943426] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_sight.so
[component_container_mt-1] [INFO] [1745484696.452376245] [NitrosContext]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_atlas.so
[component_container_mt-1] 2025-04-24 10:51:36.456 WARN  gxf/std/program.cpp@538: No GXF scheduler specified.
[component_container_mt-1] [INFO] [1745484696.456112915] [NitrosNode]: [NitrosNode] Starting NitrosNode
[component_container_mt-1] [INFO] [1745484696.457662526] [NitrosNode]: [NitrosNode] Loading extensions
[component_container_mt-1] [INFO] [1745484696.457702455] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/multimedia/libgxf_multimedia.so
[component_container_mt-1] [INFO] [1745484696.458652599] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_message_compositor.so
[component_container_mt-1] [INFO] [1745484696.458816529] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/cuda/libgxf_cuda.so
[component_container_mt-1] [INFO] [1745484696.459877667] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/serialization/libgxf_serialization.so
[component_container_mt-1] [INFO] [1745484696.461244044] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/libgxf_isaac_tensorops.so
[component_container_mt-1] [INFO] [1745484696.462930886] [NitrosNode]: [NitrosContext] Loading extension: gxf/lib/codec/libgxf_video_decoder_extension.so
[component_container_mt-1] [INFO] [1745484696.472627808] [NitrosNode]: [NitrosNode] Loading graph to the optimizer
[component_container_mt-1] [INFO] [1745484696.473507964] [NitrosNode]: [NitrosNode] Running optimization
[component_container_mt-1] [INFO] [1745484696.477078385] [NitrosNode]: [NitrosNode] Obtaining graph IO group info from the optimizer
[component_container_mt-1] [INFO] [1745484696.479096932] [NitrosNode]: [NitrosNode] Starting negotiation...
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/NitrosNode' in container '/example_namespace/example_container'
[component_container_mt-1] [INFO] [1745484696.480662664] [example_namespace.example_container]: Load Library: /opt/ros/humble/lib/libtopics_library.so
[component_container_mt-1] [INFO] [1745484696.481424248] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::ContentFilteringPublisher>
[component_container_mt-1] [INFO] [1745484696.481438333] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::ContentFilteringSubscriber>
[component_container_mt-1] [INFO] [1745484696.481456790] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::Listener>
[component_container_mt-1] [INFO] [1745484696.481470123] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::ListenerBestEffort>
[component_container_mt-1] [INFO] [1745484696.481474992] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::LoanedMessageTalker>
[component_container_mt-1] [INFO] [1745484696.481477134] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::SerializedMessageListener>
[component_container_mt-1] [INFO] [1745484696.481479144] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::SerializedMessageTalker>
[component_container_mt-1] [INFO] [1745484696.481481307] [example_namespace.example_container]: Found class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::Talker>
[component_container_mt-1] [INFO] [1745484696.481483478] [example_namespace.example_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<demo_nodes_cpp::Talker>
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/talker' in container '/example_namespace/example_container'
[component_container_mt-1] [INFO] [1745484697.479482374] [NitrosNode]: [NitrosNode] Starting post negotiation setup
[component_container_mt-1] [INFO] [1745484697.479530673] [NitrosNode]: [NitrosNode] Getting data format negotiation results
[component_container_mt-1] [INFO] [1745484697.479543575] [NitrosNode]: [NitrosSubscriber] Negotiation ended with no results
[component_container_mt-1] [INFO] [1745484697.479550165] [NitrosNode]: [NitrosSubscriber] Use the compatible subscriber: topic_name="/image_compressed", data_format="nitros_compressed_image"
[component_container_mt-1] [INFO] [1745484697.479602582] [NitrosNode]: [NitrosPublisher] Negotiation ended with no results
[component_container_mt-1] [INFO] [1745484697.479611692] [NitrosNode]: [NitrosPublisher] Use only the compatible publisher: topic_name="/image_uncompressed", data_format="nitros_image_rgb8"
[component_container_mt-1] [INFO] [1745484697.479721849] [NitrosNode]: [NitrosNode] Exporting the final graph based on the negotiation results
[component_container_mt-1] [INFO] [1745484697.481641744] [NitrosNode]: [NitrosNode] Wrote the final top level YAML graph to "/tmp/isaac_ros_nitros/graphs/GDDSXCCCQX/GDDSXCCCQX.yaml"
[component_container_mt-1] [INFO] [1745484697.481679564] [NitrosNode]: [DecoderNode] preLoadGraphCallback().
[component_container_mt-1] [INFO] [1745484697.481682235] [NitrosNode]: [NitrosNode] Loading application
[component_container_mt-1] [INFO] [1745484697.482504006] [NitrosNode]: [DecoderNode] postLoadGraphCallback().
[component_container_mt-1] [INFO] [1745484697.482511712] [NitrosNode]: [NitrosNode] Initializing and running GXF graph
[component_container_mt-1] [INFO] [1745484697.483078543] [talker]: Publishing: 'Hello World: 1'
[component_container_mt-1] [INFO] [1745484697.675944291] [NitrosNode]: [NitrosNode] Node was started
[component_container_mt-1] [INFO] [1745484698.483150433] [talker]: Publishing: 'Hello World: 2'
[component_container_mt-1] [INFO] [1745484699.483088456] [talker]: Publishing: 'Hello World: 3'
[component_container_mt-1] [INFO] [1745484700.483216647] [talker]: Publishing: 'Hello World: 4'
[component_container_mt-1] [INFO] [1745484701.483294328] [talker]: Publishing: 'Hello World: 5'
[component_container_mt-1] [INFO] [1745484702.483075165] [talker]: Publishing: 'Hello World: 6'
[component_container_mt-1] [INFO] [1745484703.483141320] [talker]: Publishing: 'Hello World: 7'
[component_container_mt-1] [INFO] [1745484704.483096430] [talker]: Publishing: 'Hello World: 8'
[component_container_mt-1] [INFO] [1745484705.483185364] [talker]: Publishing: 'Hello World: 9'
[component_container_mt-1] [INFO] [1745484706.483289123] [talker]: Publishing: 'Hello World: 10'
[component_container_mt-1] [INFO] [1745484707.483297641] [talker]: Publishing: 'Hello World: 11'
[component_container_mt-1] [INFO] [1745484708.483148027] [talker]: Publishing: 'Hello World: 12'
[component_container_mt-1] [INFO] [1745484709.483219859] [talker]: Publishing: 'Hello World: 13'
[component_container_mt-1] [INFO] [1745484710.483286500] [talker]: Publishing: 'Hello World: 14'
[component_container_mt-1] [INFO] [1745484711.157555502] [NitrosNode]: [NitrosNode] Terminating the running application
[component_container_mt-1] [INFO] [1745484711.157609201] [NitrosNode]: [NitrosContext] Interrupting GXF...
[component_container_mt-1] [INFO] [1745484711.157880500] [NitrosNode]: [NitrosContext] Waiting on GXF...
[component_container_mt-1] [INFO] [1745484711.157918837] [NitrosNode]: [NitrosContext] Deinitializing...
[component_container_mt-1] |==================================================================================================================================================================|
[component_container_mt-1] |                                           Job Statistics Report (regular)                                                                                        |
[component_container_mt-1] |==================================================================================================================================================================|
[component_container_mt-1] | Name                                               |   Count | Time (Median - 90% - Max) [ms] | Load (%) | Exec(ms) | Variation (Median - 90% - Max) [ns]        |
[component_container_mt-1] |------------------------------------------------------------------------------------------------------------------------------------------------------------------|
[component_container_mt-1] |==================================================================================================================================================================|
[component_container_mt-1] |==================================================================================================================================================================|
[component_container_mt-1] |                                           Entity Statistics Report (regular)                                                                                     |
[component_container_mt-1] |==================================================================================================================================================================|
[component_container_mt-1] | Entity Name             | Entity State             |   Count | Time (Median - 90% - Max) [ms]                                                                    |
[component_container_mt-1] |------------------------------------------------------------------------------------------------------------------------------------------------------------------|
[component_container_mt-1] |==================================================================================================================================================================|
[component_container_mt-1] [INFO] [1745484711.163499756] [NitrosNode]: [NitrosContext] Destroying context
[component_container_mt-1] [INFO] [1745484711.163603151] [NitrosNode]: [NitrosNode] Application termination done
[ERROR] [component_container_mt-1]: process has died [pid 92884, exit code -11, cmd '/opt/ros/humble/lib/rclcpp_components/component_container_mt --ros-args -r __node:=example_container -r __ns:=/example_namespace'].

Note that, while unloading nvidia::isaac_ros::h264_decoder::DecoderNode always results in a crash, unloading demo_nodes_cpp::Talker (which I included for testing purposes) works without issue. Also loading additional nvidia::isaac_ros::h264_decoder::DecoderNode instances works.

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