Paris, 15 mai 2025
La réplication logique est une machine complexe, la correction de bug est
parfois longue à la fois pour rendre le problème reproductible et le
corriger.
Un exemple récent est la correction de ce bug publié dans la version 17.5 de
PostgreSQL et qui a nécessité toute la persévérance et l’ingéniosité des
développeurs :
Éviter des pertes de données quand des opérations DDL qui ne posent pas de
verrous forts affectent les tables qui sont répliquées logiquement (Shlok
Kyal, Hayato Kuroda)
Les changements du catalogue causés par ces commandes DDL n’étaient pas
reflétés dans les processus de décodage des WAL. Le décodage qui suivait se
basait alors sur des données périmées, ce qui pouvait provoquer des
corruptions de données.