counters table provides running totals of
events such as reads and writes for specific kernel blocks and
data nodes. Counts are kept from the most recent node start or
restart; a node start or restart resets all counters on that
node. Not all kernel blocks have all types of counters.
counters table contains the following
The data node ID
Name of the associated NDB kernel block (see NDB Kernel Blocks).
The counter's internal ID number; normally an integer between 1 and 10, inclusive.
The name of the counter. See text for names of individual counters and the NDB kernel block with which each counter is associated.
The counter's value
Each counter is associated with a particular NDB kernel block.
OPERATIONS counter is associated with the
DBLQH (local query handler)
kernel block. A primary-key read counts as one operation, as
does a primary-key update. For reads, there is one operation in
DBLQH per operation in
DBTC. For writes, there is
one operation counted per replica.
RANGE_SCANS counters are associated with the
co-ordinator) kernel block.
LOCAL_READS are primary-key operations using
a transaction coordinator in a node that also holds the primary
replica of the record.
READS counter includes all reads.
LOCAL_READS includes only those reads of the
primary replica on the same node as this transaction
SIMPLE_READS includes only those
reads in which the read operation is the beginning and ending
operation for a given transaction. Simple reads do not hold
locks but are part of a transaction, in that they observe
uncommitted changes made by the transaction containing them but
not of any other uncommitted transactions. Such reads are
“simple” from the point of view of the TC block;
since they hold no locks they are not durable, and once
DBTC has routed them to the
relevant LQH block, it holds no state for them.
ATTRINFO keeps a count of the number of times
an interpreted program is sent to the data node. See
NDB Protocol Messages, for more
ATTRINFO messages in the
SCAN_ROWS_RETURNED counters are associated
push-down join) kernel block.
block_instance columns provide, respectively,
the applicable NDB kernel block name and instance number. You
can use these to obtain information about specific threads from
A number of counters provide information about transporter overload and send buffer sizing when troubleshooting such issues. For each LQH instance, there is one instance of each counter in the following list:
LQHKEY_OVERLOAD: Number of primary key requests rejected at the LQH block instance due to transporter overload
LQHKEY_OVERLOAD_TC: Count of instances of
LQHKEY_OVERLOADwhere the TC node transporter was overloaded
LQHKEY_OVERLOAD_READER: Count of instances of
LQHKEY_OVERLOADwhere the API reader (reads only) node was overloaded.
LQHKEY_OVERLOAD_NODE_PEER: Count of instances of
LQHKEY_OVERLOADwhere the next backup data node (writes only) was overloaded
LQHKEY_OVERLOAD_SUBSCRIBER: Count of instances of
LQHKEY_OVERLOADwhere a event subscriber (writes only) was overloaded.
LQHSCAN_SLOWDOWNS: Count of instances where a fragment scan batch size was reduced due to scanning API transporter overload.