Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intégration en base pgsql : erreur vector_to_db #45

Open
Shypster opened this issue Mar 22, 2024 · 21 comments
Open

Intégration en base pgsql : erreur vector_to_db #45

Shypster opened this issue Mar 22, 2024 · 21 comments
Assignees
Labels
api About API Warehouse bug Something isn't working

Comments

@Shypster
Copy link

Entité(s) concernée(s)

processing execution

Route API concernée

/datastores/{datastore}/processings/executions/{execution}/launch

Méthode de la route API

GET

Description détaillée du bug

Bonjour,

Je souhaite intégrer une donnée vectorielle en base pgsql mais j'obtiens une erreur lors de l'intégration des données :

[
"2024-03-22 13:49:42,439INFO||cli||181||=== Vector to DB 2.8.1 ===",
"2024-03-22 13:49:42,439INFO||cli||182||Version de GDAL : 3.7.3",
"2024-03-22 13:49:42,440INFO||cli||183||Version de PROJ : 9.3.0",
"2024-03-22 13:49:42,440INFO||cli||196||Vérification de la structure de la livraison",
"2024-03-22 13:49:42,443INFO||cli||225||Récupèration des fichiers de la livraison",
"2024-03-22 13:49:42,459INFO||list_files||76||/mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data ignoré car son extension () ne fait pas partie de celles autorisées : geojson|csv|gpkg|shp|dbf|sql|delete|update",
"2024-03-22 13:49:42,462INFO||list_files||76||/mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data/L_ZONAGE_INONDATION_S_074.prj ignoré car son extension (.prj) ne fait pas partie de celles autorisées : geojson|csv|gpkg|shp|dbf|sql|delete|update",
"2024-03-22 13:49:42,462INFO||list_files||76||/mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data/L_ZONAGE_INONDATION_S_074.cpg ignoré car son extension (.cpg) ne fait pas partie de celles autorisées : geojson|csv|gpkg|shp|dbf|sql|delete|update",
"2024-03-22 13:49:42,463INFO||list_files||76||/mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data/L_ZONAGE_INONDATION_S_074.shx ignoré car son extension (.shx) ne fait pas partie de celles autorisées : geojson|csv|gpkg|shp|dbf|sql|delete|update",
"2024-03-22 13:49:42,463INFO||list_files||76||/mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data/L_ZONAGE_INONDATION_S_074.qix ignoré car son extension (.qix) ne fait pas partie de celles autorisées : geojson|csv|gpkg|shp|dbf|sql|delete|update",
"2024-03-22 13:49:42,463INFO||list_files||85||/mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data/L_ZONAGE_INONDATION_S_074.dbf ignoré car il est associé à un fichier shapefile qui sera traité à la place.",
"2024-03-22 13:49:42,464INFO||list_files||76||/mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data/L_ZONAGE_INONDATION_S_074.qml ignoré car son extension (.qml) ne fait pas partie de celles autorisées : geojson|csv|gpkg|shp|dbf|sql|delete|update",
"2024-03-22 13:49:42,507INFO||list_files||154||Le fichier /mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data/L_ZONAGE_INONDATION_S_074.shp contient 1 couches.",
"2024-03-22 13:49:42,534INFO||list_files||169||-- Layer ajoutée : {'path': PosixPath('/mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data/L_ZONAGE_INONDATION_S_074.shp'), 'type': 'ESRI Shapefile', 'name': 'l_zonage_inondation_s_074', 'srid': 'RGF93 v1 / Lambert-93', 'status': 'GENERATING'}",
"2024-03-22 13:49:42,535INFO||core||113||Intégration en mode GENERATING",
"2024-03-22 13:49:42,550INFO||vector_to_db||253||Début de l'intégration de l_zonage_inondation_s_074",
"2024-03-22 13:49:42,550INFO||vector_to_db||71||Ouverture du fichier /mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data/L_ZONAGE_INONDATION_S_074.shp",
"2024-03-22 13:49:42,557INFO||vector_to_db||95||Transformation de la couche l_zonage_inondation_s_074 en table PostgreSQL...",
"2024-03-22 13:50:12,684ERROR||vector_to_db||101||TECHNICAL_ERROR : l'import du jeu de données /mnt/warehouse-data-001/uploads/3a1fd56f-d864-4ebc-b9b1-469eac53ab12/data/L_ZONAGE_INONDATION_S_074.shp dans data-partners (10.10.4.9) a échoué. Contexte : src_srs='epsg:2154' | src_srs='epsg:2154' | gdal_open_options=[''] | layer_creation_options=['FID=ogc_fid']|sql_statement=None. Trace : COPY statement failed.",
"2024-03-22 13:50:12,688ERROR||vector_to_db||314||Erreur lors de l'insertion de la donnée l_zonage_inondation_s_074.",
"2024-03-22 13:50:12,837ERROR||core||126||Erreur lors de l'intégration des données."
]

Avez-vous une idée sur la source de l'erreur ?

Merci

@Shypster Shypster added api About API Warehouse bug Something isn't working labels Mar 22, 2024
@Dolite
Copy link
Contributor

Dolite commented Mar 25, 2024

Pouvez vous me dire ce que contient la livraison ? (Retour de l'appel GET /datastores/{id}/uploads/{id}/tree)

@Shypster
Copy link
Author

[
{
"type": "DIRECTORY",
"name": "data",
"size": 557800212,
"children": [
{
"type": "FILE",
"name": "L_ZONAGE_INONDATION_S_074.cpg",
"size": 5
},
{
"type": "FILE",
"name": "L_ZONAGE_INONDATION_S_074.dbf",
"size": 19829346
},
{
"type": "FILE",
"name": "L_ZONAGE_INONDATION_S_074.prj",
"size": 452
},
{
"type": "FILE",
"name": "L_ZONAGE_INONDATION_S_074.qix",
"size": 2117064
},
{
"type": "FILE",
"name": "L_ZONAGE_INONDATION_S_074.qml",
"size": 30089
},
{
"type": "FILE",
"name": "L_ZONAGE_INONDATION_S_074.shp",
"size": 533619924
},
{
"type": "FILE",
"name": "L_ZONAGE_INONDATION_S_074.shx",
"size": 2203332
}
]
}
]

@Dolite
Copy link
Contributor

Dolite commented Mar 25, 2024

Je ne vois rien qui cloche (et puis la vérification aurait râlé). Pourriez vous me donner l'id de l'exécution, que je regarde les logs plus complets de mon côté.

@Shypster
Copy link
Author

ed86d42c-de95-4827-ac53-07c873da1f29

@Dolite
Copy link
Contributor

Dolite commented Mar 25, 2024

Votre fichier contient un mélange de polygones et de multi polygones. La table créée attend des polygones et l'intégration échoue lorsqu'elle tombe sur un multi. Une évolution de notre côté est en cours pour permettre de corriger cela. En attendant, vous pouvez forcer le type multi polygone dans vos données.
Désolé pour le contre-temps.

@Shypster
Copy link
Author

En forçant le mode multi, je n'ai pas réussi à intégrer la donnée.

@Shypster
Copy link
Author

Bonjour,

Avez-vous des nouvelles à me donner concernant la correction de l'anomalie ?

Merci

@vbrinon
Copy link

vbrinon commented Apr 2, 2024

Bonjour,
Le correctif n'est toujours pas déployé.
En attendant, pour forcer le mode multi, la méthode recommandée est d'utiliser ogr2ogr et de passer par un gpkg :
ogr2ogr -nlt PROMOTE_TO_MULTI output.gpkg input.shp
Pouvez-vous nous fournir l'id de la nouvelle mise en base qui a échoué pour que nous vérifions si la nature de l'erreur a achangé svp ?

@Shypster
Copy link
Author

Shypster commented Apr 3, 2024

Effectivement en gpkg, c'est passé. Par contre, maintenant l'offre associée à ma donnée est en statut "UNSTABLE" et j'ai une autre donnée diffusée en WMS-V qui n'est plus disponible.

@vbrinon
Copy link

vbrinon commented Apr 3, 2024

Bonjour,
Pouvez-vous nous fournir l'identifiant de votre offre UNSTABLE pour que nous investiguions svp (et aussi celui du WMS-V qui n'est plus disponible)

@Shypster
Copy link
Author

Bonjour,

L'id de l'ofre "UNSTABLE" : 4106f5b0-2973-42cb-826c-f9555fc7e7db
L'id de l'offre plus disponible : f1c4c81b-eb15-4968-9ec5-8578612d7dec

Merci

@Shypster
Copy link
Author

Bonjour,

Avez-vous avancer sur le sujet ?

Merci

@vbrinon
Copy link

vbrinon commented Jun 3, 2024

Bonjour,
Désolé du temps de réponse. Avez-vous toujours les blocages ? Pourriez-vous nous indiquer l'id de votre datastore également svp?

@vbrinon
Copy link

vbrinon commented Jun 3, 2024

Par ailleurs, il est désormais possible de mettre en base des tables avec plusieurs types de géométrie.

Pour cela, il faut les préciser dans le paramètre "multigeom_layers"

ex:
{
"processing": "{{ _.processing }}",
"inputs": {
"upload": [
"{{ _.upload }}"
]
},
"output": {
"stored_data": {
"name": "TEST_IGNGPF_AVEC_PARAM",
"storage_tags": [
"PARTENAIRE",
"VECTEUR"
]
}
},
"parameters": {
"multigeom_layers": ["$Nom_table"]
}
}

@Shypster
Copy link
Author

Shypster commented Jun 4, 2024

Merci pour votre retour.
Id du datastore : bd2a125f-2efd-4539-88de-f5914bb235a9

Oui, les problèmes évoqués ci-dessus sont toujours d'actualité.

@vbrinon
Copy link

vbrinon commented Jun 12, 2024

Bonjour,

Nous avons supprimé l'offre 4106f5b0-2973-42cb-826c-f9555fc7e7db et créé une nouvelle offre a71d642b-145b-4265-aaed-ea34cc3896bf avec la même configuration pour reproduire le problème et elle n'a pas pu être publiée. Après vérification des logs, il apparait que le style ne peut pas être intégré.

Retour de geoserver qui n'arrive pas à parser le fichier XML :

Invalid style:org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog

Après avoir téléchargé le style, il apparait que le fichier XML est encodé en UTF-8 avec BOM et cela empêche l'intégration dans Geoserver.

Pouvez-vous réessayer en encodant le style en UTF-8 sans BOM ?

@Shypster
Copy link
Author

Shypster commented Jul 1, 2024

Bonjour, pouvez-vous me dire pourquoi la donnée stockée 6f62da7c-fcba-4d86-952a-f7aea8aff898 est en "UNSTABLE" ?
De plus, quand je monte un shapefile en livraison, les tests de validation ne passent pas totalement et la livraison échoue.
Merci

@Dolite
Copy link
Contributor

Dolite commented Jul 1, 2024

Pouvez vous nous donner les logs de l'exécution de traitement qui a échoué pour la stored data UNSTABLE ? Et quel est l'identifiant de l'exécution de vérification en erreur ? Merci.

@vbrinon
Copy link

vbrinon commented Jul 1, 2024

Bonjour,
Le traitement vector2db a effectivement échoué, vraisemblablement sur une erreur de type de données.
Malheureusement la livraison a été supprimée, nous ne pouvons donc pas récupérer le fichier gpkg pour vérifier son contenu.
Serait-il possible de le relivrer ou de nous faire parvenir le fichier L_ZONAGE_INONDATION_S_074.gpkg ?

@Shypster
Copy link
Author

Shypster commented Jul 1, 2024

J'ai re-téléversé la même donnée mais en shapefile, le même problème survient.
ID de la donnée stockée "UNSTABLE" : 6f62da7c-fcba-4d86-952a-f7aea8aff898
ID de la livraison : d4f6d552-42a5-46dd-8b1a-0d7835cfb2c7
ID de l'exécution : 8b720d96-99ff-4ec6-a093-07f33e667bca

Pour info, il s'agit d'un type de géométrie multipolygon, ci-dessous les paramètres de l'exécution :
{
"processing": "0de8c60b-9938-4be9-aa36-9026b77c3c96",
"inputs": {
"upload": [
"d4f6d552-42a5-46dd-8b1a-0d7835cfb2c7"
]
},
"output": {
"stored_data": {
"name": "L_ZONAGE_INONDATION_S_074",
"storage_tags": ["VECTEUR"]
}
},
"parameters": {
"srs": "epsg:2154",
"multigeom_layers": ["L_ZONAGE_INONDATION_S_074"]
}
}

@vbrinon
Copy link

vbrinon commented Jul 2, 2024

Bonjour,

L'éxécution 8b720d96-99ff-4ec6-a093-07f33e667bca est en succès et a généré une nouvelle stored_data 9bacb23a-3a7f-4c2d-8659-d1e19580f090 qui est bien au statut GENERATED.

Le passage en shapefile a donc bien résolu le problème.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api About API Warehouse bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants