Voici la documentation : https://geoplateforme.pages.gpf-tech.ign.fr/documentation

Skip to content

Ajout mécanisme de vérification de la fin de téléchargement des graphes

Le ticket IGNGPF-2685 a remonté une instabilité des publications lorsque plusieurs pods sont présents.

En effet il est possible qu'un pod soit en train de télécharger les graphes sur le NAS-HA (partagé par tout les pods) mais qu'un autre pod considère que le téléchargement est terminé.

  1. Un pod est en cours de téléchargement du graphe : il a ajouté le fichier <stored_data_id>.md5 et le téléchargement est en cours
  2. Un pod vérifie la présence et le contenu du fichier <stored_data_id>.md5 => le hash est correct. Il considère que les graphes sont disponibles
  3. Ce pod poursuit la publication
  4. Le service Road2 retourne une erreur car les fichiers ne sont pas encore téléchargés

En plus de la vérification du hash du fichier .md5 il est nécessaire d'ajouter un mécanisme de vérification du fin du téléchargement.

  1. Un pod vérifie si le fichier <stored_data_id>.md5 est présent et que le hash est valide
  2. Un téléchargement est nécessaire : un fichier download_status.txt est créé dans ${ROAD2-GRAPH-DATA-DIR}/data/<stored_data_id>
  3. Le statut DOWNLOADING est écrit dans le fichier.
  4. En fin de téléchargement, le fichier est modifié pour indiquer le statut FINISHED

Pour les pods qui n'effectuent pas le téléchargement:

  1. Le pod vérifie si le fichier <stored_data_id>.md5 est présent et que le hash est valide
  2. Le téléchargement n'est pas nécessaire
  3. Le contenu du fichier download_status.txt est vérifié périodiquement (attente de une seconde entre chaque vérification)
  4. Si le statut est DOWNLOADING on attend une seconde
  5. Si le statut est FINISHED => les données sont disponibles, on continue la publication
Modification effectuée par Julien Moura