2016-09-16 69 views
1

当复制客户端能够成功存储数据时,复制客户端是否有办法说出来,还是PostgreSQL正在将待处理数据传输到客户端,以及数据离开网络接口时它会被视为已交付?PostgreSQLs逻辑解码/复制是否有类似ACK的机制?

我认为客户有机会说“ACK - 我得到了数据”,但我似乎无法在任何地方找到此...我只是想知道如果客户端无法存储数据(例如由于电源故障) - 是否有办法从Postgres再次获取它?

一般这里https://www.postgresql.org/docs/9.5/static/logicaldecoding.html

回答

1

信息,我会回答我的问题:

做更多的阅读后,我可以说有ACK-样的机制存在。

在某些情况下(例如,间隔时间),服务器会要求逻辑复制消费者报告最后一块持久数据(即刷新到磁盘或类似数据)。然后,只有服务器才会将数据视为给定的复制通道的报告点。