Skip to main content

Module hton

Module hton 

Source
Expand description

Engine-level handlerton interface.

Where StorageEngine is per-table, the handlerton is a per-engine singleton: one instance serves every connection. An engine opts into engine-level behaviour by implementing Handlerton and registering it with register_handlerton. Engines that need nothing beyond table handling skip registration and keep the zero-config defaults.

Structs§

CostConstants
Engine-specific cost constants the handlerton returns from get_cost_constants.
HtonCapabilities
The set of engine-level features a Handlerton opts into.
HtonFlags
A set of handlerton flags (the HTON_* bits from sql/handler.h).
SecondaryEngineOptimizerRequest
The pair the secondary engine returns from Handlerton::secondary_engine_check_optimizer_request.
StatPrintSink
A handle that lets a Handlerton::show_status implementation push one or more rows of engine status back to MySQL. Bound to the connection and stat_print_fn MySQL handed in, so it does not outlive the callback.
TableStatistics
Snapshot of the per-table statistics MySQL stores in ha_statistics.
TablespaceStatistics
Snapshot of the numeric fields of MySQL’s ha_tablespace_statistics.
XaRecoverCollector
Bounded writer handle into the MySQL-owned XA_recover_txn[] array the server passes to recover. The engine pushes prepared XIDs via Self::add; the shim writes each one into the next free slot and sets the slot’s mod_tables pointer to NULL (engines do not yet expose the modified-tables list). Self::filled is what the FFI callback returns to MySQL as the recovered-transaction count.
XaStateListCollector
Writeable handle into MySQL’s Xa_state_list. The engine constructs XIDs from its persistent storage and pushes each (XID, state) pair via Self::add; the shim copies the data into a XID instance and calls Xa_state_list::add on the underlying map.

Enums§

BinlogCommand
The DDL command flavour MySQL is logging through the binary log.
BinlogFunc
The binlog-related function MySQL is asking the engine to perform.
DictInitMode
How a data-dictionary backend should initialise its on-disk files.
DictRecoveryMode
Mode for data-dictionary recovery during startup.
HaCloneMode
Mode for starting a clone operation.
HaCloneType
Clone-transfer type the source engine should perform.
HaNotificationType
Whether the notification fires before (pre) or after (post) the event.
HaPanicFunction
The reason MySQL is invoking the engine-level panic callback.
HaStatType
Which subset of engine status MySQL wants for SHOW ENGINE <name> STATUS.
RecoverXaState
State of an externally coordinated XA transaction reported by the engine to the transaction coordinator during recovery.
SecondaryEngineGraphSimplificationRequest
What the secondary engine asks the hypergraph optimizer to do next.
SelectExecutedIn
Which engine MySQL executed a SELECT on, exposed to the post-select notification.
TablespaceType
The classification of a data-dictionary tablespace.
TsCommandType
The tablespace DDL command MySQL is asking the engine to validate.

Traits§

Handlerton
The engine-level handlerton interface: the capabilities and handlerton struct fields that apply to the engine as a whole rather than to a single table.
TxnSession
The transaction state for one connection.