[Qgis-developer] QgisLogger can be a serious bottleneck

Andrea Peri aperi2007 at gmail.com
Sat Jul 5 07:40:35 PDT 2014


Ok, sorry.

Just a my personal curiosity:
The difference could give also a collection not empty.
If the difference of two polygons is a collection with some polygons,
some lines and some points.
What happened to this collection in QGIS ?

Thx,
A.


2014-07-05 16:03 GMT+02:00 G. Allegri <giohappy at gmail.com>:
> Hi Andrea, as I said above I'm not considering it an error.
> The topic of this post is QGIS message logging.
> The processing completes as expected, with the same results as Spatialite
> and PostGIS. These simply do it silently :)
>
> giovanni
>
>
>
> 2014-07-05 15:59 GMT+02:00 Andrea Peri <aperi2007 at gmail.com>:
>
>> 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 àèìòù
>> -----------------
>
>
>
>
> --
> Giovanni Allegri
> http://about.me/giovanniallegri
> Twitter: https://twitter.com/_giohappy_
> blog: http://blog.spaziogis.it
> GEO+ geomatica in Italia http://bit.ly/GEOplus



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


More information about the Qgis-developer mailing list