EDB 很高興地宣布 PG 故障轉移槽 (pg_failover_slots) 的發布。 此資料庫擴充功能以 PostgreSQL 許可證下的開源軟體形式發布,適用於在 Postgres 資料庫上具有邏輯複製發布且這些資料庫也是串流複製架構的一部分的任何人。
當邏輯複製發布者是物理串流複製架構的一部分,並且新的備用伺服器升級為主要伺服器時,PG 故障轉移槽避免了邏輯複製訂閱者重新播種其邏輯複製表的需求。
由於邏輯複製使用的複製槽僅在主要節點上維護,因此下游訂閱者在新的升級主要節點上創建槽之前,將不會收到來自新升級主要節點的任何新更改。 從新升級的備用伺服器獲取邏輯複製更改是不安全的,因為包含訂閱者已確認接收哪些數據以及哪些日誌數據仍需要為訂閱者保留的信息將會丟失,從而導致數據中出現未知的間隙。 PG 故障轉移槽通過以下初始版本中的功能,使邏輯複製槽可以在物理故障轉移中使用: * 將任何缺少的複製槽從主要節點複製到備用節點 * 從備用節點中刪除主要節點上未找到的任何槽 * 定期同步備用節點上槽的位置(基於主要節點) * 確保選定的備用伺服器在任何邏輯槽 walsender 可以將數據發送到消費者之前收到數據