Spec-Zone .ru
спецификации, руководства, описания, API
|
The membership
table describes the view that each data node has of all the others
in the cluster, including node group membership, president node, arbitrator, arbitrator successor, arbitrator
connection states, and other information.
The following table provides information about the columns in the membership
table.
For each column, the table shows the name, data type, and a brief description. Additional information can be
found in the notes following the table.
Column Name | Type | Remarks |
---|---|---|
node_id |
integer | This node's node ID |
group_id |
integer | Node group to which this node belongs |
left node |
integer | Node ID of the previous node |
right_node |
integer | Node ID of the next node |
president |
integer | President's node ID |
successor |
integer | Node ID of successor to president |
succession_order |
integer | Order in which this node succeeds to presidency |
Conf_HB_order |
integer | - |
arbitrator |
integer | Node ID of arbitrator |
arb_ticket |
string | Internal identifier used to track arbitration |
arb_state |
Enumeration (see text) | Arbitration state |
arb_connected |
Yes or No |
Whether this node is connected to the arbitrator |
connected_rank1_arbs |
List of node IDs | Connected arbitrators of rank 1 |
connected_rank2_arbs |
List of node IDs | Connected arbitrators of rank 1 |
The node ID and node group ID are the same as reported by ndb_mgm -e "SHOW".
left_node
and right_node
are defined in terms of a
model that connects all data nodes in a circle, in order of their node IDs, similar to the ordering of the
numbers on a clock dial, as shown here:
In this example, we have 8 data nodes, numbered 5, 6, 7, 8, 12, 13, 14, and 15, ordered clockwise in a circle. We determine "left" and "right" from the interior of the circle. The node to the left of node 5 is node 15, and the node to the right of node 5 is node 6. You can see all these relationships by running the following query and observing the output:
mysql>SELECT node_id,left_node,right_node
->FROM ndbinfo.membership;
+---------+-----------+------------+| node_id | left_node | right_node |+---------+-----------+------------+| 5 | 15 | 6 || 6 | 5 | 7 || 7 | 6 | 8 || 8 | 7 | 12 || 12 | 8 | 13 || 13 | 12 | 14 || 14 | 13 | 15 || 15 | 14 | 5 |+---------+-----------+------------+8 rows in set (0.00 sec)
The designations "left" and "right" are used in the event log in the same way.
The president
node is the node viewed by the current node as responsible for
setting an arbitrator (see successor
column to become the new president. The succession_order
column shows the place in
the succession queue that the current node views itself as having.
In a normal MySQL Cluster, all data nodes should see the same node as president
,
and the same node (other than the president) as its successor
. In addition, the
current president should see itself as 1
in the order of succession, the successor
node should see itself as 2
, and so on.
All nodes should show the same arb_ticket
values as well as the same arb_state
values. Possible arb_state
values are ARBIT_NULL
, ARBIT_INIT
, ARBIT_FIND
, ARBIT_PREP1
, ARBIT_PREP2
,
ARBIT_START
, ARBIT_RUN
, ARBIT_CHOOSE
,
ARBIT_CRASH
, and UNKNOWN
.
arb_connected
shows whether this node is connected to the node shown as this node's
arbitrator
.
The connected_rank1_arbs
and connected_rank2_arbs
columns each display a list of 0 or more arbitrators having an ArbitrationRank
equal to 1, or to 2, respectively.
Both management nodes and API nodes are eligible to become arbitrators.