ros-industrial / universal_robot

ROS-Industrial Universal Robots support (https://wiki.ros.org/universal_robot)
1.08k stars 1.04k forks source link

MoveIt setup assistant process dies #570

Open VFjr opened 3 years ago

VFjr commented 3 years ago

I am trying to edit the MoveIt configuration package using the MoveIt Setup Assistant, but it crashes after pressing the load button. I have found the same exact error in the issue #527 , which was closed due to inactivity. This happens with any of the ur robots I tried. This only happens on the ur moveit packages, as it does not happen on a custom one.

[ INFO] [1620213669.861189907]: Setting Param Server with Robot Description
[ INFO] [1620213669.864827583]: Robot semantic model successfully loaded.
[ INFO] [1620213669.864877429]: Setting Param Server with Robot Semantic Description
================================================================================REQUIRED process [moveit_setup_assistant-2] has died!
process has died [pid 14395, exit code -11, cmd /opt/ros/melodic/lib/moveit_setup_assistant/moveit_setup_assistant __name:=moveit_setup_assistant __log:=/home/vfjr/.ros/log/f509d408-ad93-11eb-856f-e4a7a0be79e0/moveit_setup_assistant-2.log].
log file: /home/vfjr/.ros/log/f509d408-ad93-11eb-856f-e4a7a0be79e0/moveit_setup_assistant-2*.log
Initiating shutdown!
================================================================================
[moveit_setup_assistant-2] killing on exit
[rosout-1] killing on exit
[master] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done

I am using ROS Melodic on Ubuntu 18.

gavanderhoorn commented 3 years ago

-11 is a SEGFAULT, which points to a problem in the MSA itself.

The fact you only observe it with the MoveIt packages in this repository isn't really significant.

SEGFAULTs are typically caused by out-of-bounds array access, use-after-free of pointers, null pointer derefences, etc.

If you want to figure out what is happening, I'd suggest compiling the MSA with debug symbols enabled, starting it inside gdb (or a similar debugger) and loading the problematic configuration. gdb will catch a SEGFAULT and at that point you can ask it for a backtrace.


Edit:

This only happens on the ur moveit packages, as it does not happen on a custom one.

that "custom one" was likely created recently, with the MSA?

If so: that could point to assumptions about the contents of configuration packages loaded by the MSA which are not true for the packages hosted in this repository.

That would still make this a MoveIt problem, as the MSA should be robust against such assumptions being invalidated.