osrf / rmf_core

Provides the centralized functions of RMF: scheduling, etc.
Apache License 2.0
102 stars 41 forks source link

Full control fleet adapter crashes when receiving a delivery request from its current waypoint #229

Closed mrushyendra closed 3 years ago

mrushyendra commented 3 years ago

When a delivery request is sent such that the current waypoint of a robot in the fleet is the same as the pickup waypoint of the request, the full control fleet adapter crashes with the following message:

[rviz2-7] [INFO] [1607920480.283272288] [rmf_panel]: Queued delivery request
[rviz2-7] 12:34:40  Delivery    From: tinyRobot2_charger    To: cubicle_2
[rviz2-7] 
[ERROR] [full_control-12]: process has died [pid 326411, exit code -11, cmd '/home/rushy/Desktop/rmf_demos_ws/install/rmf_fleet_adapter/lib/rmf_fleet_adapter/full_control --ros-args -r __node:=tinyRobot_fleet_adapter --params-file 
/tmp/launch_params_rl986a1k --params-file /tmp/launch_params_37r64xfb --params-file /tmp/launch_params_m4kj8hj_ --params-file /tmp/launch_params_4unzo_z4 --params-file /tmp/launch_params_v42maxw8 --params-file /tmp/launch_params_inexicsc 
--params-file /tmp/launch_params_iqz4xlw0 --params-file /tmp/launch_params_1f4fruh_ --params-file /tmp/launch_params_5sv1cz9_ --params-file /tmp/launch_params__r6618kn --params-file /tmp/launch_params_k_dq7f1j 
--params-file /tmp/launch_params_gsdbmv6p --params-file /tmp/launch_params_5nzb689h --params-file /tmp/launch_params_dzpybgtp --params-file /tmp/launch_params_hd9_jh8h'].

Did a bit of digging, and it seems like the error occurs in the following lines: https://github.com/osrf/rmf_core/blob/7909c0474e4c290f1bdd56c240ddeda2376832d6/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/FleetUpdateHandle.cpp#L88-L97

pickup_plan has 0 waypoints in its plan, so pickup_plan_end is undefined, causing a segmentation fault when dropoff_start is constructed.

mxgrey commented 3 years ago

This should be fixed by #217 . Please feel free to reopen this ticket if the problem persists.