Intégration OSM locale
L'intégration applique les modifications approuvées au référentiel local osm2pgsql au moyen d'un lot OSC. Elle n'envoie rien à l'API OSM et ne remplace pas l'ingestion de réplication.
Déroulé d'exploitation
- Sélectionner les racines : versions approuvées et typées. Un curseur persistant permet aux exécutions plafonnées de parcourir les candidats sans rester toujours sur les premières racines bloquées.
- Préparer : résoudre dépendances et parents affectés, réconcilier les versions et construire un OSC cohérent. Des racines indépendantes peuvent être retenues malgré d'autres blocages.
- Contrôler : vérifier cible, style, référence et publication prévue. Le lanceur peut invoquer les contrôles d'exécution sans append.
- Exécuter : recontrôler le lot préparé, lancer osm2pgsql append, vérifier le résultat puis finaliser les enregistrements métier.
- Dériver : demander le découpage optionnel, dont le résultat est enregistré séparément.
L'entrée d'orchestration en exploitation est python/lbt-run-update.py. lbt-prepare-update.py, lbt-stage-update.py, lbt-execute-update.py et lbt-finalize-update.py fournissent les opérations de plus bas niveau. Ne mélangez pas des commandes ponctuelles avec une exécution planifiée active.
Politique des dépendances
Le déplacement d'un nœud peut modifier une voie et une relation sans changer la version propre de ces parents. La préparation doit donc examiner les enfants nécessaires et les parents affectés par ces enfants.
- Une dépendance soumise à vérification et encore en attente bloque les racines concernées.
- Une dépendance refusée n'est pas intégrée de force.
- Une dépendance sans changement surveillé peut être incluse après contrôle des versions, contenus et structures.
- Une suppression ne doit pas laisser un parent conservé référençant la primitive supprimée.
- Un contexte enregistré doit correspondre aux versions/contenus requis ; la dernière réponse OSM en ligne ne reproduirait pas nécessairement ce qui a été examiné.
Un PBF régional peut omettre des membres lointains de grandes relations. Les contextes manquants ou incohérents restent des blocages explicites. Ne désactivez pas le contrôle pour intégrer une structure incomplète.
Relations et publication
Toutes les relations n'ont pas de géométrie publiée. Des relations d'itinéraire peuvent répéter légitimement une voie dans leurs membres ordonnés ; il ne faut pas dédupliquer systématiquement ces listes. Les surfaces nécessitent leurs contrôles structurels et géométriques propres. Relations imbriquées et extraits incomplets doivent être évalués selon les contrôles pris en charge par l'exécuteur, sans déduire leur validité de la seule acceptation du fichier par osm2pgsql.
L'installation prise en charge utilise la version, la sortie et le style osm2pgsql documentés. Changer sortie, version, projection ou style constitue une modification de chaîne : ne substituez pas une commande append sans vérifier sa compatibilité avec la base créée et les contrôles.
Lire le rapport d'exécution
| Champ | Interprétation |
|---|---|
mode | check ou execute |
roots_selected, roots_retained, roots_blocked | Candidats approuvés et résultat de préparation |
objects | Primitives de l'OSC retenu, dépendances comprises |
partial | Certaines racines sélectionnées n'ont pas été retenues |
append_requested | Demande d'une exécution susceptible d'écrire les données |
execution_invoked | Appel de l'exécuteur enfant, y compris pour un contrôle |
commit_confirmed | Confirmation de la finalisation d'intégration |
outcome, next_action | Résultat global et suite opérationnelle |
Le code 2 est accepté par l'unité systemd fournie pour les blocages métier, y compris après succès partiel. Le code 1 indique un échec nécessitant les journaux. Un lot préparé ne suffit pas à prouver la réussite des contrôles : examinez aussi le résultat enfant.
Interruption et reprise
Conservez identifiant du lot, répertoire d'exécution, erreur standard et rapport de vérification. Inspectez un résultat incertain avant toute reprise. Finaliser après un append confirmé ne doit pas relancer un second append. Les outils refusent la relance automatique d'un lot déjà intégré.
Ne réparez pas une incertitude en supprimant le journal, en recréant un OSC sur des entrées modifiées ou en marquant les racines intégrées manuellement. Suivez l'aide --help des outils installés et le diagnostic enregistré. Le guide de dépannage liste les éléments à collecter.