-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Closed
Labels
Description
Feature request
Feature description
Add timeout to action client initialization in a BT action client node.
Currently this wait_for_action_server call does not have a timeout. If the given action server is not healthy, or we are having other RMW/DDS issues, whatever component of the system that initializes the plugin / BT will just get stuck here.
Implementation considerations
Instead, I propose that we use the server_timeout parameter to have a timeout for the wait_for_action_server and throw an exception if the timeout has been violated so that the upper level system can handle the error / inform the user, or other parts of the system rather than hang out waiting for the action server indefinitely.
I believe it should be as simple as
auto was_successful = action_client_->wait_for_action_server(server_timeout_)
if (!was_successful) {
throw std::runtime_error("Server Timeout exceeded");
Reactions are currently unavailable