mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 10:14:19 +01:00
Removed CREATE/DROP TABLESPACE and related commands
- DISCARD/IMPORT TABLESPACE are the only tablespace commands left - TABLESPACE arguments for CREATE TABLE and ALTER ... ADD PARTITION are ignored. - Tablespace names are not shown anymore in .frm and not shown in information schema Other things - Removed end spaces from sql/CMakeList.txt
This commit is contained in:
parent
267a07e846
commit
8d08971c84
71 changed files with 119 additions and 787 deletions
|
@ -86,7 +86,7 @@ SET(SQL_EMBEDDED_SOURCES emb_qcache.cc libmysqld.c lib_sql.cc
|
|||
../sql/select_handler.cc
|
||||
../sql/sql_show.cc ../sql/sql_state.c
|
||||
../sql/sql_statistics.cc ../sql/sql_string.cc
|
||||
../sql/sql_tablespace.cc ../sql/sql_table.cc ../sql/sql_test.cc
|
||||
../sql/sql_table.cc ../sql/sql_test.cc
|
||||
../sql/ddl_log.cc
|
||||
../sql/sql_trigger.cc ../sql/sql_udf.cc ../sql/sql_union.cc
|
||||
../sql/sql_update.cc ../sql/sql_view.cc ../sql/sql_profile.cc
|
||||
|
|
|
@ -7,9 +7,9 @@ partition x3 values in (16, 8, 5+19, 70-43) tablespace ts3);
|
|||
select * from information_schema.partitions where table_schema="test"
|
||||
and table_name="t1";
|
||||
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
|
||||
def test t1 x1 NULL 1 NULL LIST NULL `b` * `a` NULL 1 0 0 0 # 1024 0 # # NULL NULL default ts1
|
||||
def test t1 x2 NULL 2 NULL LIST NULL `b` * `a` NULL 3,11,5,7 0 0 0 # 1024 0 # # NULL NULL default ts2
|
||||
def test t1 x3 NULL 3 NULL LIST NULL `b` * `a` NULL 16,8,24,27 0 0 0 # 1024 0 # # NULL NULL default ts3
|
||||
def test t1 x1 NULL 1 NULL LIST NULL `b` * `a` NULL 1 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t1 x2 NULL 2 NULL LIST NULL `b` * `a` NULL 3,11,5,7 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t1 x3 NULL 3 NULL LIST NULL `b` * `a` NULL 16,8,24,27 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
create table t2 (a int not null,b int not null,c int not null, primary key(a,b))
|
||||
partition by range (a)
|
||||
partitions 3
|
||||
|
@ -19,9 +19,9 @@ partition x3 values less than maxvalue tablespace ts3);
|
|||
select * from information_schema.partitions where table_schema="test"
|
||||
and table_name="t2";
|
||||
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
|
||||
def test t2 x1 NULL 1 NULL RANGE NULL `a` NULL 5 0 0 0 # 1024 0 # # NULL NULL default ts1
|
||||
def test t2 x2 NULL 2 NULL RANGE NULL `a` NULL 10 0 0 0 # 1024 0 # # NULL NULL default ts2
|
||||
def test t2 x3 NULL 3 NULL RANGE NULL `a` NULL MAXVALUE 0 0 0 # 1024 0 # # NULL NULL default ts3
|
||||
def test t2 x1 NULL 1 NULL RANGE NULL `a` NULL 5 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t2 x2 NULL 2 NULL RANGE NULL `a` NULL 10 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t2 x3 NULL 3 NULL RANGE NULL `a` NULL MAXVALUE 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
create table t3 (f1 date)
|
||||
partition by hash(month(f1))
|
||||
partitions 3;
|
||||
|
@ -63,14 +63,14 @@ subpartition x22 tablespace t2)
|
|||
);
|
||||
select * from information_schema.partitions where table_schema="test" order by table_name, partition_name;
|
||||
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
|
||||
def test t1 x1 x11 1 1 RANGE HASH `a` `a` + `b` 1 0 0 0 # 1024 0 # # NULL NULL default t1
|
||||
def test t1 x1 x12 1 2 RANGE HASH `a` `a` + `b` 1 0 0 0 # 1024 0 # # NULL NULL default t2
|
||||
def test t1 x2 x21 2 1 RANGE HASH `a` `a` + `b` 5 0 0 0 # 1024 0 # # NULL NULL default t1
|
||||
def test t1 x2 x22 2 2 RANGE HASH `a` `a` + `b` 5 0 0 0 # 1024 0 # # NULL NULL default t2
|
||||
def test t2 x1 x11 1 1 RANGE KEY `a` `a` 1 0 0 0 # 1024 0 # # NULL NULL default t1
|
||||
def test t2 x1 x12 1 2 RANGE KEY `a` `a` 1 0 0 0 # 1024 0 # # NULL NULL default t2
|
||||
def test t2 x2 x21 2 1 RANGE KEY `a` `a` 5 0 0 0 # 1024 0 # # NULL NULL default t1
|
||||
def test t2 x2 x22 2 2 RANGE KEY `a` `a` 5 0 0 0 # 1024 0 # # NULL NULL default t2
|
||||
def test t1 x1 x11 1 1 RANGE HASH `a` `a` + `b` 1 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t1 x1 x12 1 2 RANGE HASH `a` `a` + `b` 1 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t1 x2 x21 2 1 RANGE HASH `a` `a` + `b` 5 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t1 x2 x22 2 2 RANGE HASH `a` `a` + `b` 5 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t2 x1 x11 1 1 RANGE KEY `a` `a` 1 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t2 x1 x12 1 2 RANGE KEY `a` `a` 1 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t2 x2 x21 2 1 RANGE KEY `a` `a` 5 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
def test t2 x2 x22 2 2 RANGE KEY `a` `a` 5 0 0 0 # 1024 0 # # NULL NULL default NULL
|
||||
drop table t1,t2;
|
||||
create table t1 (
|
||||
a int not null,
|
||||
|
@ -88,10 +88,10 @@ subpartition x22 tablespace t2 nodegroup 1)
|
|||
);
|
||||
select * from information_schema.partitions where table_schema="test";
|
||||
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
|
||||
def test t1 x1 x11 1 1 RANGE HASH `a` `a` + `b` 1 0 0 0 # 1024 0 # # NULL NULL 0 t1
|
||||
def test t1 x1 x12 1 2 RANGE HASH `a` `a` + `b` 1 0 0 0 # 1024 0 # # NULL NULL 1 t2
|
||||
def test t1 x2 x21 2 1 RANGE HASH `a` `a` + `b` 5 0 0 0 # 1024 0 # # NULL NULL 0 t1
|
||||
def test t1 x2 x22 2 2 RANGE HASH `a` `a` + `b` 5 0 0 0 # 1024 0 # # NULL NULL 1 t2
|
||||
def test t1 x1 x11 1 1 RANGE HASH `a` `a` + `b` 1 0 0 0 # 1024 0 # # NULL NULL 0 NULL
|
||||
def test t1 x1 x12 1 2 RANGE HASH `a` `a` + `b` 1 0 0 0 # 1024 0 # # NULL NULL 1 NULL
|
||||
def test t1 x2 x21 2 1 RANGE HASH `a` `a` + `b` 5 0 0 0 # 1024 0 # # NULL NULL 0 NULL
|
||||
def test t1 x2 x22 2 2 RANGE HASH `a` `a` + `b` 5 0 0 0 # 1024 0 # # NULL NULL 1 NULL
|
||||
show tables;
|
||||
Tables_in_test
|
||||
t1
|
||||
|
|
|
@ -1709,7 +1709,7 @@ performance-schema-max-socket-classes 10
|
|||
performance-schema-max-socket-instances -1
|
||||
performance-schema-max-sql-text-length 1024
|
||||
performance-schema-max-stage-classes 160
|
||||
performance-schema-max-statement-classes 222
|
||||
performance-schema-max-statement-classes 221
|
||||
performance-schema-max-statement-stack 10
|
||||
performance-schema-max-table-handles -1
|
||||
performance-schema-max-table-instances -1
|
||||
|
|
|
@ -1306,5 +1306,4 @@ ALTER TABLE t1 ADD PARTITION (PARTITION pm TABLESPACE = `innodb_file_per_table`)
|
|||
CREATE TABLE t2 like t1;
|
||||
ALTER TABLE t2 REMOVE PARTITIONING;
|
||||
ALTER TABLE t1 EXCHANGE PARTITION pm WITH TABLE t2;
|
||||
ERROR HY000: Non matching attribute 'TABLESPACE' between partition and table
|
||||
DROP TABLE t1, t2;
|
||||
|
|
|
@ -533,7 +533,7 @@ CREATE TABLE t1 (a VARCHAR(200)) PARTITION BY KEY(a) partitions 10;
|
|||
ALTER TABLE t1 ADD PARTITION (PARTITION pm TABLESPACE = `innodb_file_per_table`);
|
||||
CREATE TABLE t2 like t1;
|
||||
ALTER TABLE t2 REMOVE PARTITIONING;
|
||||
--error ER_PARTITION_EXCHANGE_DIFFERENT_OPTION
|
||||
# The following works as table spaces are not checked anymore
|
||||
ALTER TABLE t1 EXCHANGE PARTITION pm WITH TABLE t2;
|
||||
DROP TABLE t1, t2;
|
||||
|
||||
|
|
|
@ -294,9 +294,9 @@ t1 CREATE TABLE `t1` (
|
|||
PRIMARY KEY (`a`,`b`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
PARTITION BY RANGE (`a`)
|
||||
(PARTITION `x1` VALUES LESS THAN (5) TABLESPACE = ts1 ENGINE = MyISAM,
|
||||
PARTITION `x2` VALUES LESS THAN (10) TABLESPACE = ts2 ENGINE = MyISAM,
|
||||
PARTITION `x3` VALUES LESS THAN MAXVALUE TABLESPACE = ts3 ENGINE = MyISAM)
|
||||
(PARTITION `x1` VALUES LESS THAN (5) ENGINE = MyISAM,
|
||||
PARTITION `x2` VALUES LESS THAN (10) ENGINE = MyISAM,
|
||||
PARTITION `x3` VALUES LESS THAN MAXVALUE ENGINE = MyISAM)
|
||||
ALTER TABLE t1
|
||||
partition by range (a)
|
||||
partitions 3
|
||||
|
@ -318,9 +318,9 @@ t1 CREATE TABLE `t1` (
|
|||
PRIMARY KEY (`a`,`b`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
PARTITION BY RANGE (`a`)
|
||||
(PARTITION `x1` VALUES LESS THAN (5) TABLESPACE = ts1 ENGINE = MyISAM,
|
||||
PARTITION `x2` VALUES LESS THAN (10) TABLESPACE = ts2 ENGINE = MyISAM,
|
||||
PARTITION `x3` VALUES LESS THAN MAXVALUE TABLESPACE = ts3 ENGINE = MyISAM)
|
||||
(PARTITION `x1` VALUES LESS THAN (5) ENGINE = MyISAM,
|
||||
PARTITION `x2` VALUES LESS THAN (10) ENGINE = MyISAM,
|
||||
PARTITION `x3` VALUES LESS THAN MAXVALUE ENGINE = MyISAM)
|
||||
drop table if exists t1;
|
||||
CREATE TABLE t1 (
|
||||
a int not null,
|
||||
|
|
|
@ -771,27 +771,4 @@ EXECUTE stmt_2;
|
|||
DROP TABLE t1;
|
||||
DEALLOCATE PREPARE stmt_1;
|
||||
DEALLOCATE PREPARE stmt_2;
|
||||
# Test Test case 25: Check the statements 'CREATE/ALTER/DROP TABLEPSPACE'
|
||||
# can be executed as a prepared statement
|
||||
PREPARE stmt_1 FROM "CREATE TABLESPACE ts1 ADD DATAFILE 'ts1.ibd' ENGINE=InnoDB";
|
||||
PREPARE stmt_2 FROM "ALTER TABLESPACE ts1 ADD DATAFILE 'ts1_1.ibd' ENGINE=InnoDB";
|
||||
PREPARE stmt_3 FROM "DROP TABLESPACE ts1 ENGINE=InnoDB";
|
||||
EXECUTE stmt_1;
|
||||
# Execute the same prepared statement the second time to check that
|
||||
# no internal structures used for handling the 'CREATE TABLESPACE'
|
||||
# statement were damaged.
|
||||
EXECUTE stmt_1;
|
||||
EXECUTE stmt_2;
|
||||
# Execute the same prepared statement the second time to check that
|
||||
# no internal structures used for handling the 'ALTER TABLESPACE'
|
||||
# statement were damaged.
|
||||
EXECUTE stmt_2;
|
||||
EXECUTE stmt_3;
|
||||
# Execute the same prepared statement the second time to check that
|
||||
# no internal structures used for handling the 'DROP TABLESPACE'
|
||||
# statement were damaged.
|
||||
EXECUTE stmt_3;
|
||||
DEALLOCATE PREPARE stmt_1;
|
||||
DEALLOCATE PREPARE stmt_2;
|
||||
DEALLOCATE PREPARE stmt_3;
|
||||
SET default_storage_engine= @save_storage_engine;
|
||||
|
|
|
@ -585,50 +585,5 @@ DROP TABLE t1;
|
|||
DEALLOCATE PREPARE stmt_1;
|
||||
DEALLOCATE PREPARE stmt_2;
|
||||
|
||||
--echo # Test Test case 25: Check the statements 'CREATE/ALTER/DROP TABLEPSPACE'
|
||||
--echo # can be executed as a prepared statement
|
||||
|
||||
PREPARE stmt_1 FROM "CREATE TABLESPACE ts1 ADD DATAFILE 'ts1.ibd' ENGINE=InnoDB";
|
||||
PREPARE stmt_2 FROM "ALTER TABLESPACE ts1 ADD DATAFILE 'ts1_1.ibd' ENGINE=InnoDB";
|
||||
PREPARE stmt_3 FROM "DROP TABLESPACE ts1 ENGINE=InnoDB";
|
||||
|
||||
# Since MariaDB supports for tablespaces only on syntax level disable warnings
|
||||
# before run CREATE/ALTER/DROP TABLESPACE statements in order to exclude
|
||||
# the following in result output
|
||||
# Warning 1478 Table storage engine 'InnoDB' does not support the create option 'TABLESPACE
|
||||
--disable_warnings
|
||||
|
||||
EXECUTE stmt_1;
|
||||
--echo # Execute the same prepared statement the second time to check that
|
||||
--echo # no internal structures used for handling the 'CREATE TABLESPACE'
|
||||
--echo # statement were damaged.
|
||||
# Since the 'CREATE TABLESPACE' statement is supported by MariaDB on syntax
|
||||
# level only the second invocation of the CREATE TABLESPACE statement for
|
||||
# the same tablespace name doesn't lead to error.
|
||||
EXECUTE stmt_1;
|
||||
|
||||
EXECUTE stmt_2;
|
||||
--echo # Execute the same prepared statement the second time to check that
|
||||
--echo # no internal structures used for handling the 'ALTER TABLESPACE'
|
||||
--echo # statement were damaged.
|
||||
EXECUTE stmt_2;
|
||||
|
||||
EXECUTE stmt_3;
|
||||
--echo # Execute the same prepared statement the second time to check that
|
||||
--echo # no internal structures used for handling the 'DROP TABLESPACE'
|
||||
--echo # statement were damaged.
|
||||
|
||||
# Since the 'DROP TABLESPACE' statement is supported by MariaDB on syntax
|
||||
# level only the second invocation of the DROP TABLESPACE statement for
|
||||
# the same tablespace name doesn't lead to an error that tablespace
|
||||
# doesn't exist.
|
||||
EXECUTE stmt_3;
|
||||
|
||||
--enable_warnings
|
||||
|
||||
DEALLOCATE PREPARE stmt_1;
|
||||
DEALLOCATE PREPARE stmt_2;
|
||||
DEALLOCATE PREPARE stmt_3;
|
||||
|
||||
--enable_ps_protocol
|
||||
SET default_storage_engine= @save_storage_engine;
|
||||
|
|
|
@ -20,16 +20,16 @@ return 0;
|
|||
end $$
|
||||
show procedure code signal_proc;
|
||||
Pos Instruction
|
||||
0 stmt 130 "SIGNAL foo"
|
||||
1 stmt 130 "SIGNAL foo SET MESSAGE_TEXT = "This i..."
|
||||
2 stmt 131 "RESIGNAL foo"
|
||||
3 stmt 131 "RESIGNAL foo SET MESSAGE_TEXT = "This..."
|
||||
0 stmt 129 "SIGNAL foo"
|
||||
1 stmt 129 "SIGNAL foo SET MESSAGE_TEXT = "This i..."
|
||||
2 stmt 130 "RESIGNAL foo"
|
||||
3 stmt 130 "RESIGNAL foo SET MESSAGE_TEXT = "This..."
|
||||
drop procedure signal_proc;
|
||||
show function code signal_func;
|
||||
Pos Instruction
|
||||
0 stmt 130 "SIGNAL foo"
|
||||
1 stmt 130 "SIGNAL foo SET MESSAGE_TEXT = "This i..."
|
||||
2 stmt 131 "RESIGNAL foo"
|
||||
3 stmt 131 "RESIGNAL foo SET MESSAGE_TEXT = "This..."
|
||||
0 stmt 129 "SIGNAL foo"
|
||||
1 stmt 129 "SIGNAL foo SET MESSAGE_TEXT = "This i..."
|
||||
2 stmt 130 "RESIGNAL foo"
|
||||
3 stmt 130 "RESIGNAL foo SET MESSAGE_TEXT = "This..."
|
||||
4 freturn int 0
|
||||
drop function signal_func;
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 1
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -255,7 +255,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -57,7 +57,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 0
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 0
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 0
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 0
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 0
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 10
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
|
|||
performance_schema_max_socket_instances 1000
|
||||
performance_schema_max_sql_text_length 1024
|
||||
performance_schema_max_stage_classes 160
|
||||
performance_schema_max_statement_classes 222
|
||||
performance_schema_max_statement_classes 221
|
||||
performance_schema_max_statement_stack 2
|
||||
performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
|
|
|
@ -94,9 +94,9 @@ SET (SQL_SOURCE
|
|||
filesort.cc gstream.cc
|
||||
signal_handler.cc
|
||||
handler.cc
|
||||
hostname.cc init.cc item.cc item_buff.cc item_cmpfunc.cc
|
||||
item_create.cc item_func.cc item_geofunc.cc item_row.cc
|
||||
item_strfunc.cc item_subselect.cc item_sum.cc item_timefunc.cc
|
||||
hostname.cc init.cc item.cc item_buff.cc item_cmpfunc.cc
|
||||
item_create.cc item_func.cc item_geofunc.cc item_row.cc
|
||||
item_strfunc.cc item_subselect.cc item_sum.cc item_timefunc.cc
|
||||
key.cc log.cc lock.cc
|
||||
log_event.cc log_event_server.cc
|
||||
rpl_record.cc rpl_reporting.cc
|
||||
|
@ -105,33 +105,33 @@ SET (SQL_SOURCE
|
|||
mysqld.cc net_serv.cc keycaches.cc
|
||||
../sql-common/client_plugin.c
|
||||
opt_range.cc opt_sum.cc
|
||||
../sql-common/pack.c parse_file.cc password.c procedure.cc
|
||||
../sql-common/pack.c parse_file.cc password.c procedure.cc
|
||||
protocol.cc records.cc repl_failsafe.cc rpl_filter.cc
|
||||
session_tracker.cc
|
||||
set_var.cc
|
||||
slave.cc sp.cc sp_cache.cc sp_head.cc sp_pcontext.cc
|
||||
sp_rcontext.cc spatial.cc sql_acl.cc sql_analyse.cc sql_base.cc
|
||||
set_var.cc
|
||||
slave.cc sp.cc sp_cache.cc sp_head.cc sp_pcontext.cc
|
||||
sp_rcontext.cc spatial.cc sql_acl.cc sql_analyse.cc sql_base.cc
|
||||
sql_cache.cc sql_class.cc sql_client.cc sql_crypt.cc
|
||||
sql_cursor.cc sql_db.cc sql_delete.cc sql_derived.cc
|
||||
sql_digest.cc sql_do.cc
|
||||
sql_digest.cc sql_do.cc
|
||||
sql_error.cc sql_handler.cc sql_get_diagnostics.cc
|
||||
sql_help.cc sql_insert.cc sql_lex.cc
|
||||
sql_help.cc sql_insert.cc sql_lex.cc
|
||||
sql_list.cc sql_load.cc sql_manager.cc
|
||||
sql_parse.cc sql_bootstrap.cc
|
||||
sql_partition.cc sql_plugin.cc sql_prepare.cc sql_rename.cc
|
||||
sql_partition.cc sql_plugin.cc sql_prepare.cc sql_rename.cc
|
||||
debug_sync.cc debug.cc
|
||||
sql_repl.cc sql_select.cc sql_show.cc sql_state.c
|
||||
group_by_handler.cc derived_handler.cc select_handler.cc
|
||||
sql_statistics.cc sql_string.cc lex_string.h
|
||||
sql_table.cc sql_test.cc sql_trigger.cc sql_udf.cc sql_union.cc
|
||||
ddl_log.cc ddl_log.h
|
||||
sql_update.cc sql_view.cc strfunc.cc table.cc thr_malloc.cc
|
||||
sql_time.cc tztime.cc unireg.cc item_xmlfunc.cc
|
||||
sql_update.cc sql_view.cc strfunc.cc table.cc thr_malloc.cc
|
||||
sql_time.cc tztime.cc unireg.cc item_xmlfunc.cc
|
||||
uniques.cc
|
||||
rpl_tblmap.cc sql_binlog.cc event_scheduler.cc
|
||||
event_data_objects.cc
|
||||
event_queue.cc event_db_repository.cc
|
||||
sql_tablespace.cc events.cc ../sql-common/my_user.c
|
||||
event_queue.cc event_db_repository.cc
|
||||
events.cc ../sql-common/my_user.c
|
||||
partition_info.cc rpl_utility.cc rpl_utility_server.cc
|
||||
rpl_injector.cc sql_locale.cc
|
||||
rpl_rli.cc rpl_mi.cc sql_servers.cc sql_audit.cc
|
||||
|
@ -175,7 +175,7 @@ SET (SQL_SOURCE
|
|||
${GEN_SOURCES}
|
||||
${MYSYS_LIBWRAP_SOURCE}
|
||||
)
|
||||
|
||||
|
||||
IF ((CMAKE_SYSTEM_NAME MATCHES "Linux" OR
|
||||
CMAKE_SYSTEM_NAME MATCHES "SunOS" OR
|
||||
WIN32 OR
|
||||
|
@ -309,18 +309,18 @@ ENDIF()
|
|||
|
||||
# On Solaris, some extra effort is required in order to get dtrace probes
|
||||
# from static libraries
|
||||
DTRACE_INSTRUMENT_STATIC_LIBS(mariadbd
|
||||
DTRACE_INSTRUMENT_STATIC_LIBS(mariadbd
|
||||
"sql;mysys;mysys_ssl;${MYSQLD_STATIC_PLUGIN_LIBS}")
|
||||
|
||||
|
||||
|
||||
SET(WITH_MYSQLD_LDFLAGS "" CACHE STRING "Additional linker flags for mysqld")
|
||||
MARK_AS_ADVANCED(WITH_MYSQLD_LDFLAGS)
|
||||
IF(WITH_MYSQLD_LDFLAGS)
|
||||
GET_TARGET_PROPERTY(MYSQLD_LINK_FLAGS mariadbd LINK_FLAGS)
|
||||
IF(NOT MYSQLD_LINK_FLAGS)
|
||||
SET(MYSQLD_LINK_FLAGS)
|
||||
ENDIF()
|
||||
SET_TARGET_PROPERTIES(mariadbd PROPERTIES LINK_FLAGS
|
||||
SET(MYSQLD_LINK_FLAGS)
|
||||
ENDIF()
|
||||
SET_TARGET_PROPERTIES(mariadbd PROPERTIES LINK_FLAGS
|
||||
"${MYSQLD_LINK_FLAGS} ${WITH_MYSQLD_LDFLAGS}")
|
||||
ENDIF()
|
||||
|
||||
|
@ -328,8 +328,8 @@ ENDIF()
|
|||
FIND_PACKAGE(BISON 2.4)
|
||||
|
||||
|
||||
# Handle out-of-source build from source package with possibly broken
|
||||
# bison. Copy bison output to from source to build directory, if not already
|
||||
# Handle out-of-source build from source package with possibly broken
|
||||
# bison. Copy bison output to from source to build directory, if not already
|
||||
# there
|
||||
IF (NOT BISON_FOUND)
|
||||
IF (NOT ${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
@ -439,9 +439,9 @@ IF(TARGET mariadbd AND (NOT CMAKE_CROSSCOMPILING OR DEFINED CMAKE_CROSSCOMPILING
|
|||
ELSE()
|
||||
SET(ALL_ON_WINDOWS)
|
||||
ENDIF()
|
||||
ADD_CUSTOM_TARGET(initial_database
|
||||
ADD_CUSTOM_TARGET(initial_database
|
||||
${ALL_ON_WINDOWS}
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/initdb.dep
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/initdb.dep
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
|
@ -450,7 +450,7 @@ IF(WIN32)
|
|||
FILE(TO_NATIVE_PATH ${my_bootstrap_sql} native_outfile)
|
||||
|
||||
# Create bootstrapper SQL script
|
||||
ADD_CUSTOM_COMMAND(OUTPUT
|
||||
ADD_CUSTOM_COMMAND(OUTPUT
|
||||
${my_bootstrap_sql}
|
||||
COMMAND ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/scripts
|
||||
cmd /c copy mysql_system_tables.sql+mysql_system_tables_data.sql+fill_help_tables.sql+mysql_performance_tables.sql+mysql_test_db.sql+mysql_sys_schema.sql ${native_outfile}
|
||||
|
@ -473,7 +473,7 @@ IF(WIN32)
|
|||
DEPENDS comp_sql ${my_bootstrap_sql}
|
||||
)
|
||||
|
||||
MYSQL_ADD_EXECUTABLE(mariadb-install-db
|
||||
MYSQL_ADD_EXECUTABLE(mariadb-install-db
|
||||
mysql_install_db.cc
|
||||
${CMAKE_CURRENT_BINARY_DIR}/mysql_bootstrap_sql.c
|
||||
COMPONENT Server
|
||||
|
|
|
@ -968,39 +968,6 @@ struct xid_recovery_member
|
|||
#define MIN_XID_LIST_SIZE 128
|
||||
#define MAX_XID_LIST_SIZE (1024*128)
|
||||
|
||||
/*
|
||||
These structures are used to pass information from a set of SQL commands
|
||||
on add/drop/change tablespace definitions to the proper hton.
|
||||
*/
|
||||
#define UNDEF_NODEGROUP 65535
|
||||
enum ts_command_type
|
||||
{
|
||||
TS_CMD_NOT_DEFINED = -1,
|
||||
CREATE_TABLESPACE = 0,
|
||||
ALTER_TABLESPACE = 1,
|
||||
CREATE_LOGFILE_GROUP = 2,
|
||||
ALTER_LOGFILE_GROUP = 3,
|
||||
DROP_TABLESPACE = 4,
|
||||
DROP_LOGFILE_GROUP = 5,
|
||||
CHANGE_FILE_TABLESPACE = 6,
|
||||
ALTER_ACCESS_MODE_TABLESPACE = 7
|
||||
};
|
||||
|
||||
enum ts_alter_tablespace_type
|
||||
{
|
||||
TS_ALTER_TABLESPACE_TYPE_NOT_DEFINED = -1,
|
||||
ALTER_TABLESPACE_ADD_FILE = 1,
|
||||
ALTER_TABLESPACE_DROP_FILE = 2
|
||||
};
|
||||
|
||||
enum tablespace_access_mode
|
||||
{
|
||||
TS_NOT_DEFINED= -1,
|
||||
TS_READ_ONLY = 0,
|
||||
TS_READ_WRITE = 1,
|
||||
TS_NOT_ACCESSIBLE = 2
|
||||
};
|
||||
|
||||
/* Statistics about batch operations like bulk_insert */
|
||||
struct ha_copy_info
|
||||
{
|
||||
|
@ -1011,50 +978,6 @@ struct ha_copy_info
|
|||
ha_rows updated;
|
||||
};
|
||||
|
||||
struct handlerton;
|
||||
class st_alter_tablespace : public Sql_alloc
|
||||
{
|
||||
public:
|
||||
const char *tablespace_name;
|
||||
const char *logfile_group_name;
|
||||
enum ts_command_type ts_cmd_type;
|
||||
enum ts_alter_tablespace_type ts_alter_tablespace_type;
|
||||
const char *data_file_name;
|
||||
const char *undo_file_name;
|
||||
const char *redo_file_name;
|
||||
ulonglong extent_size;
|
||||
ulonglong undo_buffer_size;
|
||||
ulonglong redo_buffer_size;
|
||||
ulonglong initial_size;
|
||||
ulonglong autoextend_size;
|
||||
ulonglong max_size;
|
||||
uint nodegroup_id;
|
||||
handlerton *storage_engine;
|
||||
bool wait_until_completed;
|
||||
const char *ts_comment;
|
||||
enum tablespace_access_mode ts_access_mode;
|
||||
st_alter_tablespace()
|
||||
{
|
||||
tablespace_name= NULL;
|
||||
logfile_group_name= "DEFAULT_LG"; //Default log file group
|
||||
ts_cmd_type= TS_CMD_NOT_DEFINED;
|
||||
data_file_name= NULL;
|
||||
undo_file_name= NULL;
|
||||
redo_file_name= NULL;
|
||||
extent_size= 1024*1024; //Default 1 MByte
|
||||
undo_buffer_size= 8*1024*1024; //Default 8 MByte
|
||||
redo_buffer_size= 8*1024*1024; //Default 8 MByte
|
||||
initial_size= 128*1024*1024; //Default 128 MByte
|
||||
autoextend_size= 0; //No autoextension as default
|
||||
max_size= 0; //Max size == initial size => no extension
|
||||
storage_engine= NULL;
|
||||
nodegroup_id= UNDEF_NODEGROUP;
|
||||
wait_until_completed= TRUE;
|
||||
ts_comment= NULL;
|
||||
ts_access_mode= TS_NOT_DEFINED;
|
||||
}
|
||||
};
|
||||
|
||||
/* The handler for a table type. Will be included in the TABLE structure */
|
||||
|
||||
struct TABLE;
|
||||
|
@ -1118,6 +1041,7 @@ typedef bool (stat_print_fn)(THD *thd, const char *type, size_t type_len,
|
|||
enum ha_stat_type { HA_ENGINE_STATUS, HA_ENGINE_LOGS, HA_ENGINE_MUTEX };
|
||||
extern MYSQL_PLUGIN_IMPORT st_plugin_int *hton2plugin[MAX_HA];
|
||||
|
||||
struct handlerton;
|
||||
#define view_pseudo_hton ((handlerton *)1)
|
||||
|
||||
/* Transaction log maintains type definitions */
|
||||
|
@ -1548,8 +1472,7 @@ struct handlerton
|
|||
bool (*show_status)(handlerton *hton, THD *thd, stat_print_fn *print, enum ha_stat_type stat);
|
||||
uint (*partition_flags)();
|
||||
alter_table_operations (*alter_table_flags)(alter_table_operations flags);
|
||||
int (*alter_tablespace)(handlerton *hton, THD *thd, st_alter_tablespace *ts_info);
|
||||
int (*fill_is_table)(handlerton *hton, THD *thd, TABLE_LIST *tables,
|
||||
int (*fill_is_table)(handlerton *hton, THD *thd, TABLE_LIST *tables,
|
||||
class Item *cond,
|
||||
enum enum_schema_tables);
|
||||
uint32 flags; /* global handler flags */
|
||||
|
|
|
@ -3373,7 +3373,6 @@ SHOW_VAR com_status_vars[]= {
|
|||
{"alter_server", STMT_STATUS(SQLCOM_ALTER_SERVER)},
|
||||
{"alter_sequence", STMT_STATUS(SQLCOM_ALTER_SEQUENCE)},
|
||||
{"alter_table", STMT_STATUS(SQLCOM_ALTER_TABLE)},
|
||||
{"alter_tablespace", STMT_STATUS(SQLCOM_ALTER_TABLESPACE)},
|
||||
{"alter_user", STMT_STATUS(SQLCOM_ALTER_USER)},
|
||||
{"analyze", STMT_STATUS(SQLCOM_ANALYZE)},
|
||||
{"assign_to_keycache", STMT_STATUS(SQLCOM_ASSIGN_TO_KEYCACHE)},
|
||||
|
|
|
@ -111,7 +111,6 @@ public:
|
|||
ha_rows part_min_rows;
|
||||
longlong range_value;
|
||||
const char *partition_name;
|
||||
const char *tablespace_name;
|
||||
struct st_ddl_log_memory_entry *log_entry;
|
||||
const char* part_comment;
|
||||
const char* data_file_name;
|
||||
|
@ -129,7 +128,7 @@ public:
|
|||
|
||||
partition_element()
|
||||
: part_max_rows(0), part_min_rows(0), range_value(0),
|
||||
partition_name(NULL), tablespace_name(NULL),
|
||||
partition_name(NULL),
|
||||
log_entry(NULL), part_comment(NULL),
|
||||
data_file_name(NULL), index_file_name(NULL),
|
||||
engine_type(NULL), connect_string(null_clex_str), part_state(PART_NORMAL),
|
||||
|
@ -143,7 +142,6 @@ public:
|
|||
: part_max_rows(part_elem->part_max_rows),
|
||||
part_min_rows(part_elem->part_min_rows),
|
||||
range_value(0), partition_name(NULL),
|
||||
tablespace_name(part_elem->tablespace_name),
|
||||
log_entry(NULL),
|
||||
part_comment(part_elem->part_comment),
|
||||
data_file_name(part_elem->data_file_name),
|
||||
|
|
|
@ -2426,7 +2426,7 @@ bool partition_info::has_same_partitioning(partition_info *new_part_info)
|
|||
partition_element *new_part_elem= new_part_it++;
|
||||
/*
|
||||
The following must match:
|
||||
partition_name, tablespace_name, data_file_name, index_file_name,
|
||||
partition_name, data_file_name, index_file_name,
|
||||
engine_type, part_max_rows, part_min_rows, nodegroup_id.
|
||||
(max_value, signed_flag, has_null_value only on partition level,
|
||||
RANGE/LIST)
|
||||
|
@ -2512,9 +2512,7 @@ bool partition_info::has_same_partitioning(partition_info *new_part_info)
|
|||
if (strcmp_null(sub_part_elem->data_file_name,
|
||||
new_sub_part_elem->data_file_name) ||
|
||||
strcmp_null(sub_part_elem->index_file_name,
|
||||
new_sub_part_elem->index_file_name) ||
|
||||
strcmp_null(sub_part_elem->tablespace_name,
|
||||
new_sub_part_elem->tablespace_name))
|
||||
new_sub_part_elem->index_file_name))
|
||||
DBUG_RETURN(false);
|
||||
|
||||
} while (++j < num_subparts);
|
||||
|
@ -2530,9 +2528,7 @@ bool partition_info::has_same_partitioning(partition_info *new_part_info)
|
|||
if (strcmp_null(part_elem->data_file_name,
|
||||
new_part_elem->data_file_name) ||
|
||||
strcmp_null(part_elem->index_file_name,
|
||||
new_part_elem->index_file_name) ||
|
||||
strcmp_null(part_elem->tablespace_name,
|
||||
new_part_elem->tablespace_name))
|
||||
new_part_elem->index_file_name))
|
||||
DBUG_RETURN(false);
|
||||
}
|
||||
} while (++i < num_parts);
|
||||
|
|
|
@ -75,7 +75,6 @@ enum enum_sql_command {
|
|||
SQLCOM_XA_START, SQLCOM_XA_END, SQLCOM_XA_PREPARE,
|
||||
SQLCOM_XA_COMMIT, SQLCOM_XA_ROLLBACK, SQLCOM_XA_RECOVER,
|
||||
SQLCOM_SHOW_PROC_CODE, SQLCOM_SHOW_FUNC_CODE,
|
||||
SQLCOM_ALTER_TABLESPACE,
|
||||
SQLCOM_INSTALL_PLUGIN, SQLCOM_UNINSTALL_PLUGIN,
|
||||
SQLCOM_SHOW_AUTHORS, SQLCOM_BINLOG_BASE64_EVENT,
|
||||
SQLCOM_SHOW_PLUGINS, SQLCOM_SHOW_CONTRIBUTORS,
|
||||
|
|
|
@ -290,7 +290,6 @@ class sp_pcontext;
|
|||
class sp_variable;
|
||||
class sp_expr_lex;
|
||||
class sp_assignment_lex;
|
||||
class st_alter_tablespace;
|
||||
class partition_info;
|
||||
class Event_parse_data;
|
||||
class set_var_base;
|
||||
|
@ -3520,12 +3519,6 @@ public:
|
|||
engine_option_value *option_list_last;
|
||||
|
||||
|
||||
/*
|
||||
Reference to a struct that contains information in various commands
|
||||
to add/create/drop/change table spaces.
|
||||
*/
|
||||
st_alter_tablespace *alter_tablespace_info;
|
||||
|
||||
/*
|
||||
The set of those tables whose fields are referenced in all subqueries
|
||||
of the query.
|
||||
|
|
|
@ -54,7 +54,6 @@
|
|||
// check_mqh,
|
||||
// reset_mqh
|
||||
#include "sql_rename.h" // mysql_rename_tables
|
||||
#include "sql_tablespace.h" // mysql_alter_tablespace
|
||||
#include "hostname.h" // hostname_cache_refresh
|
||||
#include "sql_test.h" // mysql_print_status
|
||||
#include "sql_select.h" // handle_select, mysql_select,
|
||||
|
@ -878,7 +877,6 @@ void init_update_queries(void)
|
|||
sql_command_flags[SQLCOM_ALTER_PROCEDURE]|= CF_DISALLOW_IN_RO_TRANS;
|
||||
sql_command_flags[SQLCOM_ALTER_FUNCTION]|= CF_DISALLOW_IN_RO_TRANS;
|
||||
sql_command_flags[SQLCOM_TRUNCATE]|= CF_DISALLOW_IN_RO_TRANS;
|
||||
sql_command_flags[SQLCOM_ALTER_TABLESPACE]|= CF_DISALLOW_IN_RO_TRANS;
|
||||
sql_command_flags[SQLCOM_REPAIR]|= CF_DISALLOW_IN_RO_TRANS;
|
||||
sql_command_flags[SQLCOM_OPTIMIZE]|= CF_DISALLOW_IN_RO_TRANS;
|
||||
sql_command_flags[SQLCOM_GRANT]|= CF_DISALLOW_IN_RO_TRANS;
|
||||
|
@ -5889,12 +5887,6 @@ mysql_execute_command(THD *thd, bool is_called_from_prepared_stmt)
|
|||
case SQLCOM_XA_RECOVER:
|
||||
res= mysql_xa_recover(thd);
|
||||
break;
|
||||
case SQLCOM_ALTER_TABLESPACE:
|
||||
if (check_global_access(thd, CREATE_TABLESPACE_ACL))
|
||||
break;
|
||||
if (!(res= mysql_alter_tablespace(thd, lex->alter_tablespace_info)))
|
||||
my_ok(thd);
|
||||
break;
|
||||
case SQLCOM_INSTALL_PLUGIN:
|
||||
if (! (res= mysql_install_plugin(thd, &thd->lex->comment,
|
||||
&thd->lex->ident)))
|
||||
|
|
|
@ -67,7 +67,6 @@
|
|||
#include "opt_range.h" // store_key_image_to_rec
|
||||
#include "sql_alter.h" // Alter_table_ctx
|
||||
#include "sql_select.h"
|
||||
#include "sql_tablespace.h" // check_tablespace_name
|
||||
#include "ddl_log.h"
|
||||
#include "tztime.h" // my_tz_OFFSET0
|
||||
|
||||
|
@ -2215,8 +2214,6 @@ static int add_partition_options(String *str, partition_element *p_elem)
|
|||
{
|
||||
int err= 0;
|
||||
|
||||
if (p_elem->tablespace_name)
|
||||
err+= add_keyword_string(str,"TABLESPACE", false, p_elem->tablespace_name);
|
||||
if (p_elem->nodegroup_id != UNDEF_NODEGROUP)
|
||||
err+= add_keyword_int(str,"NODEGROUP",(longlong)p_elem->nodegroup_id);
|
||||
if (p_elem->part_max_rows)
|
||||
|
@ -4714,8 +4711,6 @@ bool compare_partition_options(HA_CREATE_INFO *table_create_info,
|
|||
Note that there are not yet any engine supporting tablespace together
|
||||
with partitioning. TODO: when there are, add compare.
|
||||
*/
|
||||
if (part_elem->tablespace_name || table_create_info->tablespace)
|
||||
option_diffs[errors++]= "TABLESPACE";
|
||||
if (part_elem->part_max_rows != table_create_info->max_rows)
|
||||
option_diffs[errors++]= "MAX_ROWS";
|
||||
if (part_elem->part_min_rows != table_create_info->min_rows)
|
||||
|
|
|
@ -416,16 +416,6 @@ inline int hexchar_to_int(char c)
|
|||
/* This must match the path length limit in the ER_NOT_RW_DIR error msg. */
|
||||
#define ER_NOT_RW_DIR_PATHSIZE 200
|
||||
|
||||
#define IS_TABLESPACES_TABLESPACE_NAME 0
|
||||
#define IS_TABLESPACES_ENGINE 1
|
||||
#define IS_TABLESPACES_TABLESPACE_TYPE 2
|
||||
#define IS_TABLESPACES_LOGFILE_GROUP_NAME 3
|
||||
#define IS_TABLESPACES_EXTENT_SIZE 4
|
||||
#define IS_TABLESPACES_AUTOEXTEND_SIZE 5
|
||||
#define IS_TABLESPACES_MAXIMUM_SIZE 6
|
||||
#define IS_TABLESPACES_NODEGROUP_ID 7
|
||||
#define IS_TABLESPACES_TABLESPACE_COMMENT 8
|
||||
|
||||
bool db_name_is_in_ignore_db_dirs_list(const char *dbase);
|
||||
|
||||
#endif /* MYSQL_SERVER */
|
||||
|
|
|
@ -7380,13 +7380,7 @@ static void store_schema_partitions_record(THD *thd, TABLE *schema_table,
|
|||
table->field[23]->store(STRING_WITH_LEN("default"), cs);
|
||||
|
||||
table->field[24]->set_notnull();
|
||||
if (part_elem->tablespace_name)
|
||||
table->field[24]->store(part_elem->tablespace_name,
|
||||
strlen(part_elem->tablespace_name), cs);
|
||||
else
|
||||
{
|
||||
table->field[24]->set_null();
|
||||
}
|
||||
table->field[24]->set_null(); // Tablespace
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -1,72 +0,0 @@
|
|||
/* Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; version 2 of the License.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */
|
||||
|
||||
/* drop and alter of tablespaces */
|
||||
|
||||
#include "mariadb.h"
|
||||
#include "sql_priv.h"
|
||||
#include "unireg.h"
|
||||
#include "sql_tablespace.h"
|
||||
#include "sql_table.h" // write_bin_log
|
||||
#include "sql_class.h" // THD
|
||||
|
||||
int mysql_alter_tablespace(THD *thd, st_alter_tablespace *ts_info)
|
||||
{
|
||||
int error= HA_ADMIN_NOT_IMPLEMENTED;
|
||||
handlerton *hton= ts_info->storage_engine;
|
||||
|
||||
DBUG_ENTER("mysql_alter_tablespace");
|
||||
/*
|
||||
If the user haven't defined an engine, this will fallback to using the
|
||||
default storage engine.
|
||||
*/
|
||||
if (hton == NULL)
|
||||
{
|
||||
hton= ha_default_handlerton(thd);
|
||||
if (ts_info->storage_engine != 0)
|
||||
push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
|
||||
ER_WARN_USING_OTHER_HANDLER,
|
||||
ER_THD(thd, ER_WARN_USING_OTHER_HANDLER),
|
||||
hton_name(hton)->str,
|
||||
ts_info->tablespace_name ? ts_info->tablespace_name
|
||||
: ts_info->logfile_group_name);
|
||||
}
|
||||
|
||||
if (hton->alter_tablespace)
|
||||
{
|
||||
if (unlikely((error= hton->alter_tablespace(hton, thd, ts_info))))
|
||||
{
|
||||
if (error == 1)
|
||||
DBUG_RETURN(1);
|
||||
|
||||
if (error == HA_ADMIN_NOT_IMPLEMENTED)
|
||||
my_error(ER_CHECK_NOT_IMPLEMENTED, MYF(0), "");
|
||||
else
|
||||
my_error(error, MYF(0));
|
||||
|
||||
DBUG_RETURN(error);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
|
||||
ER_ILLEGAL_HA_CREATE_OPTION,
|
||||
ER_THD(thd, ER_ILLEGAL_HA_CREATE_OPTION),
|
||||
hton_name(hton)->str,
|
||||
"TABLESPACE or LOGFILE GROUP");
|
||||
}
|
||||
error= write_bin_log(thd, FALSE, thd->query(), thd->query_length());
|
||||
DBUG_RETURN(error);
|
||||
}
|
|
@ -1,24 +0,0 @@
|
|||
/* Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; version 2 of the License.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */
|
||||
|
||||
#ifndef SQL_TABLESPACE_INCLUDED
|
||||
#define SQL_TABLESPACE_INCLUDED
|
||||
|
||||
class THD;
|
||||
class st_alter_tablespace;
|
||||
|
||||
int mysql_alter_tablespace(THD* thd, st_alter_tablespace *ts_info);
|
||||
|
||||
#endif /* SQL_TABLESPACE_INCLUDED */
|
388
sql/sql_yacc.yy
388
sql/sql_yacc.yy
|
@ -1460,7 +1460,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
|
|||
field_options last_field_options
|
||||
|
||||
%type <ulonglong_number>
|
||||
ulonglong_num real_ulonglong_num size_number
|
||||
ulonglong_num real_ulonglong_num
|
||||
|
||||
%type <longlong_number>
|
||||
longlong_num
|
||||
|
@ -2578,14 +2578,6 @@ create:
|
|||
$1 | $3)))
|
||||
MYSQL_YYABORT;
|
||||
}
|
||||
| CREATE LOGFILE_SYM GROUP_SYM logfile_group_info
|
||||
{
|
||||
Lex->alter_tablespace_info->ts_cmd_type= CREATE_LOGFILE_GROUP;
|
||||
}
|
||||
| CREATE TABLESPACE tablespace_info
|
||||
{
|
||||
Lex->alter_tablespace_info->ts_cmd_type= CREATE_TABLESPACE;
|
||||
}
|
||||
| create_or_replace { Lex->set_command(SQLCOM_CREATE_SERVER, $1); }
|
||||
server_def
|
||||
{ }
|
||||
|
@ -4334,350 +4326,6 @@ trg_event:
|
|||
| DELETE_SYM
|
||||
{ Lex->trg_chistics.event= TRG_EVENT_DELETE; }
|
||||
;
|
||||
/*
|
||||
This part of the parser contains common code for all TABLESPACE
|
||||
commands.
|
||||
CREATE TABLESPACE name ...
|
||||
ALTER TABLESPACE name CHANGE DATAFILE ...
|
||||
ALTER TABLESPACE name ADD DATAFILE ...
|
||||
ALTER TABLESPACE name access_mode
|
||||
CREATE LOGFILE GROUP_SYM name ...
|
||||
ALTER LOGFILE GROUP_SYM name ADD UNDOFILE ..
|
||||
ALTER LOGFILE GROUP_SYM name ADD REDOFILE ..
|
||||
DROP TABLESPACE name
|
||||
DROP LOGFILE GROUP_SYM name
|
||||
*/
|
||||
change_tablespace_access:
|
||||
tablespace_name
|
||||
ts_access_mode
|
||||
;
|
||||
|
||||
change_tablespace_info:
|
||||
tablespace_name
|
||||
CHANGE ts_datafile
|
||||
change_ts_option_list
|
||||
;
|
||||
|
||||
tablespace_info:
|
||||
tablespace_name
|
||||
ADD ts_datafile
|
||||
opt_logfile_group_name
|
||||
tablespace_option_list
|
||||
;
|
||||
|
||||
opt_logfile_group_name:
|
||||
/* empty */ {}
|
||||
| USE_SYM LOGFILE_SYM GROUP_SYM ident
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->logfile_group_name= $4.str;
|
||||
}
|
||||
;
|
||||
|
||||
alter_tablespace_info:
|
||||
tablespace_name
|
||||
ADD ts_datafile
|
||||
alter_tablespace_option_list
|
||||
{
|
||||
Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_ADD_FILE;
|
||||
}
|
||||
| tablespace_name
|
||||
DROP ts_datafile
|
||||
alter_tablespace_option_list
|
||||
{
|
||||
Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_DROP_FILE;
|
||||
}
|
||||
;
|
||||
|
||||
logfile_group_info:
|
||||
logfile_group_name
|
||||
add_log_file
|
||||
logfile_group_option_list
|
||||
;
|
||||
|
||||
alter_logfile_group_info:
|
||||
logfile_group_name
|
||||
add_log_file
|
||||
alter_logfile_group_option_list
|
||||
;
|
||||
|
||||
add_log_file:
|
||||
ADD lg_undofile
|
||||
| ADD lg_redofile
|
||||
;
|
||||
|
||||
change_ts_option_list:
|
||||
/* empty */ {}
|
||||
change_ts_options
|
||||
;
|
||||
|
||||
change_ts_options:
|
||||
change_ts_option
|
||||
| change_ts_options change_ts_option
|
||||
| change_ts_options ',' change_ts_option
|
||||
;
|
||||
|
||||
change_ts_option:
|
||||
opt_ts_initial_size
|
||||
| opt_ts_autoextend_size
|
||||
| opt_ts_max_size
|
||||
;
|
||||
|
||||
tablespace_option_list:
|
||||
tablespace_options
|
||||
;
|
||||
|
||||
tablespace_options:
|
||||
tablespace_option
|
||||
| tablespace_options tablespace_option
|
||||
| tablespace_options ',' tablespace_option
|
||||
;
|
||||
|
||||
tablespace_option:
|
||||
opt_ts_initial_size
|
||||
| opt_ts_autoextend_size
|
||||
| opt_ts_max_size
|
||||
| opt_ts_extent_size
|
||||
| opt_ts_nodegroup
|
||||
| opt_ts_engine
|
||||
| ts_wait
|
||||
| opt_ts_comment
|
||||
;
|
||||
|
||||
alter_tablespace_option_list:
|
||||
alter_tablespace_options
|
||||
;
|
||||
|
||||
alter_tablespace_options:
|
||||
alter_tablespace_option
|
||||
| alter_tablespace_options alter_tablespace_option
|
||||
| alter_tablespace_options ',' alter_tablespace_option
|
||||
;
|
||||
|
||||
alter_tablespace_option:
|
||||
opt_ts_initial_size
|
||||
| opt_ts_autoextend_size
|
||||
| opt_ts_max_size
|
||||
| opt_ts_engine
|
||||
| ts_wait
|
||||
;
|
||||
|
||||
logfile_group_option_list:
|
||||
logfile_group_options
|
||||
;
|
||||
|
||||
logfile_group_options:
|
||||
logfile_group_option
|
||||
| logfile_group_options logfile_group_option
|
||||
| logfile_group_options ',' logfile_group_option
|
||||
;
|
||||
|
||||
logfile_group_option:
|
||||
opt_ts_initial_size
|
||||
| opt_ts_undo_buffer_size
|
||||
| opt_ts_redo_buffer_size
|
||||
| opt_ts_nodegroup
|
||||
| opt_ts_engine
|
||||
| ts_wait
|
||||
| opt_ts_comment
|
||||
;
|
||||
|
||||
alter_logfile_group_option_list:
|
||||
alter_logfile_group_options
|
||||
;
|
||||
|
||||
alter_logfile_group_options:
|
||||
alter_logfile_group_option
|
||||
| alter_logfile_group_options alter_logfile_group_option
|
||||
| alter_logfile_group_options ',' alter_logfile_group_option
|
||||
;
|
||||
|
||||
alter_logfile_group_option:
|
||||
opt_ts_initial_size
|
||||
| opt_ts_engine
|
||||
| ts_wait
|
||||
;
|
||||
|
||||
|
||||
ts_datafile:
|
||||
DATAFILE_SYM TEXT_STRING_sys
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->data_file_name= $2.str;
|
||||
}
|
||||
;
|
||||
|
||||
lg_undofile:
|
||||
UNDOFILE_SYM TEXT_STRING_sys
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->undo_file_name= $2.str;
|
||||
}
|
||||
;
|
||||
|
||||
lg_redofile:
|
||||
REDOFILE_SYM TEXT_STRING_sys
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->redo_file_name= $2.str;
|
||||
}
|
||||
;
|
||||
|
||||
tablespace_name:
|
||||
ident
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info= (new (thd->mem_root)
|
||||
st_alter_tablespace());
|
||||
if (unlikely(lex->alter_tablespace_info == NULL))
|
||||
MYSQL_YYABORT;
|
||||
lex->alter_tablespace_info->tablespace_name= $1.str;
|
||||
lex->sql_command= SQLCOM_ALTER_TABLESPACE;
|
||||
}
|
||||
;
|
||||
|
||||
logfile_group_name:
|
||||
ident
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info= (new (thd->mem_root)
|
||||
st_alter_tablespace());
|
||||
if (unlikely(lex->alter_tablespace_info == NULL))
|
||||
MYSQL_YYABORT;
|
||||
lex->alter_tablespace_info->logfile_group_name= $1.str;
|
||||
lex->sql_command= SQLCOM_ALTER_TABLESPACE;
|
||||
}
|
||||
;
|
||||
|
||||
ts_access_mode:
|
||||
READ_ONLY_SYM
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->ts_access_mode= TS_READ_ONLY;
|
||||
}
|
||||
| READ_WRITE_SYM
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->ts_access_mode= TS_READ_WRITE;
|
||||
}
|
||||
| NOT_SYM ACCESSIBLE_SYM
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->ts_access_mode= TS_NOT_ACCESSIBLE;
|
||||
}
|
||||
;
|
||||
|
||||
opt_ts_initial_size:
|
||||
INITIAL_SIZE_SYM opt_equal size_number
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->initial_size= $3;
|
||||
}
|
||||
;
|
||||
|
||||
opt_ts_autoextend_size:
|
||||
AUTOEXTEND_SIZE_SYM opt_equal size_number
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->autoextend_size= $3;
|
||||
}
|
||||
;
|
||||
|
||||
opt_ts_max_size:
|
||||
MAX_SIZE_SYM opt_equal size_number
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->max_size= $3;
|
||||
}
|
||||
;
|
||||
|
||||
opt_ts_extent_size:
|
||||
EXTENT_SIZE_SYM opt_equal size_number
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->extent_size= $3;
|
||||
}
|
||||
;
|
||||
|
||||
opt_ts_undo_buffer_size:
|
||||
UNDO_BUFFER_SIZE_SYM opt_equal size_number
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->undo_buffer_size= $3;
|
||||
}
|
||||
;
|
||||
|
||||
opt_ts_redo_buffer_size:
|
||||
REDO_BUFFER_SIZE_SYM opt_equal size_number
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->redo_buffer_size= $3;
|
||||
}
|
||||
;
|
||||
|
||||
opt_ts_nodegroup:
|
||||
NODEGROUP_SYM opt_equal real_ulong_num
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
if (unlikely(lex->alter_tablespace_info->nodegroup_id != UNDEF_NODEGROUP))
|
||||
my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"NODEGROUP"));
|
||||
lex->alter_tablespace_info->nodegroup_id= $3;
|
||||
}
|
||||
;
|
||||
|
||||
opt_ts_comment:
|
||||
COMMENT_SYM opt_equal TEXT_STRING_sys
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
if (unlikely(lex->alter_tablespace_info->ts_comment != NULL))
|
||||
my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"COMMENT"));
|
||||
lex->alter_tablespace_info->ts_comment= $3.str;
|
||||
}
|
||||
;
|
||||
|
||||
opt_ts_engine:
|
||||
opt_storage ENGINE_SYM opt_equal storage_engines
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
if (unlikely(lex->alter_tablespace_info->storage_engine != NULL))
|
||||
my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE, MYF(0),
|
||||
"STORAGE ENGINE"));
|
||||
lex->alter_tablespace_info->storage_engine= $4;
|
||||
}
|
||||
;
|
||||
|
||||
opt_ts_wait:
|
||||
/* empty */
|
||||
| ts_wait
|
||||
;
|
||||
|
||||
ts_wait:
|
||||
WAIT_SYM
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->wait_until_completed= TRUE;
|
||||
}
|
||||
| NO_WAIT_SYM
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
if (unlikely(!(lex->alter_tablespace_info->wait_until_completed)))
|
||||
my_yyabort_error((ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"NO_WAIT"));
|
||||
lex->alter_tablespace_info->wait_until_completed= FALSE;
|
||||
}
|
||||
;
|
||||
|
||||
size_number:
|
||||
real_ulonglong_num { $$= $1;}
|
||||
| IDENT_sys
|
||||
{
|
||||
if ($1.to_size_number(&$$))
|
||||
MYSQL_YYABORT;
|
||||
}
|
||||
;
|
||||
|
||||
/*
|
||||
End tablespace part
|
||||
*/
|
||||
|
||||
create_body:
|
||||
create_field_list_parens
|
||||
|
@ -5395,7 +5043,7 @@ opt_part_option_list:
|
|||
|
||||
opt_part_option:
|
||||
TABLESPACE opt_equal ident_or_text
|
||||
{ Lex->part_info->curr_part_elem->tablespace_name= $3.str; }
|
||||
{ /* Compatibility with MySQL */ }
|
||||
| opt_storage ENGINE_SYM opt_equal storage_engines
|
||||
{
|
||||
partition_info *part_info= Lex->part_info;
|
||||
|
@ -5734,7 +5382,7 @@ create_table_option:
|
|||
Lex->create_info.used_fields|= HA_CREATE_USED_INDEXDIR;
|
||||
}
|
||||
| TABLESPACE ident
|
||||
{Lex->create_info.tablespace= $2.str;}
|
||||
{ /* Compatiblity with MySQL */ }
|
||||
| STORAGE_SYM DISK_SYM
|
||||
{Lex->create_info.storage_media= HA_SM_DISK;}
|
||||
| STORAGE_SYM MEMORY_SYM
|
||||
|
@ -7382,26 +7030,6 @@ alter:
|
|||
|
||||
Lex->pop_select(); //main select
|
||||
}
|
||||
| ALTER TABLESPACE alter_tablespace_info
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->ts_cmd_type= ALTER_TABLESPACE;
|
||||
}
|
||||
| ALTER LOGFILE_SYM GROUP_SYM alter_logfile_group_info
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->ts_cmd_type= ALTER_LOGFILE_GROUP;
|
||||
}
|
||||
| ALTER TABLESPACE change_tablespace_info
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->ts_cmd_type= CHANGE_FILE_TABLESPACE;
|
||||
}
|
||||
| ALTER TABLESPACE change_tablespace_access
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->ts_cmd_type= ALTER_ACCESS_MODE_TABLESPACE;
|
||||
}
|
||||
| ALTER SERVER_SYM ident_or_text
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
|
@ -13098,16 +12726,6 @@ drop:
|
|||
lex->set_command(SQLCOM_DROP_TRIGGER, $3);
|
||||
lex->spname= $4;
|
||||
}
|
||||
| DROP TABLESPACE tablespace_name opt_ts_engine opt_ts_wait
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->ts_cmd_type= DROP_TABLESPACE;
|
||||
}
|
||||
| DROP LOGFILE_SYM GROUP_SYM logfile_group_name opt_ts_engine opt_ts_wait
|
||||
{
|
||||
LEX *lex= Lex;
|
||||
lex->alter_tablespace_info->ts_cmd_type= DROP_LOGFILE_GROUP;
|
||||
}
|
||||
| DROP SERVER_SYM opt_if_exists ident_or_text
|
||||
{
|
||||
Lex->set_command(SQLCOM_DROP_SERVER, $3);
|
||||
|
|
Loading…
Add table
Reference in a new issue