ALTER COLUMN en Logical Replication

From: Ruben Fitó <r(dot)fito(at)ubiquat(dot)com>
To: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: ALTER COLUMN en Logical Replication
Date: 2021-04-07 05:48:49
Message-ID: CANiYpQzyqx_6rgwouLgwUmbPyZgChduYvhKO=rL58bUEekWxEw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Buenos días.

Tenemos una infraestructura de bases de datos donde disponemos de una
replicación lógica en cascada:

[master] -> LR -> [esclavo 1] -> LR -> [esclavo 2]

Ahora nos vemos en la necesidad de hacer un ALTER COLUMN en una de las
tablas.

Cómo deberíamos proceder para que no se pierdan datos y no se pare la
sincronización?

Habíamos pensado en:

- No realizar ningún INSERT/UPDATE en [master] mientras se hacen los
siguiente cambios:
- [master] : ALTER TABLE xxxxx alter column xxx type varchar(21) using
cast(xxx as varchar);
- [ esclavo 1 ] : ALTER TABLE xxxxx alter column xxx type varchar(21)
using cast(xxx as varchar);
- [ esclavo 2] : ALTER TABLE xxxxx alter column xxx type varchar(21)
using cast(xxx as varchar);
- Iniciar de nuevo los INSERT/UPDATES en [master].

¿Cómo lo ven?

Gracias de antemano.

Un saludo.
--
*Ruben Fitó *
Software Engineer
[image: Ubiquat Technologies, SL]
r(dot)fito(at)ubiquat(dot)com <j(dot)catarineu(at)ubiquat(dot)com>
www.ubiquat.com
Tota la informació continguda en aquest document i arxius adjunts és
CONFIDENCIAL protegida per llei de secret comercial. Si l'ha rebut per
error, si us plau elimini'l i posi's en contacte amb l'emissor.

All information contained in this document and any attachments are
CONFIDENTIAL and protected under trade secret laws. If you receive this
message by mistake, please delete it and notify it immediately to the
sender.

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Ruben Fitó 2021-04-07 06:50:00 Re: ALTER COLUMN en Logical Replication
Previous Message Yessica Brinkmann 2021-04-05 12:44:56 Re: pgbench cliente - servidor.