Bug report #12228

deadlock from parallel rendering

Added by Sandro Santilli about 9 years ago. Updated almost 8 years ago.

Status:Closed
Priority:High
Assignee:-
Category:Symbology
Affected QGIS version:2.8.3 Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:fixed/implemented
Crashes QGIS or corrupts data:Yes Copied to github as #:20416

Description

I was testing a project I have and qgis (master) froze.
strace shows it hanging in: futex(0x45b791c, FUTEX_WAIT_PRIVATE, 1, NULL

gdb shows this backtrace:

(gdb) bt
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fc6914ae816 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007fc69149b8e4 in QFutureInterfaceBase::waitForFinished() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007fc692b60daf in QgsMapRendererParallelJob::cancel (this=0x522b360) at /usr/src/qgis/qgis/src/core/qgsmaprendererparalleljob.cpp:92
#4  0x00007fc692224ef9 in QgsMapCanvas::stopRendering (this=0x1f3c3c0) at /usr/src/qgis/qgis/src/gui/qgsmapcanvas.cpp:770
#5  0x00007fc692223cf2 in QgsMapCanvas::refreshMap (this=0x1f3c3c0) at /usr/src/qgis/qgis/src/gui/qgsmapcanvas.cpp:649
#6  0x00007fc6922b4b14 in QgsMapCanvas::qt_static_metacall (_o=0x1f3c3c0, _c=QMetaObject::InvokeMetaMethod, _id=40, _a=0x7fff919dca60)
    at /usr/src/qgis/build/src/gui/moc_qgsmapcanvas.cxx:166
#7  0x00007fc6915c487a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007fc6915cd70a in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007fc6915c8a31 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#10 0x00007fc690949e2c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#11 0x00007fc6909504a0 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#12 0x00007fc692a5b5cb in QgsApplication::notify (this=0x7fff919dd910, receiver=0x45c7b80, event=0x7fff919dced0)
    at /usr/src/qgis/qgis/src/core/qgsapplication.cpp:252
#13 0x00007fc6915b04dd in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#14 0x00007fc6915e0323 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#15 0x00007fc6915dd5f1 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#16 0x00007fc68c26ae04 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007fc68c26b048 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007fc68c26b0ec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007fc6915dd7a1 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#20 0x00007fc6909ebbb6 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#21 0x00007fc6915af0af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#22 0x00007fc6915af3a5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#23 0x00007fc6915b4b79 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#24 0x00000000005833eb in main (argc=2, argv=0x7fff919ddc18) at /usr/src/qgis/qgis/src/app/main.cpp:1029

All I did to trigger it was changing visibility of a couple of layers and navigate.
I'm tagging it as "Causes crash or corruption" as you can't exit from a deadlock w/out killing the process.

invalid_topo.sql.gz - database dump for reproducing it (83.6 KB) Sandro Santilli, 2015-07-31 05:48 AM

History

#1 Updated by Martin Dobias about 9 years ago

What about the worker threads - what were they waiting for?

#2 Updated by Jürgen Fischer about 9 years ago

Martin Dobias wrote:

What about the worker threads - what were they waiting for?

Good question :)

<strk> master branch
<strk> Process 10380 attached
<strk> futex(0x45b791c, FUTEX_WAIT_PRIVATE, 1, NULL
<strk> ^^^ that's coming from strace, it's stuck there, deadlock !
<jef> strk: where?
<strk> jef: #12228
<sigq> Title: QGIS Application - Bug report #12228: deadlock from parallel rendering - QGIS Issue Tracking (at hub.qgis.org)
<jef> strk: and the other threads?
<strk> I killed the process now
<strk> jef: but nothing was coming out from strace, so I guess all were quiet
<strk> helgrind tool of valgrind might help

#3 Updated by Jürgen Fischer about 9 years ago

BTW thread apply all bt in gdb produces backtraces for all threads.

#4 Updated by Jürgen Fischer about 9 years ago

  • Tag set to mtr

#5 Updated by Giovanni Manghi almost 9 years ago

  • Target version changed from Version 2.8 to Version 2.8.2

#6 Updated by Giovanni Manghi almost 9 years ago

  • Target version changed from Version 2.8.2 to Version 2.10

#7 Updated by Andreas Neumann almost 9 years ago

Strk - what are the data sources? Postgis, perhaps?

I have similar issues with Postgis connections and MTR if my number of cores for rendering goes beyond 2-3. If I limit the nr of cores to 2, the problem disappears.

I would really to like to see a fix for this. I have not created a bug report, because it was very hard to reproduce and apparently shows up on my Windows version more often than on Linux. But that is perhaps because on Linux my Postgis connections are local, whereas on Windows the connections are remote.

#8 Updated by Giovanni Manghi almost 9 years ago

  • Target version changed from Version 2.10 to Future Release - High Priority

Hi Andreas,

I would really to like to see a fix for this. I have not created a bug report, because it was very hard to reproduce and apparently shows up on my Windows version more often than on Linux. But that is perhaps because on Linux my Postgis connections are local, whereas on Windows the connections are remote.

it seems there are different tickets with issues apparently caused by mtr, them main seems to be this #11141

#9 Updated by Sandro Santilli almost 9 years ago

I don't remember what the datasource was. Yes, debugging threading issues is an hell (thus the name of the valgrind tool, I guess)

#10 Updated by Jürgen Fischer almost 9 years ago

  • Status changed from Open to Feedback

not reproduceable

#11 Updated by Giovanni Manghi almost 9 years ago

  • Status changed from Feedback to Closed
  • Resolution set to not reproducable

closing for lack of feedback.

#12 Updated by Sandro Santilli over 8 years ago

  • Status changed from Closed to Reopened
  • Resolution deleted (not reproducable)

I've just reproduced this, in 2.8.3 (lacking an entry in the "Affected version" pull-down menu).
What I did:
1) Load the POSTGIS_SRC/topology/test/invalid_topology.sql script into a topology-enabled PostgreSQL database
2) Load the "invalid_topology" schema in qgis via DBManager (select the schema, pick Topology Viewer from the "schema" menu)

What I got: a blocked GUI

The backtrace:
(gdb) bt
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1 0x00007f8953fcc816 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2 0x00007f8953fb98e4 in QFutureInterfaceBase::waitForFinished() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3 0x00007f895568a281 in QgsMapRendererParallelJob::cancel (this=0x57c2ba0) at /usr/src/qgis/qgis-2.8/src/core/qgsmaprendererparalleljob.cpp:92
#4 0x00007f8954d46219 in QgsMapCanvas::stopRendering (this=0x26c7680) at /usr/src/qgis/qgis-2.8/src/gui/qgsmapcanvas.cpp:778
#5 0x00007f8954d45012 in QgsMapCanvas::refreshMap (this=0x26c7680) at /usr/src/qgis/qgis-2.8/src/gui/qgsmapcanvas.cpp:657

#13 Updated by Sandro Santilli over 8 years ago

wioth

thread apply all bt
, as suggested by Jurgen:

(gdb) thread apply all bt

Thread 13 (Thread 0x7f89394ee700 (LWP 24245)):
#0  0x00007f8950fdf12d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007f894ed81fe4 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f894ed8230a in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f8940f1e336 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007f894eda6f05 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f894e383182 in start_thread (arg=0x7f89394ee700) at pthread_create.c:312
#6  0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 12 (Thread 0x7f8938ced700 (LWP 24246)):
#0  0x00007f8950fdf12d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007f894ed81fe4 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f894ed820ec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f894ed82129 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f894eda6f05 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f894e383182 in start_thread (arg=0x7f8938ced700) at pthread_create.c:312
#6  0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 11 (Thread 0x7f8931333700 (LWP 24253)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f895833181d in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#2  0x00007f8958331859 in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#3  0x00007f894e383182 in start_thread (arg=0x7f8931333700) at pthread_create.c:312
#4  0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 10 (Thread 0x7f8925296700 (LWP 24254)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f895807220d in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#2  0x00007f8958360fd6 in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#3  0x00007f894e383182 in start_thread (arg=0x7f8925296700) at pthread_create.c:312
#4  0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 9 (Thread 0x7f8933fff700 (LWP 24256)):
#0  0x00007f8950fdf12d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007f894ed81fe4 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f894ed820ec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f89540fb7be in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007f89540cd0af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007f89540cd3a5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007f8953fc9c5f in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#7  0x00007f8953fcc32f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007f894e383182 in start_thread (arg=0x7f8933fff700) at pthread_create.c:312
#9  0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 8 (Thread 0x7f88c7dd3700 (LWP 24260)):
#0  0x00007f8950fb2af5 in __libc_wait (stat_loc=0x7f88c7dd1460) at ../sysdeps/unix/sysv/linux/wait.c:35
#1  0x0000000000580193 in dumpBacktrace (depth=20) at /usr/src/qgis/qgis-2.8/src/app/main.cpp:236
#2  0x00000000005802c8 in myMessageOutput (type=QtWarningMsg, 
    msg=0x7f88c002d7c8 "\\"GEOS exception: IllegalArgumentException: point array must contain 0 or >1 elements\
\\" ")
    at /usr/src/qgis/qgis-2.8/src/app/main.cpp:349
#3  0x00007f8953fc1bb1 in qt_message_output(QtMsgType, char const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x0000000000987e61 in QDebug::~QDebug() ()
#5  0x00007f895560f866 in throwGEOSException (fmt=0x7f89523af8cb "%s") at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:101
#6  0x00007f89523aee0d in GEOSContextHandle_HS::ERROR_MESSAGE (this=this@entry=0x2256890, fmt=...) at geos_ts_c.cpp:243
#7  0x00007f89523a5e7e in GEOSGeom_createLineString_r (extHandle=0x2256890, cs=<optimized out>) at geos_ts_c.cpp:4100
#8  0x00007f895561033e in createGeosLineString (polyline=...) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:262
#9  0x00007f895561d347 in QgsGeometry::exportWkbToGeos (this=0x7f88c001a520) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:4118
#10 0x00007f8955611e50 in QgsGeometry::asGeos (this=0x7f88c001a520) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:625
#11 0x00007f89556d8f4c in QgsPalLayerSettings::registerFeature (this=0x59a8758, f=..., context=..., dxfLayer=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgspallabeling.cpp:1782
#12 0x00007f89556e3c6f in QgsPalLabeling::registerFeature (this=0x514b990, layerID=..., f=..., context=..., dxfLayer=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgspallabeling.cpp:3405
#13 0x00007f8955792a1b in QgsVectorLayerRenderer::drawRendererV2 (this=0x5790d60, fit=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerrenderer.cpp:280
#14 0x00007f89557921cf in QgsVectorLayerRenderer::render (this=0x5790d60) at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerrenderer.cpp:216
#15 0x00007f895568ab60 in QgsMapRendererParallelJob::renderLayerStatic (job=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsmaprendererparalleljob.cpp:215
#16 0x00007f895568bea2 in QtConcurrent::FunctionWrapper1<void, LayerRenderJob&>::operator() (this=0x5808108, u=...)
    at /usr/include/qt4/QtCore/qtconcurrentfunctionwrappers.h:86
#17 0x00007f895568bc0a in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIteration (this=0x58080d0, it=...) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:73
#18 0x00007f895568bc8f in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIterations (this=0x58080d0, sequenceBeginIterator=..., beginIndex=4, endIndex=5) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:82
#19 0x00007f895568c101 in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::forThreadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:263
#20 0x00007f895568be0c in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::threadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:225
#21 0x00007f8953fbe005 in QtConcurrent::ThreadEngineBase::run() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#22 0x00007f8953fbffee in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#23 0x00007f8953fcc32f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#24 0x00007f894e383182 in start_thread (arg=0x7f88c7dd3700) at pthread_create.c:312
#25 0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 7 (Thread 0x7f88c6dd1700 (LWP 24262)):
#0  0x00007f8950fb2af5 in __libc_wait (stat_loc=0x7f88c6dcf460) at ../sysdeps/unix/sysv/linux/wait.c:35
#1  0x0000000000580193 in dumpBacktrace (depth=20) at /usr/src/qgis/qgis-2.8/src/app/main.cpp:236
#2  0x00000000005802c8 in myMessageOutput (type=QtWarningMsg, msg=0x7f88bc00fc98 "\\"GEOS exception: \\" ")
    at /usr/src/qgis/qgis-2.8/src/app/main.cpp:349
#3  0x00007f8953fc1bb1 in qt_message_output(QtMsgType, char const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x0000000000987e61 in QDebug::~QDebug() ()
#5  0x00007f895560f866 in throwGEOSException (fmt=0x7f89523af8cb "%s") at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:101
#6  0x00007f89523aee0d in GEOSContextHandle_HS::ERROR_MESSAGE (this=this@entry=0x2256890, fmt=...) at geos_ts_c.cpp:243
#7  0x00007f89523a5e7e in GEOSGeom_createLineString_r (extHandle=0x2256890, cs=<optimized out>) at geos_ts_c.cpp:4100
#8  0x00007f895561033e in createGeosLineString (polyline=...) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:262
#9  0x00007f895561d347 in QgsGeometry::exportWkbToGeos (this=0x7f88bc079bb0) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:4118
#10 0x00007f8955611e50 in QgsGeometry::asGeos (this=0x7f88bc079bb0) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:625
#11 0x00007f89556d8f4c in QgsPalLayerSettings::registerFeature (this=0x5403228, f=..., context=..., dxfLayer=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgspallabeling.cpp:1782
#12 0x00007f89556e3c6f in QgsPalLabeling::registerFeature (this=0x514b990, layerID=..., f=..., context=..., dxfLayer=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgspallabeling.cpp:3405
#13 0x00007f8955792a1b in QgsVectorLayerRenderer::drawRendererV2 (this=0x4d656e0, fit=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerrenderer.cpp:280
#14 0x00007f89557921cf in QgsVectorLayerRenderer::render (this=0x4d656e0) at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerrenderer.cpp:216
#15 0x00007f895568ab60 in QgsMapRendererParallelJob::renderLayerStatic (job=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsmaprendererparalleljob.cpp:215
#16 0x00007f895568bea2 in QtConcurrent::FunctionWrapper1<void, LayerRenderJob&>::operator() (this=0x5808108, u=...)
    at /usr/include/qt4/QtCore/qtconcurrentfunctionwrappers.h:86
#17 0x00007f895568bc0a in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIteration (this=0x58080d0, it=...) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:73
#18 0x00007f895568bc8f in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIterations (this=0x58080d0, sequenceBeginIterator=..., beginIndex=2, endIndex=3) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:82
#19 0x00007f895568c101 in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::forThreadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:263
#20 0x00007f895568be0c in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::threadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:225
#21 0x00007f8953fbe005 in QtConcurrent::ThreadEngineBase::run() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#22 0x00007f8953fbffee in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#23 0x00007f8953fcc32f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#24 0x00007f894e383182 in start_thread (arg=0x7f88c6dd1700) at pthread_create.c:312
#25 0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 6 (Thread 0x7f88c65d0700 (LWP 24266)):
#0  0x00007f8950fdf12d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007f894ed81fe4 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f894ed820ec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f89540fb7a1 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007f89540cd0af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007f89540cd3a5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007f8953fc9c5f in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#7  0x00007f8953fcc32f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007f894e383182 in start_thread (arg=0x7f88c65d0700) at pthread_create.c:312
#9  0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 5 (Thread 0x7f89337fe700 (LWP 24293)):
#0  0x00007f8950fb2af5 in __libc_wait (stat_loc=0x7f89337fc460) at ../sysdeps/unix/sysv/linux/wait.c:35
#1  0x0000000000580193 in dumpBacktrace (depth=20) at /usr/src/qgis/qgis-2.8/src/app/main.cpp:236
#2  0x00000000005802c8 in myMessageOutput (type=QtWarningMsg, msg=0x7f8920015108 "\\"GEOS exception: \\" ")
    at /usr/src/qgis/qgis-2.8/src/app/main.cpp:349
#3  0x00007f8953fc1bb1 in qt_message_output(QtMsgType, char const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x0000000000987e61 in QDebug::~QDebug() ()
#5  0x00007f895560f866 in throwGEOSException (fmt=0x7f89523af8cb "%s") at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:101
#6  0x00007f89523aee0d in GEOSContextHandle_HS::ERROR_MESSAGE (this=this@entry=0x2256890, fmt=...) at geos_ts_c.cpp:243
#7  0x00007f89523a5e7e in GEOSGeom_createLineString_r (extHandle=0x2256890, cs=<optimized out>) at geos_ts_c.cpp:4100
#8  0x00007f895561033e in createGeosLineString (polyline=...) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:262
#9  0x00007f895561d347 in QgsGeometry::exportWkbToGeos (this=0x7f8920015320) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:4118
#10 0x00007f8955611e50 in QgsGeometry::asGeos (this=0x7f8920015320) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:625
#11 0x00007f89556d8f4c in QgsPalLayerSettings::registerFeature (this=0x5925208, f=..., context=..., dxfLayer=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgspallabeling.cpp:1782
#12 0x00007f89556e3c6f in QgsPalLabeling::registerFeature (this=0x514b990, layerID=..., f=..., context=..., dxfLayer=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgspallabeling.cpp:3405
#13 0x00007f8955792a1b in QgsVectorLayerRenderer::drawRendererV2 (this=0x540f470, fit=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerrenderer.cpp:280
#14 0x00007f89557921cf in QgsVectorLayerRenderer::render (this=0x540f470) at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerrenderer.cpp:216
#15 0x00007f895568ab60 in QgsMapRendererParallelJob::renderLayerStatic (job=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsmaprendererparalleljob.cpp:215
#16 0x00007f895568bea2 in QtConcurrent::FunctionWrapper1<void, LayerRenderJob&>::operator() (this=0x5808108, u=...)
    at /usr/include/qt4/QtCore/qtconcurrentfunctionwrappers.h:86
#17 0x00007f895568bc0a in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIteration (this=0x58080d0, it=...) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:73
#18 0x00007f895568bc8f in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIterations (this=0x58080d0, sequenceBeginIterator=..., beginIndex=3, endIndex=4) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:82
#19 0x00007f895568c101 in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::forThreadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:263
#20 0x00007f895568be0c in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::threadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:225
#21 0x00007f8953fbe005 in QtConcurrent::ThreadEngineBase::run() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#22 0x00007f8953fbffee in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#23 0x00007f8953fcc32f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#24 0x00007f894e383182 in start_thread (arg=0x7f89337fe700) at pthread_create.c:312
#25 0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 4 (Thread 0x7f88c4976700 (LWP 24294)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f8953fcc816 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f8953fc895b in QSemaphore::acquire(int) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007f88d8283dcb in QgsConnectionPoolGroup<QgsPostgresConn*>::acquire (this=0x7f88b8012fd0)
    at /usr/src/qgis/qgis-2.8/src/providers/postgres/../../core/qgsconnectionpool.h:81
#4  0x00007f88d82830e6 in QgsConnectionPool<QgsPostgresConn*, QgsPostgresConnPoolGroup>::acquireConnection (
    this=0x7f88d84ca460 <QgsPostgresConnPool::sInstance>, connInfo=...)
    at /usr/src/qgis/qgis-2.8/src/providers/postgres/../../core/qgsconnectionpool.h:218
#5  0x00007f88d8285c4d in QgsPostgresFeatureIterator::QgsPostgresFeatureIterator (this=0x7f88a800fa40, source=0x5429a70, ownSource=false, 
    request=...) at /usr/src/qgis/qgis-2.8/src/providers/postgres/qgspostgresfeatureiterator.cpp:38
#6  0x00007f88d828a7f3 in QgsPostgresFeatureSource::getFeatures (this=0x5429a70, request=...)
    at /usr/src/qgis/qgis-2.8/src/providers/postgres/qgspostgresfeatureiterator.cpp:610
#7  0x00007f89557849c9 in QgsVectorLayerFeatureIterator::QgsVectorLayerFeatureIterator (this=0x7f88a800f880, source=0x59490c0, ownSource=false, 
    request=...) at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerfeatureiterator.cpp:138
#8  0x00007f895578451d in QgsVectorLayerFeatureSource::getFeatures (this=0x59490c0, request=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerfeatureiterator.cpp:84
#9  0x00007f8955792148 in QgsVectorLayerRenderer::render (this=0x26f61f0) at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerrenderer.cpp:211
#10 0x00007f895568ab60 in QgsMapRendererParallelJob::renderLayerStatic (job=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsmaprendererparalleljob.cpp:215
#11 0x00007f895568bea2 in QtConcurrent::FunctionWrapper1<void, LayerRenderJob&>::operator() (this=0x5808108, u=...)
    at /usr/include/qt4/QtCore/qtconcurrentfunctionwrappers.h:86
#12 0x00007f895568bc0a in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIteration (this=0x58080d0, it=...) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:73
#13 0x00007f895568bc8f in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIterations (this=0x58080d0, sequenceBeginIterator=..., beginIndex=1, endIndex=2) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:82
#14 0x00007f895568c101 in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::forThreadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:263
#15 0x00007f895568be0c in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::threadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:225
#16 0x00007f8953fbe005 in QtConcurrent::ThreadEngineBase::run() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#17 0x00007f8953fbffee in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#18 0x00007f8953fcc32f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#19 0x00007f894e383182 in start_thread (arg=0x7f88c4976700) at pthread_create.c:312
#20 0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 3 (Thread 0x7f88affff700 (LWP 24295)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f8953fcc816 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f8953fc895b in QSemaphore::acquire(int) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007f88d8283dcb in QgsConnectionPoolGroup<QgsPostgresConn*>::acquire (this=0x7f88b8012fd0)
    at /usr/src/qgis/qgis-2.8/src/providers/postgres/../../core/qgsconnectionpool.h:81
#4  0x00007f88d82830e6 in QgsConnectionPool<QgsPostgresConn*, QgsPostgresConnPoolGroup>::acquireConnection (
    this=0x7f88d84ca460 <QgsPostgresConnPool::sInstance>, connInfo=...)
    at /usr/src/qgis/qgis-2.8/src/providers/postgres/../../core/qgsconnectionpool.h:218
#5  0x00007f88d8285c4d in QgsPostgresFeatureIterator::QgsPostgresFeatureIterator (this=0x7f88a000a670, source=0x53c8030, ownSource=false, 
    request=...) at /usr/src/qgis/qgis-2.8/src/providers/postgres/qgspostgresfeatureiterator.cpp:38
#6  0x00007f88d828a7f3 in QgsPostgresFeatureSource::getFeatures (this=0x53c8030, request=...)
    at /usr/src/qgis/qgis-2.8/src/providers/postgres/qgspostgresfeatureiterator.cpp:610
#7  0x00007f89557849c9 in QgsVectorLayerFeatureIterator::QgsVectorLayerFeatureIterator (this=0x7f88a000a370, source=0x59ab860, ownSource=false, 
    request=...) at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerfeatureiterator.cpp:138
#8  0x00007f895578451d in QgsVectorLayerFeatureSource::getFeatures (this=0x59ab860, request=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerfeatureiterator.cpp:84
#9  0x00007f8955792148 in QgsVectorLayerRenderer::render (this=0x58c09c0) at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerrenderer.cpp:211
#10 0x00007f895568ab60 in QgsMapRendererParallelJob::renderLayerStatic (job=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsmaprendererparalleljob.cpp:215
#11 0x00007f895568bea2 in QtConcurrent::FunctionWrapper1<void, LayerRenderJob&>::operator() (this=0x5808108, u=...)
    at /usr/include/qt4/QtCore/qtconcurrentfunctionwrappers.h:86
#12 0x00007f895568bc0a in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIteration (this=0x58080d0, it=...) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:73
#13 0x00007f895568bc8f in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIterations (this=0x58080d0, sequenceBeginIterator=..., beginIndex=5, endIndex=6) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:82
#14 0x00007f895568c101 in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::forThreadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:263
#15 0x00007f895568be0c in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::threadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:225
#16 0x00007f8953fbe005 in QtConcurrent::ThreadEngineBase::run() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#17 0x00007f8953fbffee in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#18 0x00007f8953fcc32f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#19 0x00007f894e383182 in start_thread (arg=0x7f88affff700) at pthread_create.c:312
#20 0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 2 (Thread 0x7f88af7fe700 (LWP 24296)):
#0  0x00007f8950fb2af5 in __libc_wait (stat_loc=0x7f88af7fc460) at ../sysdeps/unix/sysv/linux/wait.c:35
#1  0x0000000000580193 in dumpBacktrace (depth=20) at /usr/src/qgis/qgis-2.8/src/app/main.cpp:236
#2  0x00000000005802c8 in myMessageOutput (type=QtWarningMsg, 
    msg=0x7f88a402a718 "\\"GEOS exception: IllegalArgumentException: point array must contain 0 or >1 elements\
\\" ")
    at /usr/src/qgis/qgis-2.8/src/app/main.cpp:349
#3  0x00007f8953fc1bb1 in qt_message_output(QtMsgType, char const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x0000000000987e61 in QDebug::~QDebug() ()
#5  0x00007f895560f866 in throwGEOSException (fmt=0x7f89523af8cb "%s") at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:101
#6  0x00007f89523aee0d in GEOSContextHandle_HS::ERROR_MESSAGE (this=this@entry=0x2256890, fmt=...) at geos_ts_c.cpp:243
#7  0x00007f89523a5e7e in GEOSGeom_createLineString_r (extHandle=0x2256890, cs=<optimized out>) at geos_ts_c.cpp:4100
#8  0x00007f895561033e in createGeosLineString (polyline=...) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:262
#9  0x00007f895561d347 in QgsGeometry::exportWkbToGeos (this=0x7f88a40160f0) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:4118
#10 0x00007f8955611e50 in QgsGeometry::asGeos (this=0x7f88a40160f0) at /usr/src/qgis/qgis-2.8/src/core/qgsgeometry.cpp:625
#11 0x00007f89556d8f4c in QgsPalLayerSettings::registerFeature (this=0x5807bd8, f=..., context=..., dxfLayer=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgspallabeling.cpp:1782
#12 0x00007f89556e3c6f in QgsPalLabeling::registerFeature (this=0x514b990, layerID=..., f=..., context=..., dxfLayer=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgspallabeling.cpp:3405
#13 0x00007f8955792a1b in QgsVectorLayerRenderer::drawRendererV2 (this=0x59366d0, fit=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerrenderer.cpp:280
#14 0x00007f89557921cf in QgsVectorLayerRenderer::render (this=0x59366d0) at /usr/src/qgis/qgis-2.8/src/core/qgsvectorlayerrenderer.cpp:216
#15 0x00007f895568ab60 in QgsMapRendererParallelJob::renderLayerStatic (job=...)
    at /usr/src/qgis/qgis-2.8/src/core/qgsmaprendererparalleljob.cpp:215
#16 0x00007f895568bea2 in QtConcurrent::FunctionWrapper1<void, LayerRenderJob&>::operator() (this=0x5808108, u=...)
    at /usr/include/qt4/QtCore/qtconcurrentfunctionwrappers.h:86
#17 0x00007f895568bc0a in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIteration (this=0x58080d0, it=...) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:73
#18 0x00007f895568bc8f in QtConcurrent::MapKernel<QList<LayerRenderJob>::iterator, QtConcurrent::FunctionWrapper1<void, LayerRenderJob&> >::runIterations (this=0x58080d0, sequenceBeginIterator=..., beginIndex=6, endIndex=7) at /usr/include/qt4/QtCore/qtconcurrentmapkernel.h:82
#19 0x00007f895568c101 in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::forThreadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:263
#20 0x00007f895568be0c in QtConcurrent::IterateKernel<QList<LayerRenderJob>::iterator, void>::threadFunction (this=0x58080d0)
    at /usr/include/qt4/QtCore/qtconcurrentiteratekernel.h:225
#21 0x00007f8953fbe005 in QtConcurrent::ThreadEngineBase::run() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#22 0x00007f8953fbffee in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#23 0x00007f8953fcc32f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#24 0x00007f894e383182 in start_thread (arg=0x7f88af7fe700) at pthread_create.c:312
#25 0x00007f8950fec47d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 1 (Thread 0x7f8959500800 (LWP 24244)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f8953fcc816 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f8953fb98e4 in QFutureInterfaceBase::waitForFinished() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007f895568a281 in QgsMapRendererParallelJob::cancel (this=0x57c2ba0) at /usr/src/qgis/qgis-2.8/src/core/qgsmaprendererparalleljob.cpp:92
#4  0x00007f8954d46219 in QgsMapCanvas::stopRendering (this=0x26c7680) at /usr/src/qgis/qgis-2.8/src/gui/qgsmapcanvas.cpp:778
#5  0x00007f8954d45012 in QgsMapCanvas::refreshMap (this=0x26c7680) at /usr/src/qgis/qgis-2.8/src/gui/qgsmapcanvas.cpp:657
#6  0x00007f8954dd68df in QgsMapCanvas::qt_static_metacall (_o=0x26c7680, _c=QMetaObject::InvokeMetaMethod, _id=41, _a=0x7fff26747150)
    at /usr/src/qgis/build/2.8/src/gui/moc_qgsmapcanvas.cxx:168
#7  0x00007f89540e287a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007f89540eb70a in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007f89540e6a31 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#10 0x00007f8953467e2c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#11 0x00007f895346e4a0 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#12 0x00007f895558216d in QgsApplication::notify (this=0x7fff26748000, receiver=0x5842910, event=0x7fff267475c0)
    at /usr/src/qgis/qgis-2.8/src/core/qgsapplication.cpp:252
#13 0x00007f89540ce4dd in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#14 0x00007f89540fe323 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#15 0x00007f89540fb629 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#16 0x00007f894ed81e04 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007f894ed82048 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007f894ed820ec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007f89540fb7a1 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#20 0x00007f8953509be6 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#21 0x00007f89540cd0af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#22 0x00007f89540cd3a5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#23 0x00007f89540d2b79 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#24 0x00000000005834db in main (argc=1, argv=0x7fff26748308) at /usr/src/qgis/qgis-2.8/src/app/main.cpp:1047

#14 Updated by Sandro Santilli over 8 years ago

  • Target version deleted (Future Release - High Priority)
  • Affected QGIS version changed from 2.6.0 to 2.8.2

#15 Updated by Sandro Santilli over 8 years ago

Could it be the lack of exception handling in Thread 2 ?

msg=0x7f88a402a718 "\\"GEOS exception: IllegalArgumentException: point array must contain 0 or >1 elements\
\\" ")

#16 Updated by Sandro Santilli over 8 years ago

I'm attaching a dump to reproduce this. I could reproduce it just fine with 2.8.
Master doesn't seem to have the problem.

#17 Updated by Giovanni Manghi over 8 years ago

  • Affected QGIS version changed from 2.8.2 to 2.8.3

#18 Updated by Jürgen Fischer over 8 years ago

  • Category set to Symbology

#19 Updated by Sandro Santilli almost 8 years ago

  • Status changed from Reopened to In Progress

I cannot reproduce with current master either (2.15 -- d1cac84).
Given 2.14 is the new LTR I'll test that one and if fixed would close this bug.

#20 Updated by Sandro Santilli almost 8 years ago

  • Target version set to Version 2.14
  • Status changed from In Progress to Closed
  • Resolution set to fixed/implemented

2.14.3 is not affected either, while I confirm 2.8.9 is.
Given 2.14 is the new LTR, I'm closing this as fixed.

Also available in: Atom PDF