PostgreSQL-BDR:部分节点在网络出现问题2小时后才开始复制
PostgreSQL-BDR: Some of the nodes starts to replicate only after 2 hours after network problems
我的设置是在 4 台配置相同的服务器上使用 PostgreSQL-BDR。
在网络出现问题(例如连接断开几分钟)后,一些节点会在几秒后再次开始复制,但其他节点在 2 小时后才开始复制。
我找不到任何配置开关来设置复制的时间。
我在监视复制槽时看到以下几行:
slot_name | database | active | retained_bytes
bdr_16385_6255603470654648304_1_16385__ | mvcn | t | 56
bdr_16385_6255603530602290326_1_16385__ | mvcn | f | 17640
bdr_16385_6255603501002479656_1_16385__ | mvcn | f | 17640
知道为什么会这样吗?
问题是默认的 tcp_keepalive_time 是 7200 秒,正好是 2 小时,所以更改 /proc/sys/net/ipv4/tcp_keepalive_time 的值解决了这个问题。
我的设置是在 4 台配置相同的服务器上使用 PostgreSQL-BDR。
在网络出现问题(例如连接断开几分钟)后,一些节点会在几秒后再次开始复制,但其他节点在 2 小时后才开始复制。
我找不到任何配置开关来设置复制的时间。
我在监视复制槽时看到以下几行:
slot_name | database | active | retained_bytes
bdr_16385_6255603470654648304_1_16385__ | mvcn | t | 56
bdr_16385_6255603530602290326_1_16385__ | mvcn | f | 17640
bdr_16385_6255603501002479656_1_16385__ | mvcn | f | 17640
知道为什么会这样吗?
问题是默认的 tcp_keepalive_time 是 7200 秒,正好是 2 小时,所以更改 /proc/sys/net/ipv4/tcp_keepalive_time 的值解决了这个问题。