Skip to content
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

tf2 causes SIGABRT errors in rivz if the tf buffer is cleared #19

Closed
meyerj opened this issue Jul 29, 2013 · 1 comment
Closed

tf2 causes SIGABRT errors in rivz if the tf buffer is cleared #19

meyerj opened this issue Jul 29, 2013 · 1 comment
Labels

Comments

@meyerj
Copy link
Contributor

meyerj commented Jul 29, 2013

Whenever the tf cache is cleared in rviz (e.g. by clicking the Reset button in the bottom-left corner or if a negative time step is detected using an external clock source), rviz aborts with the following error:

rviz: /usr/include/boost/smart_ptr/shared_ptr.hpp:418: T* boost::shared_ptr<T>::operator->() const [with T = tf2::TimeCacheInterface]: Assertion `px != 0' failed.

Program received signal SIGABRT, Aborted.

Here is a stack trace (no debug build):

#0  0x00007ffff6475425 in __GI_raise (sig=<optimized out>)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007ffff6478b8b in __GI_abort () at abort.c:91
#2  0x00007ffff646e0ee in __assert_fail_base (fmt=<optimized out>, 
    assertion=0x7fffeefd0e1a "px != 0", 
    file=0x7fffeefd10a8 "/usr/include/boost/smart_ptr/shared_ptr.hpp", 
    line=<optimized out>, function=<optimized out>) at assert.c:94
#3  0x00007ffff646e192 in __GI___assert_fail (
    assertion=0x7fffeefd0e1a "px != 0", 
    file=0x7fffeefd10a8 "/usr/include/boost/smart_ptr/shared_ptr.hpp", 
    line=418, 
    function=0x7fffeefd20e0 "T* boost::shared_ptr<T>::operator->() const [with T = tf2::TimeCacheInterface]") at assert.c:103
#4  0x00007fffeefbfd80 in ?? () from /opt/ros/hydro/lib/libtf2.so
#5  0x00007fffeefc4edd in tf2::BufferCore::clear() ()
   from /opt/ros/hydro/lib/libtf2.so
#6  0x00007ffff7b58071 in rviz::VisualizationManager::resetTime() ()
   from /opt/ros/hydro/lib/librviz.so
#7  0x00007ffff2b71281 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007ffff756fc72 in QAbstractButton::clicked(bool) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#9  0x00007ffff72ada4e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#10 0x00007ffff72aed8b in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#11 0x00007ffff72aeffc in QAbstractButton::mouseReleaseEvent(QMouseEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#12 0x00007ffff736c5da in QToolButton::mouseReleaseEvent(QMouseEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#13 0x00007ffff6f30144 in QWidget::event(QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#14 0x00007ffff6edf894 in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#15 0x00007ffff6ee50bf in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#16 0x00007ffff2b5ce9c in QCoreApplication::notifyInternal(QObject*, QEvent*)
    () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#17 0x00007ffff6ee0862 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#18 0x00007ffff6f5fbf5 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#19 0x00007ffff6f5ebae in QApplication::x11ProcessEvent(_XEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#20 0x00007ffff6f880d2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#21 0x00007ffff18e1d53 in g_main_context_dispatch ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#22 0x00007ffff18e20a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#23 0x00007ffff18e2164 in g_main_context_iteration ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x00007ffff2b8c3bf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#25 0x00007ffff6f87d5e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#26 0x00007ffff2b5bc82 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#27 0x00007ffff2b5bed7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#28 0x00007ffff2b60f67 in QCoreApplication::exec() ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#29 0x0000000000400b0c in main ()

I am using the following binary packages from the official ROS hydro package repository:

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                         Version                                      Description
+++-============================================-============================================-========================================================================================================
ii  ros-hydro-geometry                           1.10.5-0precise-20130721-0540-+0000          Geometry Library
ii  ros-hydro-rviz                               1.10.1-0precise-20130722-0059-+0000          3D visualization tool for ROS.
ii  ros-hydro-tf2                                0.4.5-0precise-20130721-0218-+0000           tf2 is the second generation of the transform libraray, which lets the user keep track of multiple coord

@tfoote
Copy link
Member

tfoote commented Aug 3, 2013

I can confirm I can reproduce on my machine. I'll look into it shortly.

@tfoote tfoote closed this as completed in 8ff8379 Aug 10, 2013
tfoote added a commit that referenced this issue Aug 10, 2013
lucasw pushed a commit to lucasw/geometry2 that referenced this issue Nov 14, 2018
While we fixed the earlier errors, we changed the nature of
what the test was testing.  This change makes it so that
we are testing the same code paths as previously.

Signed-off-by: Chris Lalancette <clalancette@osrfoundation.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants