-
Notifications
You must be signed in to change notification settings - Fork 201
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Segmentation Fault #3
Comments
The map_generator package is not uploaded accidentally, it has been fixed now. Thanks! |
Pls try the updated FUEL, instead of using the simulator from Fast-Planner |
I get the above error using the updated FUEL, followed by:
|
@ShreyanshDarshan Hi, it seems the pcl_render_node is not setup properly. The package depends on the CUDA toolkit, which is not clearly mentioned previously. Pls follow the new Readme to setup CUDA and try again, thanks. |
Note that currently the depth camera simulator has to depend on CUDA, but we are developing a simulator that requires only CPU, which will be released in a few days. |
Hi! I have the same issue as @ShreyanshDarshan. FUEL compiles well but it gives me the same segmentation fault message when I run it. I am able to successfully run fast_planner with ENABLE_CUDA true, so I doubt this issue is related to my CUDA configuration? I am using Ubuntu 18.04 and ROS Melodic. |
Hi @ZbyLGsc. Do you have any updates regarding this problem? If not, do you have an estimated time on when it could be addressed? |
@danigr99727 Since the last update, the repo has been tested on several PC and it just runs properly, so I think your problem may be caused by your specific environment configuration. Could you provide more information, like where the node dies and what the output is, to help me debug the problem? |
@ZbyLGsc I am running ubuntu 18.04 with ROS Melodic and CUDA 10.01. Currently compiling with gcc 7 and g++ 7 (I tried gcc 8 and g++ 8, but this problem persisted) This is the output I get when running exploration.launch: ROS_MASTER_URI=http://localhost:11311
process[rvizvisualisation-1]: started with pid [9679]
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
process[tf_53-2]: started with pid [9680]
process[exploration_node-3]: started with pid [9697]
hit: 0.619039, miss: -0.619039, min: -1.99243, max: 2.19722, thresh: 1.38629
origin_: -20 -10 -1
map size: 40 20 5
origin_: -20 -10 -1
map size: 40 20 5
yaw diff: 0.523599
max yaw diff: 0.174533
vert num: 5
top: 0
0.84659
0.532245
bottom: 0
-0.84659
0.532245
left: 0.769831
0
0.638248
right: -0.771876
0
0.635773
lefttop: -3.73084 -2.3951 4.5
leftbottom: -2.87212 2.3951 4.5
righttop: 2.86098 -2.3951 4.5
rightbottom: 2.86098 2.3951 4.5
T_cb: 0 -1 0 0
0 0 1 0
1 0 0 0
0 0 0 1
T_bc: -0 -0 1 0
-1 -0 0 -0
-0 1 -0 0
0 -0 0 1
origin_: -20 -10 -1
map size: 40 20 5
process[traj_server-4]: started with pid [9718]
[ WARN] [1617802127.617536813]: [Traj server]: init...
process[waypoint_generator-5]: started with pid [9725]
[ INFO] [1617802128.519089839]: [FSM]: state: INIT
[ WARN] [1617802128.520003567]: no odom.
0
0
process[map_pub-6]: started with pid [9732]
process[quadrotor_simulator_so3-7]: started with pid [9738]
[ INFO] [1617802129.524710008]: [FSM]: state: INIT
[ WARN] [1617802129.524789713]: no odom.
[ WARN] [1617802129.630070260]: [Traj server]: ready.
process[so3_control-8]: started with pid [9744]
type is so3_control/SO3ControlNodelet
process[so3_disturbance_generator-9]: started with pid [9750]
[ INFO] [1617802130.530167454]: [FSM]: state: INIT
[ WARN] [1617802130.530228760]: no odom.
[FSM]: from INIT to WAIT_TRIGGER
[ WARN] [1617802130.560180351]: wait for trigger.
process[odom_visualization-10]: started with pid [9765]
Before remove: 0
After remove: 0
Stack trace (most recent call last):
#10 Object "[0xffffffffffffffff]", at 0xffffffffffffffff, in
#9 Object "/root/fiesta_ws/devel/lib/exploration_manager/exploration_node", at 0x56343736a039, in _start
#8 Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x7f8601f9bbf6, in __libc_start_main
#7 Object "/root/fiesta_ws/devel/lib/exploration_manager/exploration_node", at 0x563437369de5, in main
#6 Object "/opt/ros/melodic/lib/libroscpp.so", at 0x7f860364d92a, in ros::spin()
#5 Object "/opt/ros/melodic/lib/libroscpp.so", at 0x7f8603664fc8, in ros::SingleThreadedSpinner::spin(ros::CallbackQueue*)
#4 Object "/opt/ros/melodic/lib/libroscpp.so", at 0x7f860360db0a, in ros::CallbackQueue::callAvailable(ros::WallDuration)
#3 Object "/opt/ros/melodic/lib/libroscpp.so", at 0x7f860360bd98, in ros::CallbackQueue::callOneCB(ros::CallbackQueue::TLS*)
#2 Object "/opt/ros/melodic/lib/libroscpp.so", at 0x7f86035e6d36, in ros::TimerManager<ros::Time, ros::Duration, ros::TimerEvent>::TimerQueueCallback::call()
#1 Object "/root/fiesta_ws/devel/lib/exploration_manager/exploration_node", at 0x56343736f18c, in fast_planner::FastExplorationFSM::frontierCallback(ros::TimerEvent const&)
#0 Object "/root/fiesta_ws/devel/lib/libactive_perception.so", at 0x7f860401c34f, in fast_planner::FrontierFinder::searchFrontiers()
Segmentation fault (Address not mapped to object [0x7f85547a1df0])
[ WARN] [1617802131.193802785]: WARNING: package://odom_visualization/meshes/hummingbird.mesh is an older format ([MeshSerializer_v1.41]); you should upgrade it as soon as possible using the OgreMeshUpgrade tool.
[ WARN] [1617802131.193920840]: Can't assign material _missing_material_ to SubEntity of mesh_resource_marker_0 because this Material does not exist. Have you forgotten to define it in a .material script?
[exploration_node-3] process has died [pid 9697, exit code -11, cmd /root/fiesta_ws/devel/lib/exploration_manager/exploration_node /odom_world:=/state_ukf/odom /map_ros/pose:=/pcl_render_node/sensor_pose /map_ros/depth:=/pcl_render_node/depth /map_ros/cloud:=/pcl_render_node/cloud __name:=exploration_node __log:=/root/.ros/log/dd43f63e-97a2-11eb-872b-3c9509f16e29/exploration_node-3.log].
log file: /root/.ros/log/dd43f63e-97a2-11eb-872b-3c9509f16e29/exploration_node-3*.log
process[pcl_render_node-11]: started with pid [9771]
[ WARN] [1617802131.703128877]: Global Pointcloud received.. ` |
It looks like the required nodes can be launched, but the output shows that the exploration_node dies within 'FrontierFinder::searchFrontiers()' and after printing 'After remove: ...'. I am not sure what does happen, could you add some printing in the function to locate the exact position where the program crashes? |
The program crashes somewhere between lines 108 and 117. Trying to investigate at what stage within the nested loop the crash happens. Edit: min_id(1) and min_id(2) are both -2147483647 (aka, -2^31) when I print them just before the nested for loops. Don't look good those numbers |
@ZbyLGsc I tried to rearrange the order in which nodes are declared in exploration.launch, by putting the simulation at the very beginning. |
Thanks! It seems I can see the problem. The update_min/max, which are the updated range of the map, are not initialized. When the map updating happens after the frontier search, the two vars can be random large values (making min_id/max_id also be) and crash the frontier search. When you rearrange the node order, it makes the frontier search happens after the map update, which eliminates the crash. Now you may try the fixed code to see if the problem is solved. |
There seems to be another problem. When I run exploration.launch now, it throws this error: [ WARN] [1617873571.409429597]: wait for trigger.
[ WARN] [1617873571.426595962]: Global Pointcloud received..
global map has points: 345111.
terminate called after throwing an instance of 'std::runtime_error'
what(): Duration is out of dual 32-bit range
Stack trace (most recent call last):
#20 Object "[0xffffffffffffffff]", at 0xffffffffffffffff, in
#19 Object "/root/fiesta_ws/devel/lib/exploration_manager/exploration_node", at 0x55ef5d802d29, in _start
#18 Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x7f5aab0aebf6, in __libc_start_main
#17 Object "/root/fiesta_ws/devel/lib/exploration_manager/exploration_node", at 0x55ef5d802b95, in main
#16 Object "/opt/ros/melodic/lib/libroscpp.so", at 0x7f5aac76092a, in ros::spin()
#15 Object "/opt/ros/melodic/lib/libroscpp.so", at 0x7f5aac777fc8, in ros::SingleThreadedSpinner::spin(ros::CallbackQueue*)
#14 Object "/opt/ros/melodic/lib/libroscpp.so", at 0x7f5aac720b0a, in ros::CallbackQueue::callAvailable(ros::WallDuration)
#13 Object "/opt/ros/melodic/lib/libroscpp.so", at 0x7f5aac71ed98, in ros::CallbackQueue::callOneCB(ros::CallbackQueue::TLS*)
#12 Object "/opt/ros/melodic/lib/libroscpp.so", at 0x7f5aac774421, in ros::SubscriptionQueue::call()
#11 Object "/root/fiesta_ws/devel/lib/libplan_env.so", at 0x7f5aaca616cb, in ros::SubscriptionCallbackHelperT<ros::MessageEvent<sensor_msgs::Image_<std::allocator<void> > const> con
st&, void>::call(ros::SubscriptionCallbackHelperCallParams&)
#10 Object "/root/fiesta_ws/devel/lib/libplan_env.so", at 0x7f5aaca61094, in message_filters::Subscriber<sensor_msgs::Image_<std::allocator<void> > >::cb(ros::MessageEvent<sensor_ms
gs::Image_<std::allocator<void> > const> const&)
#9 Object "/root/fiesta_ws/devel/lib/libplan_env.so", at 0x7f5aaca72307, in void message_filters::sync_policies::ApproximateTime<sensor_msgs::Image_<std::allocator<void> >, geometr
y_msgs::PoseStamped_<std::allocator<void> >, message_filters::NullType, message_filters::NullType, message_filters::NullType, message_filters::NullType, message_filters::NullType, mes
sage_filters::NullType, message_filters::NullType>::add<0>(boost::mpl::at_c<boost::mpl::vector<ros::MessageEvent<sensor_msgs::Image_<std::allocator<void> > const>, ros::MessageEvent<g
eometry_msgs::PoseStamped_<std::allocator<void> > const>, ros::MessageEvent<message_filters::NullType const>, ros::MessageEvent<message_filters::NullType const>, ros::MessageEvent<mes
sage_filters::NullType const>, ros::MessageEvent<message_filters::NullType const>, ros::MessageEvent<message_filters::NullType const>, ros::MessageEvent<message_filters::NullType cons
t>, ros::MessageEvent<message_filters::NullType const>, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, 0>::type const&)
#8 Object "/root/fiesta_ws/devel/lib/libplan_env.so", at 0x7f5aaca6fa38, in message_filters::sync_policies::ApproximateTime<sensor_msgs::Image_<std::allocator<void> >, geometry_msg
s::PoseStamped_<std::allocator<void> >, message_filters::NullType, message_filters::NullType, message_filters::NullType, message_filters::NullType, message_filters::NullType, message_
filters::NullType, message_filters::NullType>::process()
#7 Object "/opt/ros/melodic/lib/librostime.so", at 0x7f5aabff2fa8, in ros::TimeBase<ros::Time, ros::Duration>::operator-(ros::Time const&) const
#6 Object "/opt/ros/melodic/lib/librostime.so", at 0x7f5aabfebcfc, in ros::DurationBase<ros::Duration>::fromNSec(long)
#5 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", at 0x7f5aab728d53, in __cxa_throw
#4 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", at 0x7f5aab728b20, in std::terminate()
#3 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", at 0x7f5aab728ae5, in
#2 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", at 0x7f5aab722956, in
#1 Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x7f5aab0cd920, in abort
#0 Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x7f5aab0cbfb7, in gsignal
Aborted (Signal sent by tkill() 7378 0)
[exploration_node-4] process has died [pid 7378, exit code -6, cmd /root/fiesta_ws/devel/lib/exploration_manager/exploration_node /odom_world:=/state_ukf/odom /map_ros/pose:=/pcl_rend
er_node/sensor_pose /map_ros/depth:=/pcl_render_node/depth /map_ros/cloud:=/pcl_render_node/cloud __name:=exploration_node __log:=/root/.ros/log/819a95a0-984b-11eb-84cb-9405bb117707/e
xploration_node-4.log].
log file: /root/.ros/log/819a95a0-984b-11eb-84cb-9405bb117707/exploration_node-4*.log
If I change the simulation to the beginning of the launch file, like I did before, it seems to start successfully, but crashes after I indicate a 2D nav goal in rviz with the following error: Stack trace (most recent call last):
#4 Object "[0xffffffffffffffff]", at 0xffffffffffffffff, in
#3 Object "/root/fiesta_ws/devel/lib/libpath_searching.so", at 0x7fc2011c5bca, in
#2 Object "/lib/x86_64-linux-gnu/libgcc_s.so.1", at 0x7fc1ff9a0d06, in _Unwind_Resume
#1 Object "/lib/x86_64-linux-gnu/libgcc_s.so.1", at 0x7fc1ff9a03e5, in
#0 Object "/lib/x86_64-linux-gnu/libgcc_s.so.1", at 0x7fc1ff99ff34, in
Segmentation fault (Signal sent by the kernel [(nil)])
[exploration_node-10] process has died [pid 7882, exit code -11, cmd /root/fiesta_ws/devel/lib/exploration_manager/exploration_node /odom_world:=/state_ukf/odom /map_ros/pose:=/pcl_render_node/sensor_pose /map_ros/depth:=/pcl_render_node/depth /map_ros/cloud:=/pcl_render_node/cloud __name:=exploration_node __log:=/root/.ros/log/2e827e9a-984c-11eb-85d8-9405bb117707/exploration_node-10.log].
log file: /root/.ros/log/2e827e9a-984c-11eb-85d8-9405bb117707/exploration_node-10*.log
|
From the output it seems that your mix FUEL with other package (FIESTA) and it may cause problems. I would suggest putting it in a new workspace to avoid conflict with others. |
Sorry about the last comment, the repo has been tested in melodic, but I can not reproduce your issue either, weird. |
What gcc and g++ versions are you using to compile? I saw a similar runtime error issue in fast_planner that was solved by changing the versions of these. I have tried to run FUEL in a workspace without other packages as you suggested, but it doesn't seem to make a difference. |
Both are 7.5 |
I am having the same issue. As soon as I am specifying a '2D Nav Goal' point. it craseshes with the following message: [exploration_node-1] process has died [pid 70075, exit code -11, cmd /home/ahmad/fuel_ws/devel/lib/exploration_manager/exploration_node /odom_world:=/state_ukf/odom /map_ros/pose:=/pcl_render_node/sensor_pose /map_ros/depth:=/pcl_render_node/depth /map_ros/cloud:=/pcl_render_node/cloud __name:=exploration_node __log:=/home/ahmad/.ros/log/5f612980-14b1-11ec-9f2f-9d4c6d32bb10/exploration_node-1.log]. and on terminating the exploration launch, the following errors occurs: terminate called after throwing an instance of 'boost::wrapexceptboost::lock_error' I am using gcc and g++ version 9.3.0. |
Try gcc 7.5.0 |
Hello, I met the same problem as you. I wonder if you have solved it. I'm using gcc and g++ version of 7.5.0. Thanks! |
Hi, I am facing the same issue as well. I have changed both gcc and g++ version to 7.5.0, but the issue still persist. May I know how can I solve this issue? Thank you! |
Hi, we finally reproduced the issue reported here on Ubuntu 20.04. It is caused by the ros-nlopt library and can be solved by re-installing the official version of nlopt. Please check the latest Readme for details, thanks~~ |
I tried this solution but still the exploration node crashes when the 2D Nav goal is specified. Kindly assist. |
On running the command
I get this error:
However, the drone spawns and moves for a fraction of a second, but then this error occurs:
Is there any way to fix this?
As mentioned in #2 , I couldnt clone the submodule uav_simulator, so i copied it from Fast Planner. Is this causing the issue?
The text was updated successfully, but these errors were encountered: