Compatibility changes#

PGD 5の変更の多くは、PGD 4またはPGD 3.7との下位互換性がありません。

接続ルーティング#

HARP Managerはもう存在しません。これは、新しい 接続管理 構成に置き換えられました。

HARPプロキシは、同様に機能するPGDプロキシに置き換えられます。これは、非推奨の機能を削除し、接続管理構成を介して構成されます。

Commit At Most Once#

CAMO構成は、 コミットスコープ を介して実行されるようになりました。 bdr.camo_pairs カタログおよび関連する操作ファンクションは、もう存在しません。 bdr.enable_camo GUCは削除されました。 synchronous_replication_availability GUCはCAMOに影響を与えなくなりました。コミットスコープのDEGRADE ON ... TO ASYNC 句を使用します。

Eager All-Node Replication#

global スコープは存在しません。同じ動作のスコープを作成するには、

グループコミット を使用します。

SELECT bdr.add_commit_scope(
    commit_scope_name := eager_scope,
    origin_node_group := top_group,
    rule := ALL (top_group) GROUP COMMIT (conflict_resolution = eager, commit_decision = raft) ABORT ON (timeout = 60s),
    wait_for_ready := true
);

bdr.global_commit_timeout GUCは削除されました。コミットスコープにはABORT ON 句を使用します。

遅延制御#

CAMOやEagerと同様に、Lag Control構成も コミットスコープ に移動して、より柔軟な耐久性構成を実現します。

カタログ#

  • bdr.workers は、 worker_commit_timestamp のようなワーカー固有の情報を表示しなくなりました。

  • bdr.worker_errors は非推奨であり、情報のほとんどが失われます。

  • bdr.state_journal_details は非推奨であり、情報のほとんどが失われます。

  • bdr.event_summary は、 bdr.worker_errors およびbdr.state_journal_details をRaftロールの変更などの追加情報に置き換えます。

  • テーブルbdr.node_catchup_info に、よりわかりやすい方法で情報を表示するユーザーコンシューマブルビューbdr.node_catchup_info_details があります。

  • Witnessノードは、レプリケートするレプリケーションセットではなく、 bdr.node_summary のnode_kind 値を使用して区別されます。

  • すべてのRaftコンセンサス関連のテーブルとファンクションは、マルチプルのRaftインスタンスサブグループRaftをサポートするように調整されました。

  • 情報がテーブルに保存されなくなったため、 bdr.node_pre_commit ビューと基になるテーブルが削除されました。

  • bdr.commit_decisions ビューが追加され、 bdr.node_pre_commit ビューが置き換えられました。

  • その背後にあるメカニズムが一般化されたため、複数の内部自動パーティションテーブルがtascmgrテーブルに置き換えられました。

  • bdr.network_monitoring ビューは、基になるテーブルおよびファンクションとともに削除されました。

  • カタログ で説明しているように、多くのカタログが追加され、一部には新しい列があります。これらは厳密には破壊的な変更ではありませんが、アップグレードの際に確認することをお勧めします。