Bug report #6608

QGIS crashes when used as WFS client together with QGIS server

Added by Giovanni Manghi almost 7 years ago. Updated almost 7 years ago.

Status:Closed
Priority:Severe/Regression
Assignee:René-Luc ReLuc
Category:QGIS Server
Affected QGIS version:master Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:fixed
Crashes QGIS or corrupts data:Yes Copied to github as #:15796

Description

The latest versions of QGIS WFS Server master are making QGIS desktop crash when adding a WFS layer. Tested on both qgis desktop master and 1.8 on both Windows and Linux.

Downgrading to qgis server 1.8 solves the issue, so it is a regression.

History

#1 Updated by Giovanni Manghi almost 7 years ago

  • Assignee set to René-Luc ReLuc

#2 Updated by Giovanni Manghi almost 7 years ago

error message in linux terminal is:

[email protected]:~$ qgis
Warning: loading of qgis translation failed [/usr/share/qgis/i18n//qgis_en_US]
Warning: loading of qt translation failed [/usr/share/qt4/translations/qt_en_US]
Warning: QHttp: empty path requested is invalid -- using '/'

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed

(qgis.bin:3834): Gtk-CRITICAL **: IA__gtk_progress_configure:
assertion `value >= min && value <= max' failed
Segmentation fault

#3 Updated by Giovanni Manghi almost 7 years ago

  • Subject changed from QGIS WFS server (master) makes QGIS Desktop crash to QGIS crashes when used as WFS client together with QGIS server

It took me another few hours of tests to make further discoveries
about his issue.

  • at the beginning I was thinking that the crash was gone on qgis (as
    wfs client) on Linux, but then I realized I was wrong
  • later I was thinking that the crash was affecting just qgis on
    windows installed with osgeo4w, but then I realized it was affecting
    also qgis standalone
  • later on I was thinking that the issue was just affecting all
    polygons layers served as WFS, only if added before adding any other
    wfs layer, but I was wrong.

...
...
...

long story short: please try this service (is using the latest qgis
server master)

http://mapserver.uevora.pt/cgi-bin/qgis_mapserv.fcgi?map=/home/mapserver/wfs_tests/wfs_test_qgis_server.qgs

and give a look also to the vectors that are feeding this service

https://www.dropbox.com/s/4kf2bblznft0ws0/wfs_tests.tar.gz

At this point my conclusions are:

points and lines are not affected by the issue (crash when using qgis
as wfs client).

polygons are affected, but not all.

I see different cases.

  • There are polygon layers that do work ok when served as WFS layers,
    see for example "evora" and "test_polygons"
  • There are polygon layers that do always make QGIS (as WFS client)
    crash when served as WFS layers, see for example "TM_WORLD_BORDERS"
  • There are polygon layers that do sometimes make QGIS (as WFS
    client) crash when served as WFS layers, see for example "zpe"
  • There are polygon layers that do work ok when served as WFS, but
    they always miss (the same) features when compare with the original,
    see for example "distritos2009", "cartografia_primavera_..." and
    "pt_wgs84" (this last one is a subset of "TM_WORLD_BORDERS" and does
    not show the only geometry in it, but the attributes are there)

#4 Updated by René-Luc ReLuc almost 7 years ago

  • Status changed from Open to In Progress

The crash is due to MultiPolygon element with coordinates element empty.
I push the correction :
"48270916f5b5b8d8517f7ed9ad583c08b767bbed":commit:48270916f5b5b8d8517f7ed9ad583c08b767bbed

#5 Updated by Giovanni Manghi almost 7 years ago

  • Resolution set to fixed
  • Status changed from In Progress to Closed

Also available in: Atom PDF