Skip to content

"process has died" related to tick() in bt_topic_sub_node.hpp #106

Description

@AndyZe

I'm running a gtest on Humble branch. After hours of debugging, combing over my own code over and over again, I've found that commenting this code in RosTopicSubNode<T>::tick() resolves the issue. I don't know why yet. This code is related to changing the topic name at runtime, I think. (I don't do that, in fact I don't even define the topic_name input port.)

This is how my BT node is defined:

  factory.registerNodeType<aladdin_behaviors::BoolSubscriber>("CheckSuctionMonitor1",
                                                              BT::RosNodeParams(node, "/monitor_1_suction_status"));

inline NodeStatus RosTopicSubNode<T>::tick()

template <class T>
inline NodeStatus RosTopicSubNode<T>::tick()
{
  // First, check if the subscriber_ is valid and that the name of the
  // topic_name in the port didn't change.
  // otherwise, create a new subscriber
  // std::string topic_name;
  // getInput("topic_name", topic_name);

  // if(!topic_name.empty() && topic_name != "__default__placeholder__" &&
  //    topic_name != topic_name_)
  // {
  //   sub_instance_.reset();
  // }

  // if(!sub_instance_)
  // {
  //   createSubscriber(topic_name);
  // }

Prior to commenting it, I got:

StdoutLine: {'line': b"1: [ERROR] [suction_test-16]: process has died [pid 98336, exit code -11, cmd '/home/apptronik/workspaces/isaac_ros-dev/build/aladdin_behaviors/suction_test --ros-args'].\n"}

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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