Page MenuHomePhabricator | MITK

Balloon Info text overlay hangs when selecting twice a node of a .cnf connectomics network in Connectomics statistics view -> Balloon Info.
Open, LowPublic

Description

Selecting one node of a connectomics network shows the balloon info on that node in 3D-View as expected,
then selecting a second node crashes the MitkDiffusion workbench application programme:

[Wed Jan 11 14:16:30 2017
1.152] Logfile: /home/mhettich/.local/share/DKFZ/MitkDiffusion_3162273065/data/9/mitk-0.log
[1.507] [BlueBerry] LOG: Warning: Detected recursive attempt by part org.mitk.views.connectomicsdata to create itself (this is probably, but not necessarily, a bug)
[1.509] **** Activating legacy standalone functionality
[1.509] setting active flag
[1.755] [BlueBerry] BlueBerry Workbench ready
QObject::connect: invalid null parameter
[3.629] Network read
[3.843] [widget.stdmulti] changing layout to big 3D ...
MitkDiffusion: /home/mhettich/MITKsuperbitch/ep/src/VTK/Common/Core/vtkDataArrayTemplate.h:191: T >vtkDataArrayTemplate<T>::GetValue(vtkIdType) [with T = unsigned char; vtkIdType = long long int]: Assertion `id >= 0 && id < this->Size' failed.
Abort (core dumped)
134

__

gbd bin/MitkDiffusion core
[...]
(gdb) p id
$2 = 42577792 // _that_is_dec2hex(42577792)=0x289AF80
(gdb) p this->Size
$3 = 0
// _of_course_this_assertion_fails: 0 <= id < 0 cannot be true. So why is this->Size = 0 (zero)?
(gdb) p this->Array[id]
$4 = 16 '\020'
(gdb) p typeid(this->Array[id])
$21 = {_vptr.type_info = 0x2b22a87d5290 <vtable for cxxabiv1::fundamental_type_info+16>, name = 0x2b22a85a7f6d <typeinfo name for unsigned char> "h"}
(gdb) p typeid(id)
$19 = {_vptr.type_info = 0x2b22a87d5290 <vtable for
cxxabiv1::fundamental_type_info+16>, name = 0x2b22a85a7fac <typeinfo name for long long> "x"}

Event Timeline

hettich created this task.Jan 11 2017, 3:59 PM

Here the backtrace:

(gdb) bt f
#0  0x00002b22a8a2dc37 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
        resultvar = 0
        pid = 3168
        selftid = 3168
#1  0x00002b22a8a31028 in __GI_abort () at abort.c:89
        save_stage = 2
        act = {__sigaction_handler = {sa_handler = 0x7fffd5b0d179, sa_sigaction = 0x7fffd5b0d179}, sa_mask = {__val = {47427859462404, 
              47429051736984, 191, 4294967295, 47427858105683, 4294967296, 140736778505744, 61188928, 77347472, 0, 0, 0, 0, 21474836480, 
              47427840880640, 47427859477432}}, sa_flags = -272112668, 
          sa_restorer = 0x2b22efc7e5c0 <vtkDataArrayTemplate<unsigned char>::GetValue(long long)::__PRETTY_FUNCTION__>}
        sigs = {__val = {32, 0 <repeats 15 times>}}
#2  0x00002b22a8a26bf6 in __assert_fail_base (fmt=0x2b22a8b773b8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", 
    assertion=assertion@entry=0x2b22efc7e3e4 "id >= 0 && id < this->Size", 
    file=file@entry=0x2b22efc7e398 "/home/mhettich/MITKsuperbitch/ep/src/VTK/Common/Core/vtkDataArrayTemplate.h", line=line@entry=191, 
    function=function@entry=0x2b22efc7e5c0 <vtkDataArrayTemplate<unsigned char>::GetValue(long long)::__PRETTY_FUNCTION__> "T vtkDataArrayTemplate<T>::GetValue(vtkIdType) [with T = unsigned char; vtkIdType = long long int]") at assert.c:92
        str = 0x4b4a3d0 ""
        total = 4096
#3  0x00002b22a8a26ca2 in __GI___assert_fail (assertion=0x2b22efc7e3e4 "id >= 0 && id < this->Size", 
    file=0x2b22efc7e398 "/home/mhettich/MITKsuperbitch/ep/src/VTK/Common/Core/vtkDataArrayTemplate.h", line=191, 
    function=0x2b22efc7e5c0 <vtkDataArrayTemplate<unsigned char>::GetValue(long long)::__PRETTY_FUNCTION__> "T vtkDataArrayTemplate<T>::GetValue(vtkIdType) [with T = unsigned char; vtkIdType = long long int]") at assert.c:101
No locals.
#4  0x00002b22efc28174 in vtkDataArrayTemplate<unsigned char>::GetValue (this=0x490fc60, id=42577792)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Common/Core/vtkDataArrayTemplate.h:191
        __PRETTY_FUNCTION__ = "T vtkDataArrayTemplate<T>::GetValue(vtkIdType) [with T = unsigned char; vtkIdType = long long int]"
#5  0x00002b22eb0baceb in vtkCellTypes::GetCellType (this=0x49c3a90, cellId=42577792)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Common/DataModel/vtkCellTypes.h:88
No locals.
#6  0x00002b22eb0bae37 in vtkPolyData::GetCellPoints (this=0x3a5ab40, cellId=42577792, npts=@0x7fffd5b09010: 42577792, 
    pts=@0x7fffd5b09008: 0x2b22fa395a34 <vtkBorderRepresentation::RenderOpaqueGeometry(vtkViewport*)+142>)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Common/DataModel/vtkPolyData.h:607
        type = 0 '\000'
        cells = 0x3a5ab40
        loc = 0
#7  0x00002b22eecebba6 in vtkPolyData::GetCellPoints (this=0x3a5ab40, cellId=42577792, ptIds=0x3a5ab40)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Common/DataModel/vtkPolyData.cxx:1090
        i = 42952384
        pts = 0x2b22fa395a34 <vtkBorderRepresentation::RenderOpaqueGeometry(vtkViewport*)+142>
        npts = 42577792
#8  0x00002b22ec70532a in vtkRenderer::UpdateGeometry (this=0x289af80)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderer.cxx:574
        i = 4
        hasTranslucentPolygonalGeometry = 11042
#9  0x00002b22ebc46579 in vtkOpenGLRenderer::DeviceRender (this=0x289af80)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/OpenGL/vtkOpenGLRenderer.cxx:270
        mvDepth = -1072996379
#10 0x00002b22ec7046d2 in vtkRenderer::Render (this=0x289af80) at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderer.cxx:311
        t2 = 2.1024943796148413e-316
        i = 1
        pit = 0x0
        t1 = 1484140704.239686
        aProp = 0x0
        size = 0x2895410
#11 0x00002b22ec702cbd in vtkRendererCollection::Render (this=0x2895650)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRendererCollection.cxx:51
        ren = 0x289af80
        i = 0
        rsit = 0x0
        firstRen = 0x289af80
        renWin = 0x2895390
        numLayers = 1
#12 0x00002b22ec719529 in vtkRenderWindow::DoStereoRender (this=0x2895390)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderWindow.cxx:772
        aren = 0x0
        rsit = 0x0
#13 0x00002b22ec719435 in vtkRenderWindow::DoFDRender (this=0x2895390)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderWindow.cxx:741
        i = 76056872
#14 0x00002b22ec718db8 in vtkRenderWindow::DoAARender (this=0x2895390)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderWindow.cxx:620
        i = 0
#15 0x00002b22ec718309 in vtkRenderWindow::Render (this=0x2895390)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/Core/vtkRenderWindow.cxx:436
        size = 0x2895410
        x = 32767
        y = -1429512513
        p1 = 0xc491801
#16 0x00002b22ebcff98b in vtkXOpenGLRenderWindow::Render (this=0x2895390)
    at /home/mhettich/MITKsuperbitch/ep/src/VTK/Rendering/OpenGL/vtkXOpenGLRenderWindow.cxx:1839
        attribs = {x = 0, y = 0, width = 857, height = 1012, border_width = 0, depth = 24, visual = 0x3ee4fe0, root = 661, c_class = 1, 
          bit_gravity = 0, win_gravity = 1, backing_store = 0, backing_planes = 4294967295, backing_pixel = 0, save_under = 0, 
          colormap = 75497570, map_installed = 0, map_state = 2, all_event_masks = 6987903, your_event_mask = 0, do_not_propagate_mask = 0, 
          override_redirect = 0, screen = 0x28a9b80}
#17 0x00002b22e8eac1e4 in mitk::RenderingManager::ForceImmediateUpdate (this=0x25e3660, renderWindow=0x2895390)
    at /home/mhettich/MITK/Modules/Core/src/Controllers/mitkRenderingManager.cpp:247
        vPR = <optimized out>
        size = <optimized out>
#18 0x00002b22ffca6b9a in QmitkStdMultiWidget::ForceImmediateUpdate (this=0x2610c60)
    at /home/mhettich/MITK/Modules/QtWidgets/src/QmitkStdMultiWidget.cpp:1411
No locals.
#19 0x00002b230bd947fe in QmitkConnectomicsStatisticsView::OnNetworkBalloonsNodeLabelsComboBoxCurrentIndexChanged (this=0x29d0730)
    at /home/mhettich/MITK/Plugins/org.mitk.gui.qt.diffusionimaging/src/internal/Connectomics/QmitkConnectomicsStatisticsView.cpp:127
        tempCurrentText = "14"
        balloonTextStream = <incomplete type>
        network = <optimized out>
        nodes = std::vector of length 1, capacity 1 = {0x48120f0}
        node = {m_Pointer = 0x48120f0}
#20 0x00002b230bfb0791 in QmitkConnectomicsStatisticsView::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, 
    _a=<optimized out>)
    at /home/mhettich/MITKsuperbitch/MITK-build/Plugins/org.mitk.gui.qt.diffusionimaging/src/internal/Connectomics/moc_QmitkConnectomicsStatisticsView.cpp:71
        _t = <optimized out>
#21 0x00002b22a80509af in QMetaObject::activate(QObject*, int, int, void**) () from /opt/Qt/5.6/gcc_64/lib/libQt5Core.so.5
No symbol table info available.
#22 0x00002b22a92f07b1 in QComboBox::currentIndexChanged(int) () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#23 0x00002b22a92f1c51 in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#24 0x00002b22a92f419d in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#25 0x00002b22a92f42f6 in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#26 0x00002b22a92fa40d in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#27 0x00002b22a80509af in QMetaObject::activate(QObject*, int, int, void**) () from /opt/Qt/5.6/gcc_64/lib/libQt5Core.so.5
No symbol table info available.
#28 0x00002b22a92f0d6b in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#29 0x00002b22a80278f3 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) ()
   from /opt/Qt/5.6/gcc_64/lib/libQt5Core.so.5
No symbol table info available.
#30 0x00002b22a91e0b75 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#31 0x00002b22a91e5820 in QApplication::notify(QObject*, QEvent*) () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#32 0x00002b22a7baf112 in QmitkSafeNotify<QtSingleApplication> (app=<optimized out>, receiver=<optimized out>, event=<optimized out>)
    at /home/mhettich/MITK/Modules/AppUtil/src/QmitkSafeNotify.h:31
        __FUNCTION__ = "QmitkSafeNotify"
        msg = {static null = {<No data fields>}, d = 0x2b22a810afa0 <QArrayData::shared_null>}
        msgBox = <incomplete type>
        ret = <optimized out>
#33 0x00002b22a7baf03e in QmitkSingleApplication::notify (this=<optimized out>, receiver=<optimized out>, event=<optimized out>)
    at /home/mhettich/MITK/Modules/AppUtil/src/QmitkSingleApplication.cpp:33
No locals.
#34 0x00002b22a8027b80 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /opt/Qt/5.6/gcc_64/lib/libQt5Core.so.5
No symbol table info available.
#35 0x00002b22a91e449f in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool)
    () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#36 0x00002b22a923fa6b in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#37 0x00002b22a9241aa3 in ?? () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
#38 0x00002b22a91e0b9c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /opt/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
No symbol table info available.
[...]
#66 0x000000000040137e in main (argc=<optimized out>, argv=<optimized out>) at /home/mhettich/MITK/Applications/Diffusion/MitkDiffusion.cpp:64
        app = {<Poco::Util::Application> = {<Poco::Util::Subsystem> = {<Poco::RefCountedObject> = {
                _vptr.RefCountedObject = 0x2b22a7db8610 <vtable for mitk::BaseApplication+16>, _counter = {_counter = 1}}, <No data fields>}, 
            _pConfig = {_ptr = 0x163ec20}, _subsystems = std::vector of length 1, capacity 1 = {{_ptr = 0x163f470}}, _initialized = true, 
            _command = "bin/MitkDiffusion", _argv = std::vector of length 1, capacity 1 = {"bin/MitkDiffusion"}, 
            _unprocessedArgs = std::vector of length 0, capacity 1, _options = {_options = std::vector of length 18, capacity 32 = {{
                  _shortName = "h", _fullName = "help", _description = "print this help text", _required = false, _repeatable = false, 
[...]

not complete yet: T22342-fix_vtk_rendering_crash_in_connectomics_balloon_help.

hettich added a comment.EditedJan 13 2017, 7:51 PM

crashes in different ways or at different points within the vtk rendering chain, but always after repeating this user action, and not on the first time.

hettich lowered the priority of this task from Normal to Low.Jun 5 2019, 8:43 PM

Does not crash anymore, but the network node's balloon info text remains visible and unchanged, sticking to the world geometry even after deleting data node in the Data Manager.

hettich renamed this task from vtk rendering crashes when selecting twice a node of a .cnf connectomics network in Connectomics statistics view -> Balloon Info. to Balloon Info text overlay hangs when selecting twice a node of a .cnf connectomics network in Connectomics statistics view -> Balloon Info..Jun 13 2019, 12:40 PM