Viewing PGD topology#
Listing PGD groups#
Using pgd-cli#
Use the pgd-cli show-groups command to list all groups in the
PGD cluster:
pgd show-groups
Group Group ID Type Parent Group Location Raft Routing Write Leader
----- -------- ---- ------------ -------- ---- ------- ------------
bdrgroup 1360502012 global true false
group_a 3618712053 data bdrgroup a true true bdr-a1
group_b 402614658 data bdrgroup b true true bdr-b1
group_c 2808307099 data bdrgroup c false false
group_so 2123208041 subscriber-only bdrgroup c false false
Using SQL#
The following simple query lists all the PGD node groups of which the current node is a member. It currently returns only one row from
SELECT node_group_name
FROM bdr.local_node_summary;
You can display the configuration of each node group using a more complex query:
SELECT g.node_group_name
, ns.pub_repsets
, ns.sub_repsets
, g.node_group_default_repset AS default_repset
, node_group_check_constraints AS check_constraints
FROM bdr.local_node_summary ns
JOIN bdr.node_group g USING (node_group_name);
Listing nodes in a PGD group#
Using pgd-cli#
Use the show-nodes command to list all nodes in the PGD cluster:
pgd show-nodes
Node Node ID Group Type Current State Target State Status Seq ID
---- ------- ----- ---- ------------- ------------ ------ ------
bdr-a1 3136956818 group_a data ACTIVE ACTIVE Up 6
bdr-a2 2133699692 group_a data ACTIVE ACTIVE Up 3
logical-standby-a1 1140256918 group_a standby STANDBY STANDBY Up 9
witness-a 3889635963 group_a witness ACTIVE ACTIVE Up 7
bdr-b1 2380210996 group_b data ACTIVE ACTIVE Up 1
bdr-b2 2244996162 group_b data ACTIVE ACTIVE Up 2
logical-standby-b1 3541792022 group_b standby STANDBY STANDBY Up 10
witness-b 661050297 group_b witness ACTIVE ACTIVE Up 5
witness-c 1954444188 group_c witness ACTIVE ACTIVE Up 4
subscriber-only-c1 2448841809 group_so subscriber-only ACTIVE ACTIVE Up 8
Use grep with the group name to filter the list to a specific group:
pgd show-nodes | grep group_b
bdr-b1 2380210996 group_b data ACTIVE ACTIVE Up 1
bdr-b2 2244996162 group_b data ACTIVE ACTIVE Up 2
logical-standby-b1 3541792022 group_b standby STANDBY STANDBY Up 10
witness-b 661050297 group_b witness ACTIVE ACTIVE Up 5
Using SQL#
You can extract the list of all nodes in a given node group (such as
mygroup ) from the bdr.node_summary ` view. For example:
SELECT node_name AS name
, node_seq_id AS ord
, peer_state_name AS current_state
, peer_target_state_name AS target_state
, interface_connstr AS dsn
FROM bdr.node_summary
WHERE node_group_name = mygroup;
The read-only state of a node, as shown in the current_state or in
the target_state query columns, is indicated as STANDBY .