PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 08/03/2022 16:55:03

Indaa
Membre

Failover replication logique (debezium)

Bonjour à tous,

Nous venons d'implementer l'outil debezium avec pgoutput logical decoder
Postgresql 12.9
Master / standby avec replication physique  (wal stocké sur s3)
replication logique activé pour utilisation de debezium
creation d'un replication slot pour debezium

J'aimerai ne perdre aucun event lors d'un éventuel failover/switchover. (95% des cas sont des bascules programmées)
Je pars sur une méthode qui consiste à recopier à l'identique mon replication_slot sur la futur master afin de garder le meme restart_lsn et confirmed_flush_lsn

Voici mes étapes lors d'une bascale:

=> stop Master
=> Copy du fichier state de pg_replslot/* sur mon futur master
=> Restart du futur master (pour prendre en compte le replication_slot)
=> Promote
=> Ici je retrouve mon replication_slot avec les meme valeurs restart_lsn et confirmed_flush_lsn
=> Restart de DEBEZIUM avec un erreur


Voici l'erreur =>  Caused by: org.postgresql.util.PSQLException: ERROR: requested WAL segment 000000060000001C000000E2 has already been removed


Pouvez m'expliquer cette erreur ?
Pouvez m'indiquer si est possible d'y remédier facilement ?


PS: j'ai pu résoudre cette erreur en récupérant ce wal manquant et en le copiant dans pg_wal

Hors ligne

#2 08/03/2022 18:48:18

rjuju
Administrateur

Re : Failover replication logique (debezium)

Bonjour,

Tout d'abord, pourquoi utiliser debezium et de la réplication logique si vous utiliez déjà une réplication physique ?  Veuillez noter que je ne connais strictement rien à debezium, à part avoir entendu parler du nom plusieurs fois, à chaque fois suivi d'une quantité impressionnante de problèmes qui ont suivi.

Hors ligne

#3 09/03/2022 12:08:54

Indaa
Membre

Re : Failover replication logique (debezium)

Debezium est un outil de change data capture !
Pour l'utiliser il faut forcement utiliser de la réplication logique

Hors ligne

Pied de page des forums