[Qgis-developer] qgis-server will crash on a specific project

Marco Hugentobler marco.hugentobler at sourcepole.ch
Sun Jun 22 03:07:11 PDT 2014


It is a problem with the layer cache. Will provide a fix for that soon.

Regards,
Marco

On 22.06.2014 11:49, Andrea Peri wrote:
> Hi,
>
> I confirm.
>
> There is a layer limit in QGIS-Server
>
> I do a huge test removing one by one all the layers from my project.
> And after the removing of every single layer I retest the working.
>
> Aftr a while of time. I reach the limit.
>
> And the project begin to run.
>
> I do other test to exclude that was the number of layer inside a single group.
> All the test give the response that seem to be the max number of
> layers in a project.
>
> So the question is:
>
> QGIS desktop allow to put more layers rather than how many are
> accepted from qgis-server.
>
> This not good for a WYSIWYG system.
>
> Ok, I will try to patch my server when found exactly where is the problem.
>
> Meanwhile,
> Now the question is on what structure is this limit ?
>
> I don't guess it is simply a layer limit but perhaps a more specific structure.
>
> Now I have a project that crash , and a project with a one less layer that work.
>
>
> Doing a DIFF beetween the two projects I see the possible structure
> breakable are:
>
> layer-tree-canvas -> custom-order -> item
> maplayer
> Digitizing -> LayerSnappingList -> value   (type QStringList)
> Digitizing -> LayerSnappingEnabledList -> value   (type QStringList)
> Digitizing -> LayerSnapToList -> value   (type QStringList)
> Digitizing -> LayerSnappingToleranceList -> value   (type QStringList)
>
> I check if in the code there is a limited array dimension for this objects.
>
> Regards,
>
> Andrea.
>
>
> 2014-06-22 7:29 GMT+02:00 Andrea Peri <aperi2007 at gmail.com>:
>> Hi,
>>
>> I do some other tests.
>>
>> I take my project that give QG crash and split it in two compementary projects.
>> Of course I do this using qgis desktop to avoid unvolontary errors.
>>
>> Testing both of them on QS there is no crash !
>>
>> So:
>> The first plausible theory I can give is that Qgis-Server has a LIMIT
>> to the number of Groups or Layers it can have in a project.
>> A limit different (and less) than qgis desktop (osgeo4w version).
>>
>> Is this a plausible theory ?
>>
>> Thx,
>>
>> Andrea.
>>
>>
>> 2014-06-21 22:04 GMT+02:00 Andrea Peri <aperi2007 at gmail.com>:
>>> Hi,
>>> I have a qgis-server that will crash on a specific project.
>>>
>>> The qgis-server will run correctly with another project that seem
>>> almost similar (both use the SVG symbols).
>>>
>>> The project that crash my QG  run correctly and smootly on a qgis
>>> desktop (qgis-dev) on a windows system.
>>> The project use SVG symbols, but also the other project I test on
>>> QSused SVG symbol
>>> so I suppose the SVG engine is ok.
>>> Also I check t have set correctly the SVG paths.
>>> Also I update to the very last (about 4 hours ago) master version.
>>>
>>> After all this check the qgis-server still crash.
>>>
>>> So I try to set the logfile, but the log is always empty.
>>> This mean that the cgi qgis-server will crash almost immediatly.
>>>
>>> So I set an environment shell to run it manually and to test the cgi
>>> with a gdb session.
>>>
>>> The results are this:
>>>
>>> ..................
>>> [Thread debugging using libthread_db enabled]
>>> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
>>> Warning 1: Unable to find driver ECW to unload from GDAL_SKIP
>>> environment variable.
>>> Warning 1: Unable to find driver ECW to unload from GDAL_SKIP
>>> environment variable.
>>> Warning 1: Unable to find driver JP2ECW to unload from GDAL_SKIP
>>> environment variable.
>>> Warning 1: Unable to find driver ECW to unload from GDAL_SKIP
>>> environment variable.
>>> Warning 1: Unable to find driver JP2ECW to unload from GDAL_SKIP
>>> environment variable.
>>> [New Thread 0x7fffe307c700 (LWP 1844)]
>>> [New Thread 0x7fffe27ea700 (LWP 1845)]
>>>
>>> Program received signal SIGSEGV, Segmentation fault.
>>> 0x00007ffff4fc06da in qHash(QString const&) ()
>>>     from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
>>> (gdb)
>>> ............................
>>>
>>> The version of libQtCore.so.4 I run on the linux is 4.8.2.
>>>
>>> Perhaps the 4.8.2 is too old for qgis-server ?
>>> :/
>>> But another project will run without any apparent problem.
>>> ?
>>>
>>> Many thx for every hint.
>>>
>>> --
>>> -----------------
>>> Andrea Peri
>>> . . . . . . . . .
>>> qwerty àèìòù
>>> -----------------
>>
>>
>> --
>> -----------------
>> Andrea Peri
>> . . . . . . . . .
>> qwerty àèìòù
>> -----------------
>
>


-- 
Dr. Marco Hugentobler
Sourcepole -  Linux & Open Source Solutions
Weberstrasse 5, CH-8004 Zürich, Switzerland
marco.hugentobler at sourcepole.ch http://www.sourcepole.ch
Technical Advisor QGIS Project Steering Committee



More information about the Qgis-developer mailing list