![]() |
MySQL 8.0.43
Source Code Documentation
|
This class keeps the context of transactional DDL statements. More...
#include <sql_class.h>
Public Member Functions | |
| Transactional_ddl_context (THD *thd) | |
| ~Transactional_ddl_context () | |
| void | init (dd::String_type db, dd::String_type tablename, const handlerton *hton) |
| Initialize the transactional ddl context when executing CREATE TABLE ... SELECT command with engine which supports atomic DDL. More... | |
| bool | inited () |
| void | rollback () |
| Remove the table share used while creating the table, if the transaction is being rolledback. More... | |
| void | post_ddl () |
| End the transactional context created by calling post ddl hook for engine on which table is being created. More... | |
Private Attributes | |
| THD * | m_thd {nullptr} |
| const handlerton * | m_hton {nullptr} |
| dd::String_type | m_db {} |
| dd::String_type | m_tablename {} |
This class keeps the context of transactional DDL statements.
Currently only CREATE TABLE with START TRANSACTION uses this context.
|
inlineexplicit |
|
inline |
| void Transactional_ddl_context::init | ( | dd::String_type | db, |
| dd::String_type | tablename, | ||
| const handlerton * | hton | ||
| ) |
Initialize the transactional ddl context when executing CREATE TABLE ... SELECT command with engine which supports atomic DDL.
| db | Schema name in which table is being created. |
| tablename | Table name being created. |
| hton | Handlerton representing engine used for table. |
|
inline |
| void Transactional_ddl_context::post_ddl | ( | ) |
End the transactional context created by calling post ddl hook for engine on which table is being created.
This is done after transaction rollback and commit.
| void Transactional_ddl_context::rollback | ( | ) |
Remove the table share used while creating the table, if the transaction is being rolledback.
|
private |
|
private |
|
private |