Bonjour à tous, en examinant l’ajout de l’extension “pglogical” à notre base de données Postgres, je remarque certaines divergences entre la version de postgres installée et la version citée par les fichiers de modèle et de configuration de postgres.
La version de postgres actuellement installée est la v16.2 (publiée en février 2024), mais les fichiers de configuration sont tous encore associés à la v13, par exemple :
root@ip-172-31-62-223-app:/var/www/discourse# sudo -u postgres psql discourse
psql (16.2 (Debian 16.2-1.pgdg110+2), server 13.14 (Debian 13.14-1.pgdg110+2))
Type "help" for help.
discourse=# SHOW config_file;
config_file
-----------------------------------------
/etc/postgresql/13/main/postgresql.conf
(1 row)
ou le fichier postgres.template, qui ne va que jusqu’à la v13.
Ce n’est un problème pour moi qu’en ce moment car la bibliothèque pglogical se trouve dans les dossiers v16, mais pas dans les dossiers v13. J’ai essayé de créer des liens symboliques avec
for i in $(ls /usr/share/postgresql/16/extension/pglogical*); do ln -s $i /usr/share/postgresql/13/extension/$(basename $i); done
ln -s /usr/lib/postgresql/16/lib/pglogical.so /usr/lib/postgresql/13/lib/
mais cela conduit à cette erreur :
> FATAL: could not load library "/usr/lib/postgresql/13/lib/pglogical.so":/usr/lib/postgresql/13/lib/pglogical.so: undefined symbol: shmem_request_hook
Donc, les fichiers de bibliothèque ne sont pas un remplacement 1:1 entre les différentes versions de postgres.
En fin de compte, il semble y avoir un écart entre la version de postgres installée et la version que le lanceur docker pense construire.
Mon objectif final est d’installer pglogical, et il serait idéal de trouver une solution reproductible lors de la reconstruction du conteneur (c’est-à-dire des fichiers ou des lignes qui peuvent être facilement ajoutés aux fichiers de modèle). Je suis tout à fait disposé à faire davantage de travail DevOps nécessaire (car c’est une exigence pour mon organisation), mais je suis juste curieux de savoir si d’autres ont rencontré cet écart et ce qu’ils ont fait à ce sujet.
Merci de votre lecture !