Skip to content

[Nav2 Integration] Some BT nodes with registration are not being properly found at run-time #390

@SteveMacenski

Description

@SteveMacenski

Hi,

We're having a really bizarre issue with BT.CPP that we could use some help with. We've added a few BT nodes recently and some are failing to be usable in behavior tree XML files.

The BT nodes are compiling but we're finding that the builder in the BT registration macro isn't being called in these unique situations. So even though the BT node exists, they're not being registered as plugins to be able to be run-time loadable. This is affecting a number of recently added BT nodes to Nav2, with one example below. At run-time, the BT creation call hangs indefinitely without returning any warning or throwing any error, which is strange as well.

Do you have any idea why this is happening or what's gone wrong? I've looked over these files many times and compared them to other BT nodes we have in Nav2 using the same base classes that are working perfectly fine. We've tried removing caches and similar techniques in case its a bad compiler state, but it happens to these particular nodes, every time.

One example:

Another example is the BackUpCancel node, so you have 2 examples using completely different base libraries.

CC @jwallace42 @padhupradheep both of which have BT nodes that are in this limbo. More discussion ros-navigation/navigation2#2934

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