doosan-robotics / doosan-robot

ROS for Doosan Robot
BSD 3-Clause "New" or "Revised" License
118 stars 59 forks source link

Driver does not shutdown cleanly #167

Open dave992 opened 10 months ago

dave992 commented 10 months ago

I am using the Doosan driver in several ROS projects at the moment. One of the things I observed is that the driver does not shutdown cleanly using ctrl-c or any other shutdown method.

I am using the driver on ROS Noetic with a Doosan M1013.

As soon as I request the shutdown I get the following messages:

[m1013-2] killing on exit
[ INFO] [1692873276.989883104] [/m1013]: [dsr_control] shutdown time! (sig = 2)
[ INFO] [1692873276.989911057] [/m1013]: [dsr_control] shutdown time! (sig = 2)
[ INFO] [1692873276.989918709] [/m1013]: [dsr_control] shutdown time! (sig = 2)
terminate called after throwing an instance of 'boost::wrapexcept<boost::lock_error>'
  what():  boost: mutex lock failed in pthread_mutex_lock: Invalid argument
System exception: cannot lock mutex
[m1013-2] escalating to SIGTERM

As it needs to escalate to a SIGTERM the shutdown takes unnecessarily long. Is there any fix to cleanly shutdown the driver and its controllers?