Message posté par : Guillaume_CARA_CEREMA (guillaume.cara(a)cerema.fr)
----------------------------------------
QGIS 3.34.3: Crash lors de l application de nombreux styles via le modeleur
Bonjour,
J’ai un problème avec le modèle builder de QGIS. Je cherche à automatiser l’application
des styles de couche via le modèle builder. J’ai plusieurs couches sur plusieurs années en
utilisant le même style que j’ai enregistré. J’ai donc mis un algorithme « Appliquer le
style » pour chacune de mes couches comme dans l’exemple ci-dessous.
https://zupimages.net/up/24/26/ec8o.png
(
https://zupimages.net/viewer.php?id=24/26/ec8o.png)
Pour expliquer plus précisément, ce que le modèle fait, l'algorithme a en entrée une
valeur prédéfinie et va chercher dans un dossier le fichier .qml du style et
l'applique. Cette opération est répétée pour l'ensemble des couches de mon projet
soit 40 couches (Je tiens à préciser que c'est 5 années de couches et 8 styles
différents en tout).
Le problème que j'ai c'est que QGIS crash constamment lorsqu'on dépasse 9 - 10
couches avec l'algorithme "Appliquer le style". De plus même si je mets les
40 algorithmes "Appliquer le style", et que j'active et désactive les
algorithmes au fur et à mesure, cela plante également.
Cependant le modeleur ne crash jamais au même endroit : sur 10 exécutions du programme, il
a systématiquement planté à des pourcentages différents de la complétion de
l'algorithme.
J'ai testé, une autre approche : Préparer un modèle qui demande en entrée la bonne
couche et lui applique la couche mais uniquement pour 1 année et faire un processus par
lot. Cela a également pas marché.
J'ai pensé au départ que c'état une question du poids de la couche, je le faisais
sur beaucoup de donnée
mais cela ne marche pas non plus sur des couches avec un petit nombre de donnée.
J'ai dans tous les cas le message d'erreur python :
-----------------
Code :
Python Stack Trace
Windows fatal exception: access violation
Current thread 0x000050ac (most recent call first):
File
"C:PROGRA~1/QGIS33~1.3/apps/qgis/./python/pluginsprocessingmodelerModelerDialog.py",
line 152 in runModel
dlg.exec_()
Stack Trace
QgsExpressionContextScope::addVariable :
QgsProject::createExpressionContextScope :
QgsExpressionContextUtils::globalProjectLayerScopes :
QgsLayerTreeModelLegendNode::createTemporaryRenderContext :
QgsSymbolLegendNode::data :
QgsLayerTreeModel::legendIconEmbeddedInParent :
QgsLayerTreeModel::data :
QSortFilterProxyModel::data :
QModelIndex::data :
QStyledItemDelegate::initStyleOption :
QStyledItemDelegate::paint :
QgsLayerTreeViewIndicator::QgsLayerTreeViewIndicator :
QTreeView::drawRow :
QTreeView::drawTree :
QTreeView::paintEvent :
QWidget::event :
QFrame::event :
QAbstractItemView::viewportEvent :
QCoreApplicationPrivate::sendThroughObjectEventFilters :
QApplicationPrivate::notify_helper :
QApplication::notify :
QgsApplication::notify :
QCoreApplication::notifyInternal2 :
QWidgetPrivate::drawWidget :
QWidgetPrivate::moveRect :
QWidget::event :
QApplicationPrivate::notify_helper :
QApplication::notify :
QgsApplication::notify :
QCoreApplication::notifyInternal2 :
QCoreApplicationPrivate::sendPostedEvents :
qt_plugin_query_metadata :
QEventDispatcherWin32::processEvents :
qt_plugin_query_metadata :
QEventLoop::exec :
QDialog::exec :
PyInit_QtWidgets :
PyObject_Str :
PyEval_EvalFrameDefault :
PyFunction_Vectorcall :
PyFunction_Vectorcall :
PyObject_GC_Del :
PyVectorcall_Call :
PyObject_Call :
PyInit_QtCore :
PyInit_QtCore :
PyInit_QtCore :
PyInit_QtCore :
QObject::qt_static_metacall :
QAction::activate :
QAbstractButton::click :
QAbstractButton::mouseReleaseEvent :
QToolButton::mouseReleaseEvent :
QWidget::event :
QApplicationPrivate::notify_helper :
QApplication::notify :
QgsApplication::notify :
QCoreApplication::notifyInternal2 :
QApplicationPrivate::sendMouseEvent :
QSizePolicy::QSizePolicy :
QSizePolicy::QSizePolicy :
QApplicationPrivate::notify_helper :
QApplication::notify :
QgsApplication::notify :
QCoreApplication::notifyInternal2 :
QGuiApplicationPrivate::processMouseEvent :
QWindowSystemInterface::sendWindowSystemEvents :
QEventDispatcherWin32::processEvents :
qt_plugin_query_metadata :
QEventLoop::exec :
QCoreApplication::exec :
main :
BaseThreadInitThunk :
RtlUserThreadStart :
QGIS Info
QGIS Version: 3.34.3-Prizren
QGIS code revision: 47373234ac
Compiled against Qt: 5.15.3
Running against Qt: 5.15.3
Compiled against GDAL: 3.8.3
Running against GDAL: 3.8.3
System Info
CPU Type: x86_64
Kernel Type: winnt
Kernel Version: 10.0.22621
-----------------
Je ne trouve aucune réponse sur internet sur ce bug.
Bien cordialement
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=368368#p368368
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net