etalab / transport-site

Rendre disponible, valoriser et améliorer les données transports
https://transport.data.gouv.fr
190 stars 29 forks source link

Valider des fichiers > 10 Mo #2428

Open AntoineAugusti opened 2 years ago

AntoineAugusti commented 2 years ago

On a actuellement une limite qui empêche la validation de gros fichiers > 10 Mo, introduite dans https://github.com/etalab/transport-site/pull/2041 pour des problématiques de temps d'exécution/de consommation de ressources.

@Miryad3108 a reporté ne pas pouvoir valider un fichier de 195 Mo (la base nationale des aménagements cyclables provenant d'OSM) en utilisant un outil de validation à la demande.

Le fichier envoyé est trop large et Plug rejette même la requête (voir exception).


Envisager si on veut gérer ces cas, si on veut travailler sur les messages d'erreurs.

thbar commented 2 years ago

Suggestion : pour la partie à la demande, on peut botter en touche pour le moment, indiquer qu'il y a une limite assumée, et mettre le lien vers l'outil (GitHub) pour inviter à faire un test manuellement (quitte à ce que des gens nous contactent pour nous demander de lever la limite si nécessaire).

AntoineAugusti commented 1 year ago

Je ferme mais il y a du nouveau.

Les validations passent désormais sur le worker, y compris pour de gros fichiers (> 300 Mo) en JSON Schema. Pas de changement pour la validation à la demande, il y a le plug qui rejette la requête mais pas un important volume d'erreurs ou de plaintes à ce sujet.

Le code mis dans la description sera supprimée car antérieur à la multi-validation.

thbar commented 1 year ago

Vu avec @Miryad3108 et @fchabouis sur https://transport.data.gouv.fr/datasets/amenagements-cyclables-france-metropolitaine, la validation (pas "à la demande") échoue à cause de la taille a priori. Il faudrait augmenter le plafond.

fchabouis commented 1 year ago

J'ai fait passer la validation sur cette ressource en augmentant le timeout HTTPoison à 3 minutes, mais du coup le worker crash. Je l'ai temporairement passé à 16Go de RAM et la validation est passée, là je l'ai redescendue à 4Go, mais le problème va se représenter dès que la ressource sera mise à jour.

J'ai jeté un coup d'oeil à Exonerate et la validation tourne instantanément. Mais ne semble donner que la première erreur recontrée, ce qui est moins utile.