7.2 监控节点的增加/删除

BDR中节点的加入和剔除是异步的。 节点管理函数立即返回, 而并没有首先确保联接或部分操作已完成。

来看看当联接或部分的操作完成它有必要检查节点状态间接通过 bdr.bdr_nodes 或使用 helper 函数。

Helper 函数 bdr.bdr_node_join_wait_for_ready,调用时,将导致 PostgreSQL 会话暂停, 直到节点联接操作成功完成。以后会添加更过的函数用于辅助节点状态健康检查。 其他节点的状态检测可以 通过查询 bdr.bdr_nodes。

下面是一个示例的选择从指示一个节点是准备好的 bdr.bdr_nodes (r),一个节点已删除杀 (k) 和一个节点正在初始化 (i):

    SELECT * FROM bdr.bdr_nodes;
         node_sysid      | node_timeline | node_dboid | node_status | node_name |      node_local_dsn      |    node_init_from_dsn
    ---------------------+---------------+------------+-------------+-----------+--------------------------+--------------------------
     6125823754033780536 |             1 |      16385 | r           | node1     | port=5598 dbname=bdrdemo |
     6125823714403985168 |             1 |      16386 | k           | node2     | port=5599 dbname=bdrdemo | port=5598 dbname=bdrdemo
     6125847382076805699 |             1 |      16386 | i           | node3     | port=6000 dbname=bdrdemo | port=5598 dbname=bdrdemo
    (3 rows)

results matching ""

    No results matching ""