Re:Teleport: Postgres replicator in Go that works without su...
by pedrofranceschi on Thursday May 05, 2016 @10:01AM
(#11636151)
No, because changes are saved by triggers that run directly on the database. When the teleport instance is back up, those changes will be batched and transmitted.
[ Parent
| on HN ]
Re:Teleport: Postgres replicator in Go that works without su...
by zzzcpan on Thursday May 05, 2016 @10:16AM
(#11636264)
I think I get it now. Essentially your replica is always in an inconsistent state, you cannot ever guaranty for anything, that happened on one replica, to be present on another. It's mostly for backups, disaster recovery, when it is ok to lose some data, right?
Re:Teleport: Postgres replicator in Go that works without su...
by pedrofranceschi on Thursday May 05, 2016 @10:21AM
(#11636306)
No. Teleport installs triggers on all tables the first time it starts. After the first start, consistency is guaranteed because triggers will save every data mutation in a separate table (that teleport reads to generate batches for the target instance).
Re:Teleport: Postgres replicator in Go that works without su...
by zzzcpan on Thursday May 05, 2016 @10:27AM
(#11636361)
Yes, I understand that triggers will save every data mutation, but no matter what you do second replica is not going to see them synchronously. It's always behind and inconsistent, if first one dies - you lose some data.
EDIT: Maybe you should rename it to something like "trigger-based asynchronous replication", so people would get the right idea about the guarantees it provides.