24#ifndef SQL_TABLESPACE_INCLUDED
25#define SQL_TABLESPACE_INCLUDED
92 const char *tablespace_name,
356 const LEX_STRING &undofile_name = {
nullptr, 0});
Execution class for ALTER TABLESPACE ... ADD DATAFILE ...
Definition: sql_tablespace.h:192
const LEX_STRING m_datafile_name
Definition: sql_tablespace.h:193
Sql_cmd_alter_tablespace_add_datafile(const LEX_STRING &tsname, const LEX_STRING &dfname, const Tablespace_options *options)
Creates execution class instance for add datafile statement.
Definition: sql_tablespace.cc:1062
bool execute(THD *) override
Execute this SQL statement.
Definition: sql_tablespace.cc:1067
Execution class for ALTER TABLESPACE ... DROP DATAFILE ...
Definition: sql_tablespace.h:214
Sql_cmd_alter_tablespace_drop_datafile(const LEX_STRING &tsname, const LEX_STRING &dfname, const Tablespace_options *options)
Creates execution class instance for drop datafile statement.
Definition: sql_tablespace.cc:1153
const LEX_STRING m_datafile_name
Definition: sql_tablespace.h:215
bool execute(THD *) override
Execute this SQL statement.
Definition: sql_tablespace.cc:1158
Execution class for ALTER TABLESPACE ... RENAME TO ...
Definition: sql_tablespace.h:236
bool execute(THD *) override
Execute this SQL statement.
Definition: sql_tablespace.cc:1241
const LEX_STRING m_new_name
Definition: sql_tablespace.h:237
Sql_cmd_alter_tablespace_rename(const LEX_STRING &old_name, const LEX_STRING &new_name)
Creates execution class instance for rename statement.
Definition: sql_tablespace.cc:1237
Execution class for ALTER TABLESPACE ... tablespace_options.
Definition: sql_tablespace.h:172
Sql_cmd_alter_tablespace(const LEX_STRING &ts_name, const Tablespace_options *options)
Creates execution class instance for plain alter tablespace (modifying options).
Definition: sql_tablespace.cc:911
bool execute(THD *thd) override
Execute this SQL statement.
Definition: sql_tablespace.cc:915
Execution class for ALTER UNDO TABLESPACE.
Definition: sql_tablespace.h:281
const Tablespace_options * m_options
Definition: sql_tablespace.h:286
const LEX_STRING m_datafile_name
Definition: sql_tablespace.h:284
const ts_alter_tablespace_type m_at_type
Definition: sql_tablespace.h:285
const LEX_STRING m_undo_tablespace_name
Definition: sql_tablespace.h:283
bool execute(THD *) override
Execute this SQL statement.
Definition: sql_tablespace.cc:1537
Sql_cmd_alter_undo_tablespace(const ts_command_type cmd_type, const LEX_STRING &utsname, const LEX_STRING &dfname, const Tablespace_options *options, ts_alter_tablespace_type at_type=TS_ALTER_TABLESPACE_TYPE_NOT_DEFINED)
Creates execution class instance for undo tablespace statements.
Definition: sql_tablespace.cc:1522
const ts_command_type m_cmd
Definition: sql_tablespace.h:282
enum_sql_command sql_command_code() const override
Return the command code for this statement.
Definition: sql_tablespace.cc:1616
Execution class for CREATE TABLESPACE ... ADD DATAFILE ...
Definition: sql_tablespace.h:130
bool m_auto_generate_datafile_name
Definition: sql_tablespace.h:133
Sql_cmd_create_tablespace(const LEX_STRING &tsname, const LEX_STRING &dfname, const LEX_STRING &lfgname, const Tablespace_options *options)
Creates execution class instance for create tablespace statement.
Definition: sql_tablespace.cc:452
const LEX_STRING m_datafile_name
Definition: sql_tablespace.h:131
const LEX_STRING m_logfile_group_name
Definition: sql_tablespace.h:132
bool execute(THD *) override
Execute this SQL statement.
Definition: sql_tablespace.cc:460
Execution class for CREATE UNDO TABLESPACE.
Definition: sql_tablespace.h:254
const ts_command_type m_cmd
Definition: sql_tablespace.h:255
const LEX_STRING m_datafile_name
Definition: sql_tablespace.h:257
const Tablespace_options * m_options
Definition: sql_tablespace.h:258
enum_sql_command sql_command_code() const override
Return the command code for this statement.
Definition: sql_tablespace.cc:1518
Sql_cmd_create_undo_tablespace(const ts_command_type cmd_type, const LEX_STRING &utsname, const LEX_STRING &dfname, const Tablespace_options *options)
Creates execution class instance for undo tablespace statements.
Definition: sql_tablespace.cc:1382
bool execute(THD *) override
Execute this SQL statement.
Definition: sql_tablespace.cc:1390
const LEX_STRING m_undo_tablespace_name
Definition: sql_tablespace.h:256
Definition: sql_cmd_ddl.h:29
Execution class for DROP TABLESPACE ...
Definition: sql_tablespace.h:156
bool execute(THD *) override
Execute this SQL statement.
Definition: sql_tablespace.cc:661
Sql_cmd_drop_tablespace(const LEX_STRING &tsname, const Tablespace_options *options)
Creates execution class instance for drop tablespace statement.
Definition: sql_tablespace.cc:657
Execution class for DROP UNDO TABLESPACE.
Definition: sql_tablespace.h:310
const LEX_STRING m_datafile_name
Definition: sql_tablespace.h:313
const Tablespace_options * m_options
Definition: sql_tablespace.h:314
const ts_command_type m_cmd
Definition: sql_tablespace.h:311
bool execute(THD *) override
Execute this SQL statement.
Definition: sql_tablespace.cc:1628
Sql_cmd_drop_undo_tablespace(const ts_command_type cmd_type, const LEX_STRING &utsname, const LEX_STRING &dfname, const Tablespace_options *options)
Creates execution class instance for drop undo tablespace statements.
Definition: sql_tablespace.cc:1620
enum_sql_command sql_command_code() const override
Return the command code for this statement.
Definition: sql_tablespace.cc:1719
const LEX_STRING m_undo_tablespace_name
Definition: sql_tablespace.h:312
Execution class for CREATE/DROP/ALTER LOGFILE GROUP ...
Definition: sql_tablespace.h:338
bool execute(THD *thd) override
Execute this SQL statement.
Definition: sql_tablespace.cc:1731
const Tablespace_options * m_options
Definition: sql_tablespace.h:342
Sql_cmd_logfile_group(const ts_command_type cmd_type, const LEX_STRING &logfile_group_name, const Tablespace_options *options, const LEX_STRING &undofile_name={nullptr, 0})
Creates execution class instance for logfile group statements.
Definition: sql_tablespace.cc:1723
const LEX_STRING m_undofile_name
Definition: sql_tablespace.h:341
const ts_command_type m_cmd
Definition: sql_tablespace.h:339
enum_sql_command sql_command_code() const override
Return the command code for this statement.
Definition: sql_tablespace.cc:1770
const LEX_STRING m_logfile_group_name
Definition: sql_tablespace.h:340
Base class for tablespace execution classes including CREATE/ALTER/DROP TABLESPACE and LOGFILE GROUP ...
Definition: sql_tablespace.h:100
const LEX_STRING m_tablespace_name
Definition: sql_tablespace.h:102
const Tablespace_options get_options() const
Return the Tablespace_options for this object.
Definition: sql_tablespace.h:122
const Tablespace_options * m_options
Definition: sql_tablespace.h:103
Sql_cmd_tablespace(const LEX_STRING &name, const Tablespace_options *options)
Creates shared base object.
Definition: sql_tablespace.cc:442
enum_sql_command sql_command_code() const final
Provide access to the command code enum value.
Definition: sql_tablespace.cc:447
Representation of an SQL command.
Definition: sql_cmd.h:83
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:36
constexpr const LEX_CSTRING NULL_CSTR
Definition: lex_string.h:47
Some integer typedefs for easier portability.
unsigned long long int ulonglong
Definition: my_inttypes.h:56
enum_sql_command
Definition: my_sqlcommand.h:46
Definition: options.cc:57
#define UNDEF_NODEGROUP
Definition: handler.h:836
ts_command_type
Definition: handler.h:839
ts_alter_tablespace_type
Definition: handler.h:854
@ TS_ALTER_TABLESPACE_TYPE_NOT_DEFINED
Definition: handler.h:855
bool validate_tablespace_name_length(const char *tablespace_name)
Check if tablespace name has valid length.
Definition: sql_tablespace.cc:119
bool validate_tablespace_name(ts_command_type ts_cmd, const char *tablespace_name, const handlerton *engine)
Check if a tablespace name is valid.
Definition: sql_tablespace.cc:125
case opt name
Definition: sslopt-case.h:29
Definition: mysql_lex_string.h:40
Definition: mysql_lex_string.h:35
Structure used by parser to store options for tablespace statements and pass them on to Execution cla...
Definition: sql_tablespace.h:43
ulonglong redo_buffer_size
Definition: sql_tablespace.h:46
ulonglong undo_buffer_size
Definition: sql_tablespace.h:45
LEX_CSTRING engine_attribute
Definition: sql_tablespace.h:57
ulonglong file_block_size
Definition: sql_tablespace.h:50
std::optional< ulonglong > autoextend_size
Definition: sql_tablespace.h:48
uint nodegroup_id
Definition: sql_tablespace.h:51
LEX_STRING ts_comment
Definition: sql_tablespace.h:53
LEX_STRING encryption
Definition: sql_tablespace.h:55
ulonglong max_size
Definition: sql_tablespace.h:49
LEX_CSTRING engine_name
Definition: sql_tablespace.h:54
ulonglong initial_size
Definition: sql_tablespace.h:47
bool wait_until_completed
Definition: sql_tablespace.h:52
ulonglong extent_size
Definition: sql_tablespace.h:44
handlerton is a singleton structure - one instance per storage engine - to provide access to storage ...
Definition: handler.h:2740