MySQL 8.3.0
Source Code Documentation
Drop_tables_ctx Class Reference

Runtime context for DROP TABLES statement. More...

Public Types

enum  { NO_GTID_MANY_TABLE_GROUPS , NO_GTID_SINGLE_TABLE_GROUP , GTID_MANY_TABLE_GROUPS , GTID_SINGLE_TABLE_GROUP }
 In which situation regarding GTID mode and different types of tables to be dropped we are. More...
 

Public Member Functions

 Drop_tables_ctx (bool if_exists_arg, bool drop_temporary_arg, bool drop_database_arg)
 
bool has_base_atomic_tables () const
 
bool has_base_non_atomic_tables () const
 
bool has_tmp_trans_tables () const
 
bool has_tmp_trans_tables_to_binlog () const
 
bool has_tmp_non_trans_tables () const
 
bool has_tmp_non_trans_tables_to_binlog () const
 
bool has_any_nonexistent_tables () const
 
bool has_base_nonexistent_tables () const
 
bool has_tmp_nonexistent_tables () const
 
bool has_views () const
 
bool has_dropped_non_atomic () const
 
bool has_no_gtid_many_table_groups () const
 
bool has_no_gtid_single_table_group () const
 
bool has_gtid_many_table_groups () const
 
bool has_gtid_single_table_group () const
 

Public Attributes

const bool if_exists
 
const bool drop_temporary
 
const bool drop_database
 
Prealloced_array< Table_ref *, 1 > base_atomic_tables
 
Prealloced_array< Table_ref *, 1 > base_non_atomic_tables
 
Prealloced_array< Table_ref *, 1 > tmp_trans_tables
 
Prealloced_array< Table_ref *, 1 > tmp_trans_tables_to_binlog
 
Prealloced_array< Table_ref *, 1 > tmp_non_trans_tables
 
Prealloced_array< Table_ref *, 1 > tmp_non_trans_tables_to_binlog
 
Prealloced_array< Table_ref *, 1 > nonexistent_tables
 
Prealloced_array< Table_ref *, 1 > views
 
Prealloced_array< Table_ref *, 1 > dropped_non_atomic
 Base tables in SE which do not support atomic DDL which we managed to drop so far. More...
 
enum Drop_tables_ctx:: { ... }  gtid_and_table_groups_state
 In which situation regarding GTID mode and different types of tables to be dropped we are. More...
 

Detailed Description

Runtime context for DROP TABLES statement.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

In which situation regarding GTID mode and different types of tables to be dropped we are.

TODO: consider splitting into 2 orthogonal enum/bools.

Enumerator
NO_GTID_MANY_TABLE_GROUPS 
NO_GTID_SINGLE_TABLE_GROUP 
GTID_MANY_TABLE_GROUPS 
GTID_SINGLE_TABLE_GROUP 

Constructor & Destructor Documentation

◆ Drop_tables_ctx()

Drop_tables_ctx::Drop_tables_ctx ( bool  if_exists_arg,
bool  drop_temporary_arg,
bool  drop_database_arg 
)
inline

Member Function Documentation

◆ has_any_nonexistent_tables()

bool Drop_tables_ctx::has_any_nonexistent_tables ( ) const
inline

◆ has_base_atomic_tables()

bool Drop_tables_ctx::has_base_atomic_tables ( ) const
inline

◆ has_base_non_atomic_tables()

bool Drop_tables_ctx::has_base_non_atomic_tables ( ) const
inline

◆ has_base_nonexistent_tables()

bool Drop_tables_ctx::has_base_nonexistent_tables ( ) const
inline

◆ has_dropped_non_atomic()

bool Drop_tables_ctx::has_dropped_non_atomic ( ) const
inline

◆ has_gtid_many_table_groups()

bool Drop_tables_ctx::has_gtid_many_table_groups ( ) const
inline

◆ has_gtid_single_table_group()

bool Drop_tables_ctx::has_gtid_single_table_group ( ) const
inline

◆ has_no_gtid_many_table_groups()

bool Drop_tables_ctx::has_no_gtid_many_table_groups ( ) const
inline

◆ has_no_gtid_single_table_group()

bool Drop_tables_ctx::has_no_gtid_single_table_group ( ) const
inline

◆ has_tmp_non_trans_tables()

bool Drop_tables_ctx::has_tmp_non_trans_tables ( ) const
inline

◆ has_tmp_non_trans_tables_to_binlog()

bool Drop_tables_ctx::has_tmp_non_trans_tables_to_binlog ( ) const
inline

◆ has_tmp_nonexistent_tables()

bool Drop_tables_ctx::has_tmp_nonexistent_tables ( ) const
inline

◆ has_tmp_trans_tables()

bool Drop_tables_ctx::has_tmp_trans_tables ( ) const
inline

◆ has_tmp_trans_tables_to_binlog()

bool Drop_tables_ctx::has_tmp_trans_tables_to_binlog ( ) const
inline

◆ has_views()

bool Drop_tables_ctx::has_views ( ) const
inline

Member Data Documentation

◆ base_atomic_tables

Prealloced_array<Table_ref *, 1> Drop_tables_ctx::base_atomic_tables

◆ base_non_atomic_tables

Prealloced_array<Table_ref *, 1> Drop_tables_ctx::base_non_atomic_tables

◆ drop_database

const bool Drop_tables_ctx::drop_database

◆ drop_temporary

const bool Drop_tables_ctx::drop_temporary

◆ dropped_non_atomic

Prealloced_array<Table_ref *, 1> Drop_tables_ctx::dropped_non_atomic

Base tables in SE which do not support atomic DDL which we managed to drop so far.

◆ 

enum { ... } Drop_tables_ctx::gtid_and_table_groups_state

In which situation regarding GTID mode and different types of tables to be dropped we are.

TODO: consider splitting into 2 orthogonal enum/bools.

◆ if_exists

const bool Drop_tables_ctx::if_exists

◆ nonexistent_tables

Prealloced_array<Table_ref *, 1> Drop_tables_ctx::nonexistent_tables

◆ tmp_non_trans_tables

Prealloced_array<Table_ref *, 1> Drop_tables_ctx::tmp_non_trans_tables

◆ tmp_non_trans_tables_to_binlog

Prealloced_array<Table_ref *, 1> Drop_tables_ctx::tmp_non_trans_tables_to_binlog

◆ tmp_trans_tables

Prealloced_array<Table_ref *, 1> Drop_tables_ctx::tmp_trans_tables

◆ tmp_trans_tables_to_binlog

Prealloced_array<Table_ref *, 1> Drop_tables_ctx::tmp_trans_tables_to_binlog

◆ views

Prealloced_array<Table_ref *, 1> Drop_tables_ctx::views

The documentation for this class was generated from the following file: