From: | Jaime Soler <jaime(dot)soler(at)gmail(dot)com> |
---|---|
To: | gustavo_vaccaro(at)fibertel(dot)com(dot)ar |
Cc: | pgsql-es-ayuda(at)lists(dot)postgresql(dot)org |
Subject: | Re: Replicacion con Postgres 10 |
Date: | 2017-10-29 20:47:25 |
Message-ID: | CAKVUGgR0Lk3RCWQ0d-q0bBfkTM2wEzf74RJv070R9oBO7+0n7Q@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
La versión de logical replication de v10 aún no implementa estrategias de
resolución de conflictos, para ello o te esperas a la v11 o usas pglogical
que sí lo tiene, a parte de más funcionalidades que con el tiempo pasarán
al core de postgresql
El 25 oct. 2017 12:35, "Gustavo Vaccaro" <gustavojosevaccaro(at)gmail(dot)com>
escribió:
> Jaime,
>
> gracias por tus comentarios.
>
> Hice tantas pruebas que no me di cuenta que estaba trabajando con una
> vista.
>
> Saludos
>
> Gustavo J. Vaccaro
> http://www.gjv.com.ar
>
> El 25/10/2017 a las 4:09, Jaime Casanova escribió:
>
> 2017-10-24 7:06 GMT-05:00 Gustavo Vaccaro <gustavojosevaccaro(at)gmail(dot)com> <gustavojosevaccaro(at)gmail(dot)com>:
>
>
> Hola,
>
> ayer hice una simulacion de replicacion con Postgres 10.
> Instale dos server (virtuales) con sus respectivos postgres, a uno le puse una base de datos con datos cargados y a la otra solo la
> estructura (sin datos).
> Hice todos los pasos para crear la replicacion (publicacion y suscripcion) y funciono perfecto.
> Me asombro lo facil que es y lo bien que funciona.
>
>
>
> que bueno que opines eso, se lo haré saber a mis compañeros de
> 2ndQuadrant que desarrollaron esta característica
>
>
> Todos los cambios son replicados sin problemas hasta que force un conflicto.
> Di de alta un registro en la base de datos que tiene la suscripcion y despues lo di de alta en la publicacion.
> El log me indica que la llave ya existe (el registro existe) y por lo tanto se detiene la replicacion.
>
> Mis preguntas son:
>
> 1) ¿Tengo alguna funcion o consulta que me permita detectar los conflictos sin mirar el log?
>
>
>
> no, la replicación lógica no pretende permitir escrituras en el origen
> y en la réplica. para eso existe BDR que provee replicación
> bi-direccional y resolución de conflictos
>
>
> 2) ¿Como hago para que continue la replicacion?
> La respuesta simple es eliminar el registro que de la suscripcion.
> Pero queria ver si se podia saltear la instruccion o algo parecido.
> Encontre esta funcion pg_replication_origin_advance(node_name text, lsn pg_lsn) pero no se como pasar el parametro lsn.
> Probe con este formato pg_replication_origin_status('tdf'::text, '0/31CFECD8'::pg_lsn) y me tira el error
> "no existe la función pg_replication_origin_status(text, pg_lsn)"
>
>
>
> eso es porque pg_replication_origin_status es una vista, no una función. prueba:
> select * from pg_replication_origin_status;
>
>
>
>
>
>
> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> Libre
> de virus. www.avg.com
> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
> <#m_-8306565589034680803_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Horacio Miranda | 2017-10-29 21:54:37 | Re: Informacion archivos base de datos |
Previous Message | Gerardo Herzig | 2017-10-27 21:50:52 | Re: Informacion archivos base de datos |