It is basically a problem reported before by @ASchwa but never got resolved. Though it is a wiki question, I don't have enough Karma, so I am posting as new question.
I just want to run roslaunch pr2_3dnav right_arm_navigation.launch
laser_self_filter continues to crash and gets respawned on Ubuntu 12.04 LTS 64-bit with ROS Fuerte.
I know this launch file does work on many other machines that also runs 12.04 64bit with Fuerte. It is crucial for us to get this working please take a look.
As @Lorenz suggested, I attached gdb to laser_self_filter. Please take a look. Thanks!
(gdb) bt
#0 0x00007ffff6ae20e1 in pcl::VoxelGrid<pcl::PointXYZ>::applyFilter(pcl::PointCloud<pcl::PointXYZ>&) () from /opt/ros/fuerte/lib/libpcl_filters.so.1.5
#1 0x0000000000434527 in filter (output=..., this=0x7fffffffdb10)
at /opt/ros/fuerte/include/pcl-1.5/pcl/filters/filter.h:117
#2 SelfFilter::cloudCallback (this=0x7fffffffd600, cloud2=...)
at /tmp/buildd/ros-fuerte-arm-navigation-1.1.11/debian/ros-fuerte-arm-navigation/opt/ros/fuerte/stacks/arm_navigation/robot_self_filter/src/self_filter.cpp:105
#3 0x0000000000424b3a in operator() (a0=..., this=<optimized out>)
at /usr/include/boost/function/function_template.hpp:1013
#4 boost::detail::function::void_function_obj_invoker1<boost::function<void (boost::shared_ptr<sensor_msgs::PointCloud2_<std::allocator<void> > const> const&)>, void, boost::shared_ptr<sensor_msgs::PointCloud2_<std::allocator<void> > const> >::invoke(boost::detail::function::function_buffer&, boost::shared_ptr<sensor_msgs::PointCloud2_<std::allocator<void> > const>) (function_obj_ptr=..., a0=...)
at /usr/include/boost/function/function_template.hpp:153
#5 0x000000000043821c in operator() (
a0=<error reading variable: access outside bounds of object referenced via synthetic pointer>, this=0x698238) at /usr/include/boost/function/function_template.hpp:1013
#6 message_filters::CallbackHelper1T<boost::shared_ptr<sensor_msgs::PointCloud2_<std::allocator<void> > const> const&, sensor_msgs::PointCloud2_<std::allocator<void> > >::call (this=0x698230, event=..., nonconst_force_copy=<optimized out>)
at /opt/ros/fuerte/include/message_filters/signal1.h:76
#7 0x000000000042a367 in call (event=..., this=<optimized out>)
at /opt/ros/fuerte/include/message_filters/signal1.h:119
#8 message_filters::SimpleFilter<sensor_msgs::PointCloud2_<std::allocator<void> > >::signalMessage (this=<optimized out>, event=...)
at /opt/ros/fuerte/include/message_filters/simple_filter.h:135
#9 0x000000000043b365 in tf::MessageFilter<sensor_msgs::PointCloud2_<std::allocator<void> > >::testMessage (this=0x7a2970, evt=...)
at /opt/ros/fuerte/stacks/geometry/tf/include/tf/message_filter.h:413
#10 0x000000000043bf91 in tf::MessageFilter<sensor_msgs::PointCloud2_<std::allocator<void> > >::add (this=0x7a2970, evt=...)
at /opt/ros/fuerte/stacks/geometry/tf/include/tf/message_filter.h:255
#11 0x0000000000438408 in operator() (a0=..., this=0x7c05f8)
at /usr/include/boost/function/function_template.hpp:1013
#12 message_filters::CallbackHelper1T<ros::MessageEvent<sensor_msgs::PointCloud2_<std::allocator<void> > const> const&, sensor_msgs::PointCloud2_<std::allocator<void> > >::call (this=0x7c05f0, event=..., nonconst_force_copy=<optimized out>)
at /opt/ros/fuerte/include/message_filters/signal1.h:76
#13 0x000000000042a367 in call (event=..., this=<optimized out>)
at /opt/ros/fuerte/include/message_filters/signal1.h:119
#14 message_filters::SimpleFilter<sensor_msgs::PointCloud2_<std::allocator<void> > >::signalMessage (this=<optimized out>, event=...)
at /opt/ros/fuerte/include/message_filters/simple_filter.h:135
#15 0x000000000043853b in operator() (a0=..., this=0x7e4458)
at /usr/include/boost/function/function_template.hpp:1013
#16 ros::SubscriptionCallbackHelperT<ros::MessageEvent<sensor_msgs::PointCloud2_<std::allocator<void> > const> const&, void>::call (this=0x7e4450, params=...)
at /opt/ros/fuerte/include/ros/subscription_callback_helper.h:180
#17 0x00007ffff77252b7 in ros::SubscriptionQueue::call() ()
from /opt/ros/fuerte/lib/libroscpp.so
#18 0x00007ffff76d7ce9 in ros::CallbackQueue::callOneCB(ros::CallbackQueue::TLS*) ()
from /opt/ros/fuerte/lib/libroscpp.so
#19 0x00007ffff76d978b in ros::CallbackQueue::callAvailable(ros::WallDuration) ()
from /opt/ros/fuerte/lib/libroscpp.so
#20 0x00007ffff7728b08 in ros::SingleThreadedSpinner::spin(ros::CallbackQueue*) ()
from /opt/ros/fuerte/lib/libroscpp.so
#21 0x00007ffff770db0b in ros::spin() () from /opt/ros/fuerte/lib/libroscpp.so
#22 0x000000000041db23 in main (argc=1, argv=0x7fffffffdcf8)
at /tmp/buildd/ros-fuerte-arm-navigation-1.1.11/debian/ros-fuerte-arm-navigation/opt/ros/fuerte/stacks/arm_navigation/robot_self_filter/src/self_filter.cpp:145
(gdb) thread apply all bt
Thread 8 (Thread 0x7fffcffff700 (LWP 25559)):
#0 0x00007ffff55010fe in pthread_cond_timedwait@@GLIBC_2.3.2 ()
from /lib/x86_64-linux-gnu/libpthread.so.0
#1 0x00007ffff76bacff in ros::TimerManager<ros::Time, ros::Duration, ros::TimerEvent>::threadFunc() () from /opt/ros/fuerte/lib/libroscpp.so
#2 0x00007ffff4f29ce9 in thread_proxy () from /usr/lib/libboost_thread.so.1.46.1
#3 0x00007ffff54fce9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#4 0x00007ffff5229cbd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#5 0x0000000000000000 in ?? ()
Thread 7 (Thread 0x7fffe4919700 (LWP 25357)):
#0 0x00007ffff55010fe in pthread_cond_timedwait@@GLIBC_2.3.2 ()
from /lib/x86_64-linux-gnu/libpthread.so.0
#1 0x00007ffff76dbf1b in bool boost::condition_variable::timed_wait<boost::date_time::subsecond_duration<boost::posix_time::time_duration, 1000000l> >(boost::unique_lock<boost::mutex>&, boost::date_time::subsecond_duration<boost::posix_time::time_duration, 1000000l> const&) () from /opt/ros/fuerte/lib/libroscpp.so
#2 0x00007ffff76d98c9 in ros::CallbackQueue::callAvailable(ros::WallDuration) ()
from /opt/ros/fuerte/lib/libroscpp.so
#3 0x00007ffff7bbbb5a in tf::TransformListener::dedicatedListenerThread (
this=0x69aea0)
at /tmp/buildd/ros-fuerte-geometry-1.8.2/debian/ros-fuerte-geometry/opt/ros/fuerte/stacks/geometry/tf/include/tf/transform_listener.h:187
#4 0x00007ffff4f29ce9 in thread_proxy () from /usr/lib/libboost_thread.so.1.46.1
#5 0x00007ffff54fce9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#6 0x00007ffff5229cbd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#7 0x0000000000000000 in ?? ()
Thread 6 (Thread 0x7fffe511a700 (LWP 25349)):
#0 0x00007ffff55010fe in pthread_cond_timedwait@@GLIBC_2.3.2 ()
from /lib/x86_64-linux-gnu/libpthread.so.0
#1 0x00007ffff76dbf1b in bool boost::condition_variable::timed_wait<boost::date_time::subsecond_duration<boost::posix_time::time_duration, 1000000l> >(boost::unique_lock<boost::mutex>&, boost::date_time::subsecond_duration<boost::posix_time::time_duration, 1000000l> const&) () from /opt/ros/fuerte/lib/libroscpp.so
#2 0x00007ffff76d98c9 in ros::CallbackQueue::callAvailable(ros::WallDuration) ()
from /opt/ros/fuerte/lib/libroscpp.so
#3 0x00007ffff7bbbb5a in tf::TransformListener::dedicatedListenerThread (
this=0x7fffffffd600)
at /tmp/buildd/ros-fuerte-geometry-1.8.2/debian/ros-fuerte-geometry/opt/ros/fuerte/stacks/geometry/tf/include/tf/transform_listener.h:187
#4 0x00007ffff4f29ce9 in thread_proxy () from /usr/lib/libboost_thread.so.1.46.1
#5 0x00007ffff54fce9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#6 0x00007ffff5229cbd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#7 0x0000000000000000 in ?? ()
Thread 5 (Thread 0x7fffe591b700 (LWP 25346)):
#0 0x00007ffff55010fe in pthread_cond_timedwait@@GLIBC_2.3.2 ()
from /lib/x86_64-linux-gnu/libpthread.so.0
#1 0x00007ffff76dbf1b in bool boost::condition_variable::timed_wait<boost::date_time::subsecond_duration<boost::posix_time::time_duration, 1000000l> >(boost::unique_lock<boost::mutex>&, boost::date_time::subsecond_duration<boost::posix_time::time_duration, 1000000l> const&) () from /opt/ros/fuerte/lib/libroscpp.so
#2 0x00007ffff76d98c9 in ros::CallbackQueue::callAvailable(ros::WallDuration) ()
from /opt/ros/fuerte/lib/libroscpp.so
#3 0x00007ffff770d87e in ros::internalCallbackQueueThreadFunc() ()
from /opt/ros/fuerte/lib/libroscpp.so
#4 0x00007ffff4f29ce9 in thread_proxy () from /usr/lib/libboost_thread.so.1.46.1
#5 0x00007ffff54fce9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#6 0x00007ffff5229cbd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#7 0x0000000000000000 in ?? ()
Thread 4 (Thread 0x7fffe611c700 (LWP 25339)):
#0 0x00007ffff5500d84 in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib/x86_64-linux-gnu/libpthread.so.0
#1 0x00007ffff7708a32 in ros::ROSOutAppender::logThread() ()
from /opt/ros/fuerte/lib/libroscpp.so
#2 0x00007ffff4f29ce9 in thread_proxy () from /usr/lib/libboost_thread.so.1.46.1
#3 0x00007ffff54fce9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#4 0x00007ffff5229cbd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#5 0x0000000000000000 in ?? ()
Thread 3 (Thread 0x7fffe691d700 (LWP 25338)):
#0 0x00007ffff5223023 in select () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007ffff6db8176 in XmlRpc::XmlRpcDispatch::work(double) ()
from /opt/ros/fuerte/lib/libxmlrpcpp.so
#2 0x00007ffff76b2aa7 in ros::XMLRPCManager::serverThreadFunc() ()
from /opt/ros/fuerte/lib/libroscpp.so
#3 0x00007ffff4f29ce9 in thread_proxy () from /usr/lib/libboost_thread.so.1.46.1
#4 0x00007ffff54fce9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#5 0x00007ffff5229cbd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#6 0x0000000000000000 in ?? ()
Thread 2 (Thread 0x7fffe711e700 (LWP 25337)):
#0 0x00007ffff521e303 in poll () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007ffff76bdc76 in ros::poll_sockets(pollfd*, unsigned long, int) ()
from /opt/ros/fuerte/lib/libroscpp.so
#2 0x00007ffff772ed7a in ros::PollSet::update(int) ()
from /opt/ros/fuerte/lib/libroscpp.so
#3 0x00007ffff76cc3b4 in ros::PollManager::threadFunc() ()
from /opt/ros/fuerte/lib/libroscpp.so
#4 0x00007ffff4f29ce9 in thread_proxy () from /usr/lib/libboost_thread.so.1.46.1
#5 0x00007ffff54fce9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#6 0x00007ffff5229cbd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#7 0x0000000000000000 in ?? ()
Thread 1 (Thread 0x7ffff7fb0800 (LWP 25207)):
#0 0x00007ffff6ae20e1 in pcl::VoxelGrid<pcl::PointXYZ>::applyFilter(pcl::PointCloud<pcl::PointXYZ>&) () from /opt/ros/fuerte/lib/libpcl_filters.so.1.5
#1 0x0000000000434527 in filter (output=..., this=0x7fffffffdb10)
at /opt/ros/fuerte/include/pcl-1.5/pcl/filters/filter.h:117
#2 SelfFilter::cloudCallback (this=0x7fffffffd600, cloud2=...)
at /tmp/buildd/ros-fuerte-arm-navigation-1.1.11/debian/ros-fuerte-arm-navigation/opt/ros/fuerte/stacks/arm_navigation/robot_self_filter/src/self_filter.cpp:105
#3 0x0000000000424b3a in operator() (a0=..., this=<optimized out>)
at /usr/include/boost/function/function_template.hpp:1013
#4 boost::detail::function::void_function_obj_invoker1<boost::function<void (boost::shared_ptr<sensor_msgs::PointCloud2_<std::allocator<void> > const> const&)>, void, boost::shared_ptr<sensor_msgs::PointCloud2_<std::allocator<void> > const> >::invoke(boost::detail::function::function_buffer&, boost::shared_ptr<sensor_msgs::PointCloud2_<std::allocator<void> > const>) (function_obj_ptr=..., a0=...)
at /usr/include/boost/function/function_template.hpp:153
#5 0x000000000043821c in operator() (
a0=<error reading variable: access outside bounds of object referenced via synthetic pointer>, this=0x698238) at /usr/include/boost/function/function_template.hpp:1013
#6 message_filters::CallbackHelper1T<boost::shared_ptr<sensor_msgs::PointCloud2_<std::allocator<void> > const> const&, sensor_msgs::PointCloud2_<std::allocator<void> > >::call (this=0x698230, event=..., nonconst_force_copy=<optimized out>)
at /opt/ros/fuerte/include/message_filters/signal1.h:76
#7 0x000000000042a367 in call (event=..., this=<optimized out>)
at /opt/ros/fuerte/include/message_filters/signal1.h:119
#8 message_filters::SimpleFilter<sensor_msgs::PointCloud2_<std::allocator<void> > >::signalMessage (this=<optimized out>, event=...)
at /opt/ros/fuerte/include/message_filters/simple_filter.h:135
#9 0x000000000043b365 in tf::MessageFilter<sensor_msgs::PointCloud2_<std::allocator<vo---Type <return> to continue, or q <return> to quit---
id> > >::testMessage (this=0x7a2970, evt=...)
at /opt/ros/fuerte/stacks/geometry/tf/include/tf/message_filter.h:413
#10 0x000000000043bf91 in tf::MessageFilter<sensor_msgs::PointCloud2_<std::allocator<void> > >::add (this=0x7a2970, evt=...)
at /opt/ros/fuerte/stacks/geometry/tf/include/tf/message_filter.h:255
#11 0x0000000000438408 in operator() (a0=..., this=0x7c05f8)
at /usr/include/boost/function/function_template.hpp:1013
#12 message_filters::CallbackHelper1T<ros::MessageEvent<sensor_msgs::PointCloud2_<std::allocator<void> > const> const&, sensor_msgs::PointCloud2_<std::allocator<void> > >::call (this=0x7c05f0, event=..., nonconst_force_copy=<optimized out>)
at /opt/ros/fuerte/include/message_filters/signal1.h:76
#13 0x000000000042a367 in call (event=..., this=<optimized out>)
at /opt/ros/fuerte/include/message_filters/signal1.h:119
#14 message_filters::SimpleFilter<sensor_msgs::PointCloud2_<std::allocator<void> > >::signalMessage (this=<optimized out>, event=...)
at /opt/ros/fuerte/include/message_filters/simple_filter.h:135
#15 0x000000000043853b in operator() (a0=..., this=0x7e4458)
at /usr/include/boost/function/function_template.hpp:1013
#16 ros::SubscriptionCallbackHelperT<ros::MessageEvent<sensor_msgs::PointCloud2_<std::allocator<void> > const> const&, void>::call (this=0x7e4450, params=...)
at /opt/ros/fuerte/include/ros/subscription_callback_helper.h:180
#17 0x00007ffff77252b7 in ros::SubscriptionQueue::call() ()
from /opt/ros/fuerte/lib/libroscpp.so
#18 0x00007ffff76d7ce9 in ros::CallbackQueue::callOneCB(ros::CallbackQueue::TLS*) ()
from /opt/ros/fuerte/lib/libroscpp.so
#19 0x00007ffff76d978b in ros::CallbackQueue::callAvailable(ros::WallDuration) ()
from /opt/ros/fuerte/lib/libroscpp.so
#20 0x00007ffff7728b08 in ros::SingleThreadedSpinner::spin(ros::CallbackQueue*) ()
from /opt/ros/fuerte/lib/libroscpp.so
#21 0x00007ffff770db0b in ros::spin() () from /opt/ros/fuerte/lib/libroscpp.so
#22 0x000000000041db23 in main (argc=1, argv=0x7fffffffdcf8)
at /tmp/buildd/ros-fuerte-arm-navigation-1.1.11/debian/ros-fuerte-arm-navigation/opt/ros/fuerte/stacks/arm_navigation/robot_self_filter/src/self_filter.cpp:145
Originally posted by jys on ROS Answers with karma: 212 on 2013-02-24
Post score: 0