This is the logical cluster management block, and handles node
membership in the cluster via heartbeats.
QMGR is responsible for polling the data
nodes when a data node failure occurs and determining that the
node has actually failed and should be dropped from the cluster.
This block contains the following files, found in
storage/ndb/src/kernel/blocks/qmgr:
Qmgr.hpp.
Defines the Qmgr class and associated structures,
including those used in detection of node failure and
cluster partitioning.
QmgrInit.cpp.
Implements data and record initilization methods for
Qmgr, as well as its destructor.
QmgrMain.cpp.
Contains routines for monitoring of heartbeats,
detection and handling of “split-brain”
problems, and management of some startup phases.
timer.hpp.
Defines the Timer class, used by
NDB to keep strict timekeeping
independent of the system clock.
This block also assists in the early phases of data node startup.
The QMGR block is implemented by the
Qmgr class, whose definition is found in the
file
storage/ndb/src/kernel/blocks/qmgr/Qmgr.hpp.
