[Qgis-developer] QgisLogger can be a serious bottleneck

Andrea Peri aperi2007 at gmail.com
Sat Jul 5 06:59:14 PDT 2014


Hi GioHappy,

the empty-collection is absolutelly not necessarylly a bug.
It is the obviously result of an operation on a machine (like the
computer) with a binary finite arithmetic.

Usually the empty is due to a too low value to be describe with a
finite binary arithmetic.

If the dataset is small or it is topologically correct (this not mean
only to be snapped).
 the collection results never happened.
Instead if the dataset is not topologically correct and is big the
probability to have some collection result grow.
We tipically have alway an 0.01% of collection on our results.

I suggest you to use directly postgis or spatialite to do this kind of
operations.

In these products you have the useful tools to resolve the collections
correctly.

Regard,

Andrea.


2014-07-05 12:40 GMT+02:00 G. Allegri <giohappy at gmail.com>:
> Hi Jurgen,
> I wouldn't call them errors. GEOSDIfference returned a lot of empty
> geomcollections, which the QgsVectorFileWriter couldn't manage. Consequently
> it wrote a log message for each geometry it couldn't write [1].
>
> Surely the logging should be improved in this specific case. Anyway, I think
> the option to turn QgsMessageLog off could be useful anyway...
>
> giovanni
>
> [1]
> https://github.com/qgis/QGIS/blob/master/src/core/qgsvectorfilewriter.cpp#L1718
>
>
> 2014-07-05 12:31 GMT+02:00 Jürgen E. <jef at norbit.de>:
>
>> Hi Giovanni,
>>
>> On Sat, 05. Jul 2014 at 10:27:24 +0200, G. Allegri wrote:
>> > As I reported in a previous post, I was unable to conclude a difference
>> > operation on a vector because the tool was running in exponential time.
>>
>> > Debugging pointed me to the problem: QgsVectoFileWriter was logging tons
>> > of
>> > empty geometres with an incompatible type which will be discarded.
>> > After commenting the line of logging the process completed in linear
>> > time.
>>
>> > Shouldn't we offer the opportunity to turn QgsLogger off? This would let
>> > the user/developer to switch it off whenever he already knows what's
>> > happening.
>> > Is it already there and I missed it?
>>
>> What error message did you get and wouldn't it be better to kill them
>> where it
>> origins or to issue a final "%n empty geometries skipped" instead of
>> logging
>> individual errors.
>>
>> Alternatively we could issue a "last message repeated %n times" in message
>> log
>> to make it behave better - although that only works the error message are
>> identical.
>>
>>
>> Jürgen
>>
>> --
>> Jürgen E. Fischer           norBIT GmbH             Tel.
>> +49-4931-918175-31
>> Dipl.-Inf. (FH)             Rheinstraße 13          Fax.
>> +49-4931-918175-50
>> Software Engineer           D-26506 Norden
>> http://www.norbit.de
>> QGIS release manager (PSC)  Germany                    IRC: jef on
>> FreeNode
>>
>> --
>> norBIT Gesellschaft fuer Unternehmensberatung und Informationssysteme mbH
>> Rheinstrasse 13, 26506 Norden
>> GF: Jelto Buurman, HR: Amtsgericht Emden, HRB 5502
>>
>> _______________________________________________
>> Qgis-developer mailing list
>> Qgis-developer at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>
>
>
>
> --
> Giovanni Allegri
> http://about.me/giovanniallegri
> Twitter: https://twitter.com/_giohappy_
> blog: http://blog.spaziogis.it
> GEO+ geomatica in Italia http://bit.ly/GEOplus
>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer



-- 
-----------------
Andrea Peri
. . . . . . . . .
qwerty àèìòù
-----------------


More information about the Qgis-developer mailing list