This block, the data dictionary block, is found in
storage/ndb/src/kernel/blocks/dbdict. Data
dictionary information is replicated to all
DICT blocks in the cluster. This is the only
block other than DBTC to which applications
can send direct requests. DBDICT is
responsible for managing metadata (via the cluster's master
node) such as table and index definitions, as well as many Disk
Data operations. This block contains the following files:
CreateIndex.txt: Contains notes about
processes for creating, altering, and dropping indexes and
triggers.
Dbdict.cpp: Implements structure for
event metadata records (for
NDB$EVENTS_0), as well as methods for
system start and restart, table and schema file handling,
and packing table data into pages. Functionality for
determining node status and handling node failures is also
found here. In addition, this file implements data and other
initialisation routines for Dbdict.
DictLock.txt: Implementation notes:
Describes locking of the master node's
DICT against schema operations.
printSchemaFile.cpp: Contains the
source for the ndb_print_schema_file
utility, described in
ndb_print_schema_file — Print NDB Schema File Contents.
Slave_AddTable.sfl: A signal log trace
of a table creation operation for DBDICT
on a nonmaster node.
CreateTable.txt: Notes outlining the
table creation process (dated).
CreateTable.new.txt: Notes outlining
the table creation process (updated version of
CreateTable.txt).
Dbdict.hpp: Defines the
Dbdict class; also creates the
NDB$EVENTS_0 table. Also defines a number
of structures such as table and index records, as well as
for table records.
DropTable.txt: Implementation notes for
the process of dropping a table.
Dbdict.txt: Implementation notes for
creating and dropping events and
NdbEventOperation objects.
Event.txt: A copy of
Dbdict.txt.
Master_AddTable.sfl: A signal log trace
of a table creation operation for DBDICT
on the master node.
SchemaFile.hpp: Defines the structure
of a schema file.
This block is implemented as the Dbdict
class, defined in
storage/ndb/src/kernel/blocks/dblqh/Dbdict.hpp.
