QgisCadastrePlugin icon indicating copy to clipboard operation
QgisCadastrePlugin copied to clipboard

Lenteur chargement EDIGéO sans MAJIC de plusieurs communes dans base SpatiaLite

Open sigmoe opened this issue 4 years ago • 9 comments

Description du bug

Malgré la mise à jour en v1.9.0 du plugin sur QGIS 3.10, c'est toujours très lent quand on charge plusieurs communes sans données MAJIC.

Reproduire le bug

Test de chargement EDIGéO de 7 communes du Bas-Rhin, sans fichier MAJIC. Utilisation des fichiers EDIGéO en Lambert 93 des communes 67008, 67016, 67018, 67030, 67031, 67034, 67442. Chargement dans une nouvelle base SpatiaLite. Résultat: temps de chargement: 2354 s. (39 mn !) Les mêmes communes chargées avec le plugin v1.4.1 sur QGIS 2.18, temps de chargement: 81 s. (1 mn 20 s.) Je veux bien comprendre qu'il y ait un peu plus de traitements réalisés sur la v1.9.0, mais l'écart de temps est énorme. Il semble que certains traitements tournent en boucle ...

En fait mon problème de départ concerne l'intégration de 31 communes du Bas-Rhin: après plus de 2 heures de traitement sans résultat, j'ai arrêté le programme, alors que le même traitement m'a pris 7 mn sur QGIS 2.18.

Log Pas de bug, mais très très très lent ...

Environnement

  • OS: Windows 10
  • Version de QGIS : 3.10.9
  • Version du plugin : 1.9.0

sigmoe avatar Sep 09 '20 13:09 sigmoe

Pour faciliter le boulot, pourriez vous svp envoyer un lien direct vers les données ?

mdouchin avatar Sep 09 '20 15:09 mdouchin

Ci-joint les données test (7 communes) test.zip

sigmoe avatar Sep 09 '20 15:09 sigmoe

  • Testé d'abord avec PostGIS: 140 secondes
  • Testé avec Spatialite: 67 s
  • Configuration: Ubuntu 18.04

QGIS version | 3.10.9-A Coruña | QGIS code revision | bf47e9d3e1
-- | -- | -- | --
Compiled against Qt | 5.9.5 | Running against Qt | 5.9.5
Compiled against GDAL/OGR | 2.2.3 | Running against GDAL/OGR | 2.2.3
Compiled against GEOS | 3.6.2-CAPI-1.10.2 | Running against GEOS | 3.7.1-CAPI-1.11.1 27a5e771
Compiled against SQLite | 3.22.0 | Running against SQLite | 3.22.0
PostgreSQL Client Version | 10.12 (Ubuntu 10.12-0ubuntu0.18.04.1) | SpatiaLite Version | 4.3.0a
QWT Version | 6.1.3 | QScintilla2 Version | 2.10.2
PROJ.4 Version | 493
OS Version | Ubuntu 18.04.5 LTS


mdouchin avatar Sep 09 '20 15:09 mdouchin

@sigmoe pouvez-vous copier/coller le contenu de l'A propos du menu Aide de QGIS (premier onglet)

mdouchin avatar Sep 09 '20 15:09 mdouchin

A priori, pas la même version de SpatiaLite.

Mon A propos QGIS:

Version de QGIS
3.10.9-A Coruña
Révision du code
bf47e9d3e1
Compilé avec Qt
5.11.2
Utilisant Qt
5.11.2
Compilé avec GDAL/OGR
3.0.4
Utilisé avec GDAL/OGR
3.0.4
Compilé avec GEOS
3.8.1-CAPI-1.13.3
Utilisé avec GEOS
3.8.1-CAPI-1.13.3
Compilé avec SQLite
3.29.0
Fonctionne avec SQLite
3.29.0
Version du client PostgreSQL
11.5
Version de SpatiaLite
4.3.0
Version de QWT
6.1.3
Version de QScintilla2
2.10.8
Compilé avec PROJ
6.3.2
Fonctionne avec PROJ
Rel. 6.3.2, May 1st, 2020
Version de l'OS
Windows 10 (10.0)

sigmoe avatar Sep 09 '20 15:09 sigmoe

Pas non plus une grosse différence. Pouvez-vous svp donner la configuration du plugin. De mon côté:

  • Taille maximum des requêtes INSERT: 200000
  • Spatialite - stockage temporaire: MEMORY

Pour info, mon ordi n'est pas surpuissant: 4 Coeurs, 8Go de RAM, et par contre un disque SSD.

NB: j'ai modifié votre commentaire ci-dessus en utilisant le bouton "Insert code" de la barre d'outil <> de l'éditeur de texte github, pour faciliter la lecture.

mdouchin avatar Sep 09 '20 16:09 mdouchin

Concernant la config:

  • Taille maximum des requêtes INSERT: 100000
  • Spatialite - stockage temporaire: MEMORY

J'ai refait un autre test sur Linux (avec ma même config, et résultat: 61 s. Il semble donc y avoir une particularité sur ma machine Windows qui pose problème ... Voici mon A propos QGIS de ma machine Linux:

Version de QGIS
3.10.8-A Coruña
Révision du code
d09a4f2388
Compilé avec Qt
5.9.5
Utilisant Qt
5.9.5
Compilé avec GDAL/OGR
2.2.3
Utilisé avec GDAL/OGR
2.2.3
Compilé avec GEOS
3.6.2-CAPI-1.10.2
Utilisé avec GEOS
3.6.2-CAPI-1.10.2 4d2925d6
Compilé avec SQLite
3.22.0
Fonctionne avec SQLite
3.22.0
Version du client PostgreSQL
10.12 (Ubuntu 10.12-0ubuntu0.18.04.1)
Version de SpatiaLite
4.3.0a
Version de QWT
6.1.3
Version de QScintilla2
2.10.2
Version de PROJ.4 :
493
Version de l'OS
Ubuntu 18.04.5 LTS
Extensions Python actives
SgmVertex2NodeByAtt; 
gban; 
SgmLinesToPoints; 
SgmDxfImportPro; 
MetaSearch; 
processing; 
db_manager

Je vais réessayer sur ma machine Windows en désactivant tous les autres plugins.

sigmoe avatar Sep 09 '20 16:09 sigmoe

Apparemment ce n'est pas un problème de plugin particulier qui viendrait perturber le plugin cadastre. Sur la machine Windows, toujours même problème (plus de 30 mn et intégration toujours pas terminée) en ayant désactivé tous les plugins.

sigmoe avatar Sep 09 '20 16:09 sigmoe

Chargement dans une base PostGIS avec la machine Windows ayant la même configuration QGIS: 104 s. Il s'agit donc bien d'un problème lié à SpatiaLite sur QGIS 3.10 Windows. Cela étant, lors du chargement PostGIS, je suis tombé sur un autre problème lié à la sauvegarde du mot de passe de connexion. J'ouvre une autre issue pour ce problème.

sigmoe avatar Sep 10 '20 09:09 sigmoe