This block, the data dictionary block, is found instorage/ndb/src/kernel/blocks/dbdict. Data dictionary information is replicated to allDICT blocks in the cluster. This is the only block other thanDBTC to which applications can send direct requests.
DBDICT is responsible for managing metadata (using the master data node) including the definitions for tables, columns, indexes, tablespaces, log files, log file groups, and other data objects.
This block is implemented in 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 (forNDB$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 forDbdict.DictLock.txt: Implementation notes: Describes locking of the master node'sDICTagainst schema operations.printSchemaFile.cpp: Contains the source for thendb_print_schema_file utility.Slave_AddTable.sfl: A signal log trace of a table creation operation forDBDICTon a nonmaster node.CreateTable.txt: Notes outlining the table creation process (dated).CreateTable.new.txt: Notes outlining the table creation process (updated version ofCreateTable.txt).Dbdict.hpp: Defines theDbdictclass; also creates theNDB$EVENTS_0table. 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 andNdbEventOperationobjects.Event.txt: A copy ofDbdict.txt.Master_AddTable.sfl: A signal log trace of a table creation operation forDBDICTon the master node.SchemaFile.hpp: Defines the structure of a schema file.