diff options
Diffstat (limited to 'mysql-test/suite')
248 files changed, 19694 insertions, 2350 deletions
diff --git a/mysql-test/suite/binlog/r/binlog_index.result b/mysql-test/suite/binlog/r/binlog_index.result index 8ada910c974..21a290bfc3b 100644 --- a/mysql-test/suite/binlog/r/binlog_index.result +++ b/mysql-test/suite/binlog/r/binlog_index.result @@ -15,6 +15,7 @@ master-bin.000001 # master-bin.000002 # master-bin.000003 # master-bin.000004 # +flush tables; purge binary logs TO 'master-bin.000004'; Warnings: Warning 1612 Being purged log master-bin.000001 was not found diff --git a/mysql-test/suite/binlog/r/binlog_row_mysqlbinlog_options.result b/mysql-test/suite/binlog/r/binlog_row_mysqlbinlog_options.result new file mode 100644 index 00000000000..5e48f13932d --- /dev/null +++ b/mysql-test/suite/binlog/r/binlog_row_mysqlbinlog_options.result @@ -0,0 +1,414 @@ +DROP DATABASE IF EXISTS test1; +DROP DATABASE IF EXISTS test2; +DROP DATABASE IF EXISTS test3; +CREATE DATABASE test1; +CREATE DATABASE test2; +CREATE DATABASE test3; +SET timestamp=1000000000; +RESET MASTER; +USE test1; +CREATE TABLE t1 (a INT, b INT); +INSERT INTO t1 VALUES (1,1),(2,2); +USE test2; +CREATE TABLE t2 (a INT); +INSERT INTO t2 VALUES (1),(2); +DELETE FROM test1.t1 WHERE a=1; +USE test3; +CREATE TABLE t3 (a INT); +INSERT INTO t3 VALUES (1),(2); +INSERT INTO test1.t1 VALUES (3,3); +USE test1; +LOAD DATA INFILE '../../std_data/loaddata7.dat' INTO TABLE t1 +FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'; +DELETE FROM test3.t3 WHERE a=1; +flush logs; +# +# mysqlbinlog output +# --base64-output = decode-rows +# --rewrite-db = test1->new_test1 +# --rewrite-db = test3->new_test3 +# +/*!40019 SET @@session.max_insert_delayed_threads=0*/; +/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; +DELIMITER /*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup +ROLLBACK/*!*/; +# at # +use new_test1/*!*/; +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +SET @@session.pseudo_thread_id=#/*!*/; +SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/; +SET @@session.sql_mode=0/*!*/; +SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/; +/*!\C latin1 *//*!*/; +SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/; +SET @@session.lc_time_names=0/*!*/; +SET @@session.collation_database=DEFAULT/*!*/; +CREATE TABLE t1 (a INT, b INT) +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +### INSERT INTO new_test1.t1 +### SET +### @1=1 /* INT meta=0 nullable=1 is_null=0 */ +### @2=1 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test1.t1 +### SET +### @1=2 /* INT meta=0 nullable=1 is_null=0 */ +### @2=2 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +use test2/*!*/; +SET TIMESTAMP=1000000000/*!*/; +CREATE TABLE t2 (a INT) +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `test2`.`t2` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +### INSERT INTO test2.t2 +### SET +### @1=1 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO test2.t2 +### SET +### @1=2 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Delete_rows: table id # flags: STMT_END_F +### DELETE FROM new_test1.t1 +### WHERE +### @1=1 /* INT meta=0 nullable=1 is_null=0 */ +### @2=1 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +use new_test3/*!*/; +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +CREATE TABLE t3 (a INT) +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test3`.`t3` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +### INSERT INTO new_test3.t3 +### SET +### @1=1 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test3.t3 +### SET +### @1=2 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +### INSERT INTO new_test1.t1 +### SET +### @1=3 /* INT meta=0 nullable=1 is_null=0 */ +### @2=3 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +### INSERT INTO new_test1.t1 +### SET +### @1=2 /* INT meta=0 nullable=1 is_null=0 */ +### @2=2 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test1.t1 +### SET +### @1=3 /* INT meta=0 nullable=1 is_null=0 */ +### @2=3 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test1.t1 +### SET +### @1=4 /* INT meta=0 nullable=1 is_null=0 */ +### @2=4 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test1.t1 +### SET +### @1=5 /* INT meta=0 nullable=1 is_null=0 */ +### @2=5 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test1.t1 +### SET +### @1=6 /* INT meta=0 nullable=1 is_null=0 */ +### @2=6 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test3`.`t3` mapped to number # +#010909 4:46:40 server id # end_log_pos # Delete_rows: table id # flags: STMT_END_F +### DELETE FROM new_test3.t3 +### WHERE +### @1=1 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Rotate to master-bin.000002 pos: 4 +DELIMITER ; +# End of log file +ROLLBACK /* added by mysqlbinlog */; +/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; +# +# mysqlbinlog output +# --base64-output = decode-rows +# --rewrite-db = test1->new_test1 +# --rewrite-db = test3->new_test3 +# --read-from-remote-server +# +/*!40019 SET @@session.max_insert_delayed_threads=0*/; +/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; +DELIMITER /*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup +ROLLBACK/*!*/; +# at # +use new_test1/*!*/; +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +SET @@session.pseudo_thread_id=#/*!*/; +SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/; +SET @@session.sql_mode=0/*!*/; +SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/; +/*!\C latin1 *//*!*/; +SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/; +SET @@session.lc_time_names=0/*!*/; +SET @@session.collation_database=DEFAULT/*!*/; +CREATE TABLE t1 (a INT, b INT) +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +### INSERT INTO new_test1.t1 +### SET +### @1=1 /* INT meta=0 nullable=1 is_null=0 */ +### @2=1 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test1.t1 +### SET +### @1=2 /* INT meta=0 nullable=1 is_null=0 */ +### @2=2 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +use test2/*!*/; +SET TIMESTAMP=1000000000/*!*/; +CREATE TABLE t2 (a INT) +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `test2`.`t2` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +### INSERT INTO test2.t2 +### SET +### @1=1 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO test2.t2 +### SET +### @1=2 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Delete_rows: table id # flags: STMT_END_F +### DELETE FROM new_test1.t1 +### WHERE +### @1=1 /* INT meta=0 nullable=1 is_null=0 */ +### @2=1 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +use new_test3/*!*/; +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +CREATE TABLE t3 (a INT) +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test3`.`t3` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +### INSERT INTO new_test3.t3 +### SET +### @1=1 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test3.t3 +### SET +### @1=2 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +### INSERT INTO new_test1.t1 +### SET +### @1=3 /* INT meta=0 nullable=1 is_null=0 */ +### @2=3 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F +### INSERT INTO new_test1.t1 +### SET +### @1=2 /* INT meta=0 nullable=1 is_null=0 */ +### @2=2 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test1.t1 +### SET +### @1=3 /* INT meta=0 nullable=1 is_null=0 */ +### @2=3 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test1.t1 +### SET +### @1=4 /* INT meta=0 nullable=1 is_null=0 */ +### @2=4 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test1.t1 +### SET +### @1=5 /* INT meta=0 nullable=1 is_null=0 */ +### @2=5 /* INT meta=0 nullable=1 is_null=0 */ +### INSERT INTO new_test1.t1 +### SET +### @1=6 /* INT meta=0 nullable=1 is_null=0 */ +### @2=6 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +BEGIN +/*!*/; +# at # +# at # +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test3`.`t3` mapped to number # +#010909 4:46:40 server id # end_log_pos # Delete_rows: table id # flags: STMT_END_F +### DELETE FROM new_test3.t3 +### WHERE +### @1=1 /* INT meta=0 nullable=1 is_null=0 */ +# at # +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 +SET TIMESTAMP=1000000000/*!*/; +COMMIT +/*!*/; +# at # +#010909 4:46:40 server id # end_log_pos # Rotate to master-bin.000002 pos: 4 +DELIMITER ; +# End of log file +ROLLBACK /* added by mysqlbinlog */; +/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; +DROP DATABASE test1; +DROP DATABASE test2; +DROP DATABASE test3; diff --git a/mysql-test/suite/binlog/t/binlog_delete_and_flush_index-master.opt b/mysql-test/suite/binlog/t/binlog_delete_and_flush_index-master.opt new file mode 100644 index 00000000000..434bd66d696 --- /dev/null +++ b/mysql-test/suite/binlog/t/binlog_delete_and_flush_index-master.opt @@ -0,0 +1 @@ +--log-bin=master-bin --log-bin-index=master-bin diff --git a/mysql-test/suite/binlog/t/binlog_index-master.opt b/mysql-test/suite/binlog/t/binlog_index-master.opt index ff2ad57a9e9..35b2dc04cd1 100644 --- a/mysql-test/suite/binlog/t/binlog_index-master.opt +++ b/mysql-test/suite/binlog/t/binlog_index-master.opt @@ -1 +1 @@ ---force-restart --skip-stack-trace --test-expect-abort --log-warnings=0 +--force-restart --skip-stack-trace --test-expect-abort --log-warnings=0 --log-bin=master-bin --log-bin-index=master-bin diff --git a/mysql-test/suite/binlog/t/binlog_index.test b/mysql-test/suite/binlog/t/binlog_index.test index f38b9b0258c..86c314e9236 100644 --- a/mysql-test/suite/binlog/t/binlog_index.test +++ b/mysql-test/suite/binlog/t/binlog_index.test @@ -33,6 +33,7 @@ flush logs; source include/show_binary_logs.inc; remove_file $MYSQLD_DATADIR/master-bin.000001; +flush tables; # there must be a warning with file names replace_regex /\.[\\\/]master/master/; diff --git a/mysql-test/suite/binlog/t/binlog_row_mysqlbinlog_options-master.opt b/mysql-test/suite/binlog/t/binlog_row_mysqlbinlog_options-master.opt new file mode 100644 index 00000000000..4d69f3359db --- /dev/null +++ b/mysql-test/suite/binlog/t/binlog_row_mysqlbinlog_options-master.opt @@ -0,0 +1 @@ +--timezone=GMT-3 diff --git a/mysql-test/suite/binlog/t/binlog_row_mysqlbinlog_options.test b/mysql-test/suite/binlog/t/binlog_row_mysqlbinlog_options.test new file mode 100644 index 00000000000..c1756b22eab --- /dev/null +++ b/mysql-test/suite/binlog/t/binlog_row_mysqlbinlog_options.test @@ -0,0 +1,78 @@ +--source include/have_log_bin.inc +--source include/have_binlog_format_row.inc + +# +# MWL36: Add a mysqlbinlog option to change the used database +# (Adding --rewrite-db option) +# +--disable_warnings +DROP DATABASE IF EXISTS test1; +DROP DATABASE IF EXISTS test2; +DROP DATABASE IF EXISTS test3; +--enable_warnings + +# For SBR --rewrite-db affects only default database and doesn't affect +# a query (specifically CREATE DATABASE) itself. Hence (for testing +# purpose) we start binary logging after all databases have been created. + +CREATE DATABASE test1; +CREATE DATABASE test2; +CREATE DATABASE test3; + +# Fix timestamp to avoid varying results. +SET timestamp=1000000000; + +# Delete all existing binary logs. +RESET MASTER; + +# Whe'll call mysqlbinlog with two rewrite rules: +# --rewrite-db="test1->new_test1" +# --rewrite-db="test3->new_test3" + +USE test1; +CREATE TABLE t1 (a INT, b INT); +INSERT INTO t1 VALUES (1,1),(2,2); + +USE test2; +CREATE TABLE t2 (a INT); +INSERT INTO t2 VALUES (1),(2); + +DELETE FROM test1.t1 WHERE a=1; + +USE test3; +CREATE TABLE t3 (a INT); +INSERT INTO t3 VALUES (1),(2); +INSERT INTO test1.t1 VALUES (3,3); + +USE test1; +LOAD DATA INFILE '../../std_data/loaddata7.dat' INTO TABLE t1
+ FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n';
+DELETE FROM test3.t3 WHERE a=1; + +flush logs; + +--echo # +--echo # mysqlbinlog output +--echo # --base64-output = decode-rows +--echo # --rewrite-db = test1->new_test1 +--echo # --rewrite-db = test3->new_test3 +--echo # + +let $MYSQLD_DATADIR= `select @@datadir`; +--replace_regex /server id [0-9]*/server id #/ /server v [^ ]*/server v #.##.##/ /exec_time=[0-9]*/exec_time=#/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ +--exec $MYSQL_BINLOG --base64-output=decode-rows --rewrite-db="test1->new_test1" --rewrite-db="test3->new_test3" -v -v $MYSQLD_DATADIR/master-bin.000001 + +--echo # +--echo # mysqlbinlog output +--echo # --base64-output = decode-rows +--echo # --rewrite-db = test1->new_test1 +--echo # --rewrite-db = test3->new_test3 +--echo # --read-from-remote-server +--echo # + +--replace_regex /server id [0-9]*/server id #/ /server v [^ ]*/server v #.##.##/ /exec_time=[0-9]*/exec_time=#/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ +--exec $MYSQL_BINLOG --base64-output=decode-rows --rewrite-db="test1->new_test1" --rewrite-db="test3->new_test3" -v -v --read-from-remote-server --user=root --host=localhost --port=$MASTER_MYPORT master-bin.000001 + +DROP DATABASE test1; +DROP DATABASE test2; +DROP DATABASE test3; diff --git a/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning-master.opt b/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning-master.opt index 91466bcdea3..2dda40e61c3 100644 --- a/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning-master.opt +++ b/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning-master.opt @@ -1 +1 @@ ---binlog-ignore-db=b42851 --log-error +--binlog-ignore-db=b42851 --log-error --log-bin=master-bin --log-bin-index=master-bin diff --git a/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test b/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test index d09f4e433ac..809b03691c7 100644 --- a/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test +++ b/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test @@ -101,6 +101,7 @@ if(!`select LENGTH('$log_error_')`) # does not know the location of its .err log, use default location let $log_error_ = $MYSQLTEST_VARDIR/log/mysqld.1.err; } + # Assign env variable LOG_ERROR let LOG_ERROR=$log_error_; @@ -109,8 +110,9 @@ let LOG_ERROR=$log_error_; perl; use strict; + use Cwd; my $log_error= $ENV{'LOG_ERROR'} or die "LOG_ERROR not set"; - open(FILE, "$log_error") or die("Unable to open $log_error: $!\n"); + open(FILE, "$log_error") or die("Unable to open '$log_error' from directory " . cwd() . "\n"); my $count = () = grep(/Bug#46265/g,<FILE>); print "Occurrences: $count\n"; close(FILE); diff --git a/mysql-test/suite/federated/federated_server.result b/mysql-test/suite/federated/federated_server.result index af6bf9bc88d..ad71a175a38 100644 --- a/mysql-test/suite/federated/federated_server.result +++ b/mysql-test/suite/federated/federated_server.result @@ -54,7 +54,7 @@ PASSWORD '', PORT SLAVE_PORT, SOCKET '', OWNER 'root'); -select * from mysql.servers; +select * from mysql.servers order by db; Server_name Host Db Username Password Port Socket Wrapper Owner server_one 127.0.0.1 first_db root SLAVE_PORT mysql root server_two 127.0.0.1 second_db root SLAVE_PORT mysql root @@ -154,7 +154,7 @@ id name drop table federated.t1; drop server 'server_one'; drop server 'server_two'; -select * from mysql.servers; +select * from mysql.servers order by db; Server_name Host Db Username Password Port Socket Wrapper Owner drop table first_db.t1; drop table second_db.t1; diff --git a/mysql-test/suite/federated/federated_server.test b/mysql-test/suite/federated/federated_server.test index 0fddc95e1f3..1a120f3e2ec 100644 --- a/mysql-test/suite/federated/federated_server.test +++ b/mysql-test/suite/federated/federated_server.test @@ -66,7 +66,7 @@ eval create server 'server_two' foreign data wrapper 'mysql' options OWNER 'root'); --replace_result $SLAVE_MYPORT SLAVE_PORT -eval select * from mysql.servers; +eval select * from mysql.servers order by db; DROP TABLE IF EXISTS federated.old; --replace_result $SLAVE_MYPORT SLAVE_PORT @@ -151,7 +151,7 @@ drop table federated.t1; drop server 'server_one'; drop server 'server_two'; -select * from mysql.servers; +select * from mysql.servers order by db; connection slave; drop table first_db.t1; diff --git a/mysql-test/suite/funcs_1/datadict/is_routines.inc b/mysql-test/suite/funcs_1/datadict/is_routines.inc index e6405c8d455..cc0cbdf62fe 100644 --- a/mysql-test/suite/funcs_1/datadict/is_routines.inc +++ b/mysql-test/suite/funcs_1/datadict/is_routines.inc @@ -75,7 +75,7 @@ eval SHOW TABLES FROM information_schema LIKE '$is_table'; --source suite/funcs_1/datadict/datadict_bug_12777.inc eval DESCRIBE information_schema.$is_table; --source suite/funcs_1/datadict/datadict_bug_12777.inc ---replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" +--replace_result ENGINE=MyISAM "" ENGINE=Aria "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE information_schema.$is_table; --source suite/funcs_1/datadict/datadict_bug_12777.inc eval SHOW COLUMNS FROM information_schema.$is_table; diff --git a/mysql-test/suite/funcs_1/datadict/is_triggers.inc b/mysql-test/suite/funcs_1/datadict/is_triggers.inc index df3e6e7d2b6..5597bc816fc 100644 --- a/mysql-test/suite/funcs_1/datadict/is_triggers.inc +++ b/mysql-test/suite/funcs_1/datadict/is_triggers.inc @@ -70,7 +70,7 @@ eval SHOW TABLES FROM information_schema LIKE '$is_table'; --source suite/funcs_1/datadict/datadict_bug_12777.inc eval DESCRIBE information_schema.$is_table; --source suite/funcs_1/datadict/datadict_bug_12777.inc ---replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" +--replace_result ENGINE=MyISAM "" ENGINE=Aria "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE information_schema.$is_table; --source suite/funcs_1/datadict/datadict_bug_12777.inc eval SHOW COLUMNS FROM information_schema.$is_table; diff --git a/mysql-test/suite/funcs_1/datadict/is_views.inc b/mysql-test/suite/funcs_1/datadict/is_views.inc index b04904c2eba..0ba1aaff3f2 100644 --- a/mysql-test/suite/funcs_1/datadict/is_views.inc +++ b/mysql-test/suite/funcs_1/datadict/is_views.inc @@ -57,7 +57,7 @@ eval SHOW TABLES FROM information_schema LIKE '$is_table'; --source suite/funcs_1/datadict/datadict_bug_12777.inc eval DESCRIBE information_schema.$is_table; --source suite/funcs_1/datadict/datadict_bug_12777.inc ---replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" +--replace_result ENGINE=MyISAM "" ENGINE=Aria "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE information_schema.$is_table; --source suite/funcs_1/datadict/datadict_bug_12777.inc eval SHOW COLUMNS FROM information_schema.$is_table; diff --git a/mysql-test/suite/funcs_1/datadict/processlist_priv.inc b/mysql-test/suite/funcs_1/datadict/processlist_priv.inc index 1fffdf014e6..544560ec526 100644 --- a/mysql-test/suite/funcs_1/datadict/processlist_priv.inc +++ b/mysql-test/suite/funcs_1/datadict/processlist_priv.inc @@ -155,7 +155,7 @@ let $wait_condition= SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE DB = 'information_schema' AND COMMAND = 'Sleep' AND USER = 'ddicttestuser1'; --source include/wait_condition.inc ---replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" +--replace_result ENGINE=MyISAM "" ENGINE=Aria "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE $table; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS eval SHOW $table; @@ -175,7 +175,7 @@ connection con100; # No need for poll routine here. # The current state of the default session might depend on load of testing box # but "ddicttestuser1" must not see anything of the root session. ---replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" +--replace_result ENGINE=MyISAM "" ENGINE=Aria "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE $table; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS eval SHOW $table; diff --git a/mysql-test/suite/funcs_1/datadict/processlist_val.inc b/mysql-test/suite/funcs_1/datadict/processlist_val.inc index a2ab02c963f..b1c1130cbdf 100644 --- a/mysql-test/suite/funcs_1/datadict/processlist_val.inc +++ b/mysql-test/suite/funcs_1/datadict/processlist_val.inc @@ -72,7 +72,7 @@ echo # Show the definition of the PROCESSLIST table #-------------------------------------------------------------------------- ; ---replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" +--replace_result ENGINE=MyISAM "" ENGINE=Aria "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" SHOW CREATE TABLE INFORMATION_SCHEMA.PROCESSLIST; echo diff --git a/mysql-test/suite/funcs_1/datadict/tables2.inc b/mysql-test/suite/funcs_1/datadict/tables2.inc index f9bb296eeaa..0d110dd22d9 100644 --- a/mysql-test/suite/funcs_1/datadict/tables2.inc +++ b/mysql-test/suite/funcs_1/datadict/tables2.inc @@ -31,7 +31,7 @@ let $ndb_pattern = 'number_of_replicas'; --vertical_results # We do not unify the engine name here, because the rowformat is # specific to the engine. ---replace_result Dynamic DYNAMIC_OR_PAGE Page DYNAMIC_OR_PAGE MyISAM MYISAM_OR_MARIA MARIA MYISAM_OR_MARIA +--replace_result Dynamic DYNAMIC_OR_PAGE Page DYNAMIC_OR_PAGE MyISAM MYISAM_OR_MARIA Aria MYISAM_OR_MARIA --replace_column 8 "#TBLR#" 9 "#ARL#" 10 "#DL#" 11 "#MDL#" 12 "#IL#" 13 "#DF#" 15 "#CRT#" 16 "#UT#" 17 "#CT#" 20 "#CO#" 21 "#TC#" eval SELECT *, diff --git a/mysql-test/suite/funcs_1/r/is_columns_is.result b/mysql-test/suite/funcs_1/r/is_columns_is.result index e647d4af174..4b9577109b3 100644 --- a/mysql-test/suite/funcs_1/r/is_columns_is.result +++ b/mysql-test/suite/funcs_1/r/is_columns_is.result @@ -7,6 +7,29 @@ NULL information_schema CHARACTER_SETS CHARACTER_SET_NAME 1 NO varchar 32 96 NU NULL information_schema CHARACTER_SETS DEFAULT_COLLATE_NAME 2 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select NULL information_schema CHARACTER_SETS DESCRIPTION 3 NO varchar 60 180 NULL NULL utf8 utf8_general_ci varchar(60) select NULL information_schema CHARACTER_SETS MAXLEN 4 0 NO bigint NULL NULL 19 0 NULL NULL bigint(3) select +NULL information_schema CLIENT_STATISTICS ACCESS_DENIED 22 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS BINLOG_BYTES_WRITTEN 9 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS BUSY_TIME 5 0 NO double NULL NULL 21 NULL NULL NULL double select +NULL information_schema CLIENT_STATISTICS BYTES_RECEIVED 7 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS BYTES_SENT 8 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS CLIENT 1 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select +NULL information_schema CLIENT_STATISTICS COMMIT_TRANSACTIONS 18 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS CONCURRENT_CONNECTIONS 3 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS CONNECTED_TIME 4 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS CPU_TIME 6 0 NO double NULL NULL 21 NULL NULL NULL double select +NULL information_schema CLIENT_STATISTICS DENIED_CONNECTIONS 20 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS EMPTY_QUERIES 23 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS LOST_CONNECTIONS 21 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS OTHER_COMMANDS 17 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS ROLLBACK_TRANSACTIONS 19 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS ROWS_DELETED 12 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS ROWS_INSERTED 13 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS ROWS_READ 10 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS ROWS_SENT 11 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS ROWS_UPDATED 14 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS SELECT_COMMANDS 15 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS TOTAL_CONNECTIONS 2 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema CLIENT_STATISTICS UPDATE_COMMANDS 16 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select NULL information_schema COLLATIONS CHARACTER_SET_NAME 2 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select NULL information_schema COLLATIONS COLLATION_NAME 1 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select NULL information_schema COLLATIONS ID 3 0 NO bigint NULL NULL 19 0 NULL NULL bigint(11) select @@ -113,6 +136,10 @@ NULL information_schema GLOBAL_STATUS VARIABLE_NAME 1 NO varchar 64 192 NULL NU NULL information_schema GLOBAL_STATUS VARIABLE_VALUE 2 NULL YES varchar 1024 3072 NULL NULL utf8 utf8_general_ci varchar(1024) select NULL information_schema GLOBAL_VARIABLES VARIABLE_NAME 1 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select NULL information_schema GLOBAL_VARIABLES VARIABLE_VALUE 2 NULL YES varchar 1024 3072 NULL NULL utf8 utf8_general_ci varchar(1024) select +NULL information_schema INDEX_STATISTICS INDEX_NAME 3 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) select +NULL information_schema INDEX_STATISTICS ROWS_READ 4 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema INDEX_STATISTICS TABLE_NAME 2 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) select +NULL information_schema INDEX_STATISTICS TABLE_SCHEMA 1 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) select NULL information_schema INNODB_BUFFER_POOL_PAGES fix_count 5 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select NULL information_schema INNODB_BUFFER_POOL_PAGES flush_type 6 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select NULL information_schema INNODB_BUFFER_POOL_PAGES lru_position 4 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select @@ -223,6 +250,18 @@ NULL information_schema INNODB_TRX trx_started 3 0000-00-00 00:00:00 NO datetime NULL information_schema INNODB_TRX trx_state 2 NO varchar 13 39 NULL NULL utf8 utf8_general_ci varchar(13) select NULL information_schema INNODB_TRX trx_wait_started 5 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select NULL information_schema INNODB_TRX trx_weight 6 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select +NULL information_schema KEY_CACHES BLOCK_SIZE 5 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select +NULL information_schema KEY_CACHES DIRTY_BLOCKS 8 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select +NULL information_schema KEY_CACHES FULL_SIZE 4 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select +NULL information_schema KEY_CACHES KEY_CACHE_NAME 1 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) select +NULL information_schema KEY_CACHES READS 10 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select +NULL information_schema KEY_CACHES READ_REQUESTS 9 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select +NULL information_schema KEY_CACHES SEGMENTS 2 NULL YES int NULL NULL 10 0 NULL NULL int(3) unsigned select +NULL information_schema KEY_CACHES SEGMENT_NUMBER 3 NULL YES int NULL NULL 10 0 NULL NULL int(3) unsigned select +NULL information_schema KEY_CACHES UNUSED_BLOCKS 7 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select +NULL information_schema KEY_CACHES USED_BLOCKS 6 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select +NULL information_schema KEY_CACHES WRITES 12 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select +NULL information_schema KEY_CACHES WRITE_REQUESTS 11 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select NULL information_schema KEY_COLUMN_USAGE COLUMN_NAME 7 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select NULL information_schema KEY_COLUMN_USAGE CONSTRAINT_CATALOG 1 NULL YES varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select NULL information_schema KEY_COLUMN_USAGE CONSTRAINT_NAME 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select @@ -264,10 +303,12 @@ NULL information_schema PBXT_STATISTICS ID 1 0 NO int NULL NULL 10 0 NULL NULL i NULL information_schema PBXT_STATISTICS Name 2 NO varchar 40 120 NULL NULL utf8 utf8_general_ci varchar(40) select NULL information_schema PBXT_STATISTICS Value 3 0 NO bigint NULL NULL 19 0 NULL NULL bigint(8) select NULL information_schema PLUGINS PLUGIN_AUTHOR 8 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select +NULL information_schema PLUGINS PLUGIN_AUTH_VERSION 12 NULL YES varchar 80 240 NULL NULL utf8 utf8_general_ci varchar(80) select NULL information_schema PLUGINS PLUGIN_DESCRIPTION 9 NULL YES longtext 4294967295 4294967295 NULL NULL utf8 utf8_general_ci longtext select NULL information_schema PLUGINS PLUGIN_LIBRARY 6 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select NULL information_schema PLUGINS PLUGIN_LIBRARY_VERSION 7 NULL YES varchar 20 60 NULL NULL utf8 utf8_general_ci varchar(20) select NULL information_schema PLUGINS PLUGIN_LICENSE 10 NULL YES varchar 80 240 NULL NULL utf8 utf8_general_ci varchar(80) select +NULL information_schema PLUGINS PLUGIN_MATURITY 11 NULL YES varchar 12 36 NULL NULL utf8 utf8_general_ci varchar(12) select NULL information_schema PLUGINS PLUGIN_NAME 1 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select NULL information_schema PLUGINS PLUGIN_STATUS 3 NO varchar 10 30 NULL NULL utf8 utf8_general_ci varchar(10) select NULL information_schema PLUGINS PLUGIN_TYPE 4 NO varchar 80 240 NULL NULL utf8 utf8_general_ci varchar(80) select @@ -378,6 +419,11 @@ NULL information_schema TABLE_PRIVILEGES PRIVILEGE_TYPE 5 NO varchar 64 192 NUL NULL information_schema TABLE_PRIVILEGES TABLE_CATALOG 2 NULL YES varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select NULL information_schema TABLE_PRIVILEGES TABLE_NAME 4 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select NULL information_schema TABLE_PRIVILEGES TABLE_SCHEMA 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select +NULL information_schema TABLE_STATISTICS ROWS_CHANGED 4 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema TABLE_STATISTICS ROWS_CHANGED_X_INDEXES 5 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema TABLE_STATISTICS ROWS_READ 3 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema TABLE_STATISTICS TABLE_NAME 2 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) select +NULL information_schema TABLE_STATISTICS TABLE_SCHEMA 1 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) select NULL information_schema TRIGGERS ACTION_CONDITION 9 NULL YES longtext 4294967295 4294967295 NULL NULL utf8 utf8_general_ci longtext select NULL information_schema TRIGGERS ACTION_ORDER 8 0 NO bigint NULL NULL 19 0 NULL NULL bigint(4) select NULL information_schema TRIGGERS ACTION_ORIENTATION 11 NO varchar 9 27 NULL NULL utf8 utf8_general_ci varchar(9) select @@ -404,6 +450,29 @@ NULL information_schema USER_PRIVILEGES GRANTEE 1 NO varchar 81 243 NULL NULL u NULL information_schema USER_PRIVILEGES IS_GRANTABLE 4 NO varchar 3 9 NULL NULL utf8 utf8_general_ci varchar(3) select NULL information_schema USER_PRIVILEGES PRIVILEGE_TYPE 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select NULL information_schema USER_PRIVILEGES TABLE_CATALOG 2 NULL YES varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select +NULL information_schema USER_STATISTICS ACCESS_DENIED 22 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS BINLOG_BYTES_WRITTEN 9 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS BUSY_TIME 5 0 NO double NULL NULL 21 NULL NULL NULL double select +NULL information_schema USER_STATISTICS BYTES_RECEIVED 7 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS BYTES_SENT 8 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS COMMIT_TRANSACTIONS 18 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS CONCURRENT_CONNECTIONS 3 0 NO int NULL NULL 10 0 NULL NULL int(11) select +NULL information_schema USER_STATISTICS CONNECTED_TIME 4 0 NO int NULL NULL 10 0 NULL NULL int(11) select +NULL information_schema USER_STATISTICS CPU_TIME 6 0 NO double NULL NULL 21 NULL NULL NULL double select +NULL information_schema USER_STATISTICS DENIED_CONNECTIONS 20 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS EMPTY_QUERIES 23 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS LOST_CONNECTIONS 21 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS OTHER_COMMANDS 17 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS ROLLBACK_TRANSACTIONS 19 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS ROWS_DELETED 12 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS ROWS_INSERTED 13 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS ROWS_READ 10 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS ROWS_SENT 11 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS ROWS_UPDATED 14 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS SELECT_COMMANDS 15 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS TOTAL_CONNECTIONS 2 0 NO int NULL NULL 10 0 NULL NULL int(11) select +NULL information_schema USER_STATISTICS UPDATE_COMMANDS 16 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) select +NULL information_schema USER_STATISTICS USER 1 NO varchar 48 144 NULL NULL utf8 utf8_general_ci varchar(48) select NULL information_schema VIEWS CHARACTER_SET_CLIENT 9 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select NULL information_schema VIEWS CHECK_OPTION 5 NO varchar 8 24 NULL NULL utf8 utf8_general_ci varchar(8) select NULL information_schema VIEWS COLLATION_CONNECTION 10 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select @@ -460,6 +529,7 @@ COL_CML DATA_TYPE CHARACTER_SET_NAME COLLATION_NAME NULL bigint NULL NULL NULL datetime NULL NULL NULL decimal NULL NULL +NULL double NULL NULL NULL int NULL NULL --> CHAR(0) is allowed (see manual), and here both CHARACHTER_* values --> are 0, which is intended behavior, and the result of 0 / 0 IS NULL @@ -482,6 +552,29 @@ COL_CML TABLE_SCHEMA TABLE_NAME COLUMN_NAME DATA_TYPE CHARACTER_MAXIMUM_LENGTH C 3.0000 information_schema CHARACTER_SETS DEFAULT_COLLATE_NAME varchar 32 96 utf8 utf8_general_ci varchar(32) 3.0000 information_schema CHARACTER_SETS DESCRIPTION varchar 60 180 utf8 utf8_general_ci varchar(60) NULL information_schema CHARACTER_SETS MAXLEN bigint NULL NULL NULL NULL bigint(3) +3.0000 information_schema CLIENT_STATISTICS CLIENT varchar 64 192 utf8 utf8_general_ci varchar(64) +NULL information_schema CLIENT_STATISTICS TOTAL_CONNECTIONS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS CONCURRENT_CONNECTIONS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS CONNECTED_TIME bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS BUSY_TIME double NULL NULL NULL NULL double +NULL information_schema CLIENT_STATISTICS CPU_TIME double NULL NULL NULL NULL double +NULL information_schema CLIENT_STATISTICS BYTES_RECEIVED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS BYTES_SENT bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS BINLOG_BYTES_WRITTEN bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS ROWS_READ bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS ROWS_SENT bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS ROWS_DELETED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS ROWS_INSERTED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS ROWS_UPDATED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS SELECT_COMMANDS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS UPDATE_COMMANDS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS OTHER_COMMANDS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS COMMIT_TRANSACTIONS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS ROLLBACK_TRANSACTIONS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS DENIED_CONNECTIONS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS LOST_CONNECTIONS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS ACCESS_DENIED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema CLIENT_STATISTICS EMPTY_QUERIES bigint NULL NULL NULL NULL bigint(21) 3.0000 information_schema COLLATIONS COLLATION_NAME varchar 32 96 utf8 utf8_general_ci varchar(32) 3.0000 information_schema COLLATIONS CHARACTER_SET_NAME varchar 32 96 utf8 utf8_general_ci varchar(32) NULL information_schema COLLATIONS ID bigint NULL NULL NULL NULL bigint(11) @@ -588,6 +681,10 @@ NULL information_schema FILES CHECKSUM bigint NULL NULL NULL NULL bigint(21) uns 3.0000 information_schema GLOBAL_STATUS VARIABLE_VALUE varchar 1024 3072 utf8 utf8_general_ci varchar(1024) 3.0000 information_schema GLOBAL_VARIABLES VARIABLE_NAME varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema GLOBAL_VARIABLES VARIABLE_VALUE varchar 1024 3072 utf8 utf8_general_ci varchar(1024) +3.0000 information_schema INDEX_STATISTICS TABLE_SCHEMA varchar 192 576 utf8 utf8_general_ci varchar(192) +3.0000 information_schema INDEX_STATISTICS TABLE_NAME varchar 192 576 utf8 utf8_general_ci varchar(192) +3.0000 information_schema INDEX_STATISTICS INDEX_NAME varchar 192 576 utf8 utf8_general_ci varchar(192) +NULL information_schema INDEX_STATISTICS ROWS_READ bigint NULL NULL NULL NULL bigint(21) 3.0000 information_schema INNODB_BUFFER_POOL_PAGES page_type varchar 64 192 utf8 utf8_general_ci varchar(64) NULL information_schema INNODB_BUFFER_POOL_PAGES space_id bigint NULL NULL NULL NULL bigint(21) unsigned NULL information_schema INNODB_BUFFER_POOL_PAGES page_no bigint NULL NULL NULL NULL bigint(21) unsigned @@ -698,6 +795,18 @@ NULL information_schema INNODB_TRX trx_wait_started datetime NULL NULL NULL NULL NULL information_schema INNODB_TRX trx_weight bigint NULL NULL NULL NULL bigint(21) unsigned NULL information_schema INNODB_TRX trx_mysql_thread_id bigint NULL NULL NULL NULL bigint(21) unsigned 3.0000 information_schema INNODB_TRX trx_query varchar 1024 3072 utf8 utf8_general_ci varchar(1024) +3.0000 information_schema KEY_CACHES KEY_CACHE_NAME varchar 192 576 utf8 utf8_general_ci varchar(192) +NULL information_schema KEY_CACHES SEGMENTS int NULL NULL NULL NULL int(3) unsigned +NULL information_schema KEY_CACHES SEGMENT_NUMBER int NULL NULL NULL NULL int(3) unsigned +NULL information_schema KEY_CACHES FULL_SIZE bigint NULL NULL NULL NULL bigint(21) unsigned +NULL information_schema KEY_CACHES BLOCK_SIZE bigint NULL NULL NULL NULL bigint(21) unsigned +NULL information_schema KEY_CACHES USED_BLOCKS bigint NULL NULL NULL NULL bigint(21) unsigned +NULL information_schema KEY_CACHES UNUSED_BLOCKS bigint NULL NULL NULL NULL bigint(21) unsigned +NULL information_schema KEY_CACHES DIRTY_BLOCKS bigint NULL NULL NULL NULL bigint(21) unsigned +NULL information_schema KEY_CACHES READ_REQUESTS bigint NULL NULL NULL NULL bigint(21) unsigned +NULL information_schema KEY_CACHES READS bigint NULL NULL NULL NULL bigint(21) unsigned +NULL information_schema KEY_CACHES WRITE_REQUESTS bigint NULL NULL NULL NULL bigint(21) unsigned +NULL information_schema KEY_CACHES WRITES bigint NULL NULL NULL NULL bigint(21) unsigned 3.0000 information_schema KEY_COLUMN_USAGE CONSTRAINT_CATALOG varchar 512 1536 utf8 utf8_general_ci varchar(512) 3.0000 information_schema KEY_COLUMN_USAGE CONSTRAINT_SCHEMA varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema KEY_COLUMN_USAGE CONSTRAINT_NAME varchar 64 192 utf8 utf8_general_ci varchar(64) @@ -748,6 +857,8 @@ NULL information_schema PBXT_STATISTICS Value bigint NULL NULL NULL NULL bigint( 3.0000 information_schema PLUGINS PLUGIN_AUTHOR varchar 64 192 utf8 utf8_general_ci varchar(64) 1.0000 information_schema PLUGINS PLUGIN_DESCRIPTION longtext 4294967295 4294967295 utf8 utf8_general_ci longtext 3.0000 information_schema PLUGINS PLUGIN_LICENSE varchar 80 240 utf8 utf8_general_ci varchar(80) +3.0000 information_schema PLUGINS PLUGIN_MATURITY varchar 12 36 utf8 utf8_general_ci varchar(12) +3.0000 information_schema PLUGINS PLUGIN_AUTH_VERSION varchar 80 240 utf8 utf8_general_ci varchar(80) NULL information_schema PROCESSLIST ID bigint NULL NULL NULL NULL bigint(4) 3.0000 information_schema PROCESSLIST USER varchar 16 48 utf8 utf8_general_ci varchar(16) 3.0000 information_schema PROCESSLIST HOST varchar 64 192 utf8 utf8_general_ci varchar(64) @@ -853,6 +964,11 @@ NULL information_schema TABLES CHECKSUM bigint NULL NULL NULL NULL bigint(21) un 3.0000 information_schema TABLE_PRIVILEGES TABLE_NAME varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema TABLE_PRIVILEGES PRIVILEGE_TYPE varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema TABLE_PRIVILEGES IS_GRANTABLE varchar 3 9 utf8 utf8_general_ci varchar(3) +3.0000 information_schema TABLE_STATISTICS TABLE_SCHEMA varchar 192 576 utf8 utf8_general_ci varchar(192) +3.0000 information_schema TABLE_STATISTICS TABLE_NAME varchar 192 576 utf8 utf8_general_ci varchar(192) +NULL information_schema TABLE_STATISTICS ROWS_READ bigint NULL NULL NULL NULL bigint(21) +NULL information_schema TABLE_STATISTICS ROWS_CHANGED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema TABLE_STATISTICS ROWS_CHANGED_X_INDEXES bigint NULL NULL NULL NULL bigint(21) 3.0000 information_schema TRIGGERS TRIGGER_CATALOG varchar 512 1536 utf8 utf8_general_ci varchar(512) 3.0000 information_schema TRIGGERS TRIGGER_SCHEMA varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema TRIGGERS TRIGGER_NAME varchar 64 192 utf8 utf8_general_ci varchar(64) @@ -879,6 +995,29 @@ NULL information_schema TRIGGERS CREATED datetime NULL NULL NULL NULL datetime 3.0000 information_schema USER_PRIVILEGES TABLE_CATALOG varchar 512 1536 utf8 utf8_general_ci varchar(512) 3.0000 information_schema USER_PRIVILEGES PRIVILEGE_TYPE varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema USER_PRIVILEGES IS_GRANTABLE varchar 3 9 utf8 utf8_general_ci varchar(3) +3.0000 information_schema USER_STATISTICS USER varchar 48 144 utf8 utf8_general_ci varchar(48) +NULL information_schema USER_STATISTICS TOTAL_CONNECTIONS int NULL NULL NULL NULL int(11) +NULL information_schema USER_STATISTICS CONCURRENT_CONNECTIONS int NULL NULL NULL NULL int(11) +NULL information_schema USER_STATISTICS CONNECTED_TIME int NULL NULL NULL NULL int(11) +NULL information_schema USER_STATISTICS BUSY_TIME double NULL NULL NULL NULL double +NULL information_schema USER_STATISTICS CPU_TIME double NULL NULL NULL NULL double +NULL information_schema USER_STATISTICS BYTES_RECEIVED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS BYTES_SENT bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS BINLOG_BYTES_WRITTEN bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS ROWS_READ bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS ROWS_SENT bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS ROWS_DELETED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS ROWS_INSERTED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS ROWS_UPDATED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS SELECT_COMMANDS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS UPDATE_COMMANDS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS OTHER_COMMANDS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS COMMIT_TRANSACTIONS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS ROLLBACK_TRANSACTIONS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS DENIED_CONNECTIONS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS LOST_CONNECTIONS bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS ACCESS_DENIED bigint NULL NULL NULL NULL bigint(21) +NULL information_schema USER_STATISTICS EMPTY_QUERIES bigint NULL NULL NULL NULL bigint(21) 3.0000 information_schema VIEWS TABLE_CATALOG varchar 512 1536 utf8 utf8_general_ci varchar(512) 3.0000 information_schema VIEWS TABLE_SCHEMA varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema VIEWS TABLE_NAME varchar 64 192 utf8 utf8_general_ci varchar(64) diff --git a/mysql-test/suite/funcs_1/r/is_columns_is_embedded.result b/mysql-test/suite/funcs_1/r/is_columns_is_embedded.result index 5cf23ab5c36..9fd9fc3130d 100644 --- a/mysql-test/suite/funcs_1/r/is_columns_is_embedded.result +++ b/mysql-test/suite/funcs_1/r/is_columns_is_embedded.result @@ -7,6 +7,29 @@ NULL information_schema CHARACTER_SETS CHARACTER_SET_NAME 1 NO varchar 32 96 NU NULL information_schema CHARACTER_SETS DEFAULT_COLLATE_NAME 2 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) NULL information_schema CHARACTER_SETS DESCRIPTION 3 NO varchar 60 180 NULL NULL utf8 utf8_general_ci varchar(60) NULL information_schema CHARACTER_SETS MAXLEN 4 0 NO bigint NULL NULL 19 0 NULL NULL bigint(3) +NULL information_schema CLIENT_STATISTICS ACCESS_DENIED 22 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS BINLOG_BYTES_WRITTEN 9 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS BUSY_TIME 5 0 NO double NULL NULL 21 NULL NULL NULL double +NULL information_schema CLIENT_STATISTICS BYTES_RECEIVED 7 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS BYTES_SENT 8 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS CLIENT 1 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) +NULL information_schema CLIENT_STATISTICS COMMIT_TRANSACTIONS 18 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS CONCURRENT_CONNECTIONS 3 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS CONNECTED_TIME 4 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS CPU_TIME 6 0 NO double NULL NULL 21 NULL NULL NULL double +NULL information_schema CLIENT_STATISTICS DENIED_CONNECTIONS 20 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS EMPTY_QUERIES 23 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS LOST_CONNECTIONS 21 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS OTHER_COMMANDS 17 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROLLBACK_TRANSACTIONS 19 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROWS_DELETED 12 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROWS_INSERTED 13 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROWS_READ 10 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROWS_SENT 11 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROWS_UPDATED 14 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS SELECT_COMMANDS 15 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS TOTAL_CONNECTIONS 2 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS UPDATE_COMMANDS 16 0 NO int NULL NULL 10 0 NULL NULL int(21) NULL information_schema COLLATIONS CHARACTER_SET_NAME 2 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) NULL information_schema COLLATIONS COLLATION_NAME 1 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) NULL information_schema COLLATIONS ID 3 0 NO bigint NULL NULL 19 0 NULL NULL bigint(11) @@ -113,6 +136,10 @@ NULL information_schema GLOBAL_STATUS VARIABLE_NAME 1 NO varchar 64 192 NULL NU NULL information_schema GLOBAL_STATUS VARIABLE_VALUE 2 NULL YES varchar 1024 3072 NULL NULL utf8 utf8_general_ci varchar(1024) NULL information_schema GLOBAL_VARIABLES VARIABLE_NAME 1 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) NULL information_schema GLOBAL_VARIABLES VARIABLE_VALUE 2 NULL YES varchar 1024 3072 NULL NULL utf8 utf8_general_ci varchar(1024) +NULL information_schema INDEX_STATISTICS INDEX_NAME 3 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) +NULL information_schema INDEX_STATISTICS ROWS_READ 4 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema INDEX_STATISTICS TABLE_NAME 2 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) +NULL information_schema INDEX_STATISTICS TABLE_SCHEMA 1 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) NULL information_schema INNODB_BUFFER_POOL_PAGES fix_count 5 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned NULL information_schema INNODB_BUFFER_POOL_PAGES flush_type 6 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned NULL information_schema INNODB_BUFFER_POOL_PAGES lru_position 4 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned @@ -355,6 +382,11 @@ NULL information_schema TABLE_PRIVILEGES PRIVILEGE_TYPE 5 NO varchar 64 192 NUL NULL information_schema TABLE_PRIVILEGES TABLE_CATALOG 2 NULL YES varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) NULL information_schema TABLE_PRIVILEGES TABLE_NAME 4 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) NULL information_schema TABLE_PRIVILEGES TABLE_SCHEMA 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) +NULL information_schema TABLE_STATISTICS ROWS_CHANGED 4 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema TABLE_STATISTICS ROWS_CHANGED_X_INDEXES 5 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema TABLE_STATISTICS ROWS_READ 3 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema TABLE_STATISTICS TABLE_NAME 2 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) +NULL information_schema TABLE_STATISTICS TABLE_SCHEMA 1 NO varchar 192 576 NULL NULL utf8 utf8_general_ci varchar(192) NULL information_schema TRIGGERS ACTION_CONDITION 9 NULL YES longtext 4294967295 4294967295 NULL NULL utf8 utf8_general_ci longtext NULL information_schema TRIGGERS ACTION_ORDER 8 0 NO bigint NULL NULL 19 0 NULL NULL bigint(4) NULL information_schema TRIGGERS ACTION_ORIENTATION 11 NO varchar 9 27 NULL NULL utf8 utf8_general_ci varchar(9) @@ -381,6 +413,29 @@ NULL information_schema USER_PRIVILEGES GRANTEE 1 NO varchar 81 243 NULL NULL u NULL information_schema USER_PRIVILEGES IS_GRANTABLE 4 NO varchar 3 9 NULL NULL utf8 utf8_general_ci varchar(3) NULL information_schema USER_PRIVILEGES PRIVILEGE_TYPE 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) NULL information_schema USER_PRIVILEGES TABLE_CATALOG 2 NULL YES varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) +NULL information_schema USER_STATISTICS ACCESS_DENIED 22 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS BINLOG_BYTES_WRITTEN 9 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS BUSY_TIME 5 0 NO double NULL NULL 21 NULL NULL NULL double +NULL information_schema USER_STATISTICS BYTES_RECEIVED 7 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS BYTES_SENT 8 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS COMMIT_TRANSACTIONS 18 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS CONCURRENT_CONNECTIONS 3 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS CONNECTED_TIME 4 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS CPU_TIME 6 0 NO double NULL NULL 21 NULL NULL NULL double +NULL information_schema USER_STATISTICS DENIED_CONNECTIONS 20 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS EMPTY_QUERIES 23 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS LOST_CONNECTIONS 21 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS OTHER_COMMANDS 17 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS ROLLBACK_TRANSACTIONS 19 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS ROWS_DELETED 12 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS ROWS_INSERTED 13 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS ROWS_READ 10 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS ROWS_SENT 11 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS ROWS_UPDATED 14 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS SELECT_COMMANDS 15 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS TOTAL_CONNECTIONS 2 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS UPDATE_COMMANDS 16 0 NO int NULL NULL 10 0 NULL NULL int(21) +NULL information_schema USER_STATISTICS USER 1 NO varchar 48 144 NULL NULL utf8 utf8_general_ci varchar(48) NULL information_schema VIEWS CHARACTER_SET_CLIENT 9 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) NULL information_schema VIEWS CHECK_OPTION 5 NO varchar 8 24 NULL NULL utf8 utf8_general_ci varchar(8) NULL information_schema VIEWS COLLATION_CONNECTION 10 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) @@ -436,6 +491,7 @@ COL_CML DATA_TYPE CHARACTER_SET_NAME COLLATION_NAME NULL bigint NULL NULL NULL datetime NULL NULL NULL decimal NULL NULL +NULL double NULL NULL NULL int NULL NULL --> CHAR(0) is allowed (see manual), and here both CHARACHTER_* values --> are 0, which is intended behavior, and the result of 0 / 0 IS NULL @@ -458,6 +514,29 @@ COL_CML TABLE_SCHEMA TABLE_NAME COLUMN_NAME DATA_TYPE CHARACTER_MAXIMUM_LENGTH C 3.0000 information_schema CHARACTER_SETS DEFAULT_COLLATE_NAME varchar 32 96 utf8 utf8_general_ci varchar(32) 3.0000 information_schema CHARACTER_SETS DESCRIPTION varchar 60 180 utf8 utf8_general_ci varchar(60) NULL information_schema CHARACTER_SETS MAXLEN bigint NULL NULL NULL NULL bigint(3) +3.0000 information_schema CLIENT_STATISTICS CLIENT varchar 64 192 utf8 utf8_general_ci varchar(64) +NULL information_schema CLIENT_STATISTICS TOTAL_CONNECTIONS int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS CONCURRENT_CONNECTIONS int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS CONNECTED_TIME int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS BUSY_TIME double NULL NULL NULL NULL double +NULL information_schema CLIENT_STATISTICS CPU_TIME double NULL NULL NULL NULL double +NULL information_schema CLIENT_STATISTICS BYTES_RECEIVED int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS BYTES_SENT int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS BINLOG_BYTES_WRITTEN int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROWS_READ int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROWS_SENT int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROWS_DELETED int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROWS_INSERTED int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROWS_UPDATED int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS SELECT_COMMANDS int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS UPDATE_COMMANDS int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS OTHER_COMMANDS int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS COMMIT_TRANSACTIONS int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ROLLBACK_TRANSACTIONS int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS DENIED_CONNECTIONS int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS LOST_CONNECTIONS int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS ACCESS_DENIED int NULL NULL NULL NULL int(21) +NULL information_schema CLIENT_STATISTICS EMPTY_QUERIES int NULL NULL NULL NULL int(21) 3.0000 information_schema COLLATIONS COLLATION_NAME varchar 32 96 utf8 utf8_general_ci varchar(32) 3.0000 information_schema COLLATIONS CHARACTER_SET_NAME varchar 32 96 utf8 utf8_general_ci varchar(32) NULL information_schema COLLATIONS ID bigint NULL NULL NULL NULL bigint(11) @@ -564,6 +643,10 @@ NULL information_schema FILES CHECKSUM bigint NULL NULL NULL NULL bigint(21) uns 3.0000 information_schema GLOBAL_STATUS VARIABLE_VALUE varchar 1024 3072 utf8 utf8_general_ci varchar(1024) 3.0000 information_schema GLOBAL_VARIABLES VARIABLE_NAME varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema GLOBAL_VARIABLES VARIABLE_VALUE varchar 1024 3072 utf8 utf8_general_ci varchar(1024) +3.0000 information_schema INDEX_STATISTICS TABLE_SCHEMA varchar 192 576 utf8 utf8_general_ci varchar(192) +3.0000 information_schema INDEX_STATISTICS TABLE_NAME varchar 192 576 utf8 utf8_general_ci varchar(192) +3.0000 information_schema INDEX_STATISTICS INDEX_NAME varchar 192 576 utf8 utf8_general_ci varchar(192) +NULL information_schema INDEX_STATISTICS ROWS_READ int NULL NULL NULL NULL int(21) 3.0000 information_schema INNODB_BUFFER_POOL_PAGES page_type varchar 64 192 utf8 utf8_general_ci varchar(64) NULL information_schema INNODB_BUFFER_POOL_PAGES space_id bigint NULL NULL NULL NULL bigint(21) unsigned NULL information_schema INNODB_BUFFER_POOL_PAGES page_no bigint NULL NULL NULL NULL bigint(21) unsigned @@ -806,6 +889,11 @@ NULL information_schema TABLES CHECKSUM bigint NULL NULL NULL NULL bigint(21) un 3.0000 information_schema TABLE_PRIVILEGES TABLE_NAME varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema TABLE_PRIVILEGES PRIVILEGE_TYPE varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema TABLE_PRIVILEGES IS_GRANTABLE varchar 3 9 utf8 utf8_general_ci varchar(3) +3.0000 information_schema TABLE_STATISTICS TABLE_SCHEMA varchar 192 576 utf8 utf8_general_ci varchar(192) +3.0000 information_schema TABLE_STATISTICS TABLE_NAME varchar 192 576 utf8 utf8_general_ci varchar(192) +NULL information_schema TABLE_STATISTICS ROWS_READ int NULL NULL NULL NULL int(21) +NULL information_schema TABLE_STATISTICS ROWS_CHANGED int NULL NULL NULL NULL int(21) +NULL information_schema TABLE_STATISTICS ROWS_CHANGED_X_INDEXES int NULL NULL NULL NULL int(21) 3.0000 information_schema TRIGGERS TRIGGER_CATALOG varchar 512 1536 utf8 utf8_general_ci varchar(512) 3.0000 information_schema TRIGGERS TRIGGER_SCHEMA varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema TRIGGERS TRIGGER_NAME varchar 64 192 utf8 utf8_general_ci varchar(64) @@ -832,6 +920,29 @@ NULL information_schema TRIGGERS CREATED datetime NULL NULL NULL NULL datetime 3.0000 information_schema USER_PRIVILEGES TABLE_CATALOG varchar 512 1536 utf8 utf8_general_ci varchar(512) 3.0000 information_schema USER_PRIVILEGES PRIVILEGE_TYPE varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema USER_PRIVILEGES IS_GRANTABLE varchar 3 9 utf8 utf8_general_ci varchar(3) +3.0000 information_schema USER_STATISTICS USER varchar 48 144 utf8 utf8_general_ci varchar(48) +NULL information_schema USER_STATISTICS TOTAL_CONNECTIONS int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS CONCURRENT_CONNECTIONS int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS CONNECTED_TIME int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS BUSY_TIME double NULL NULL NULL NULL double +NULL information_schema USER_STATISTICS CPU_TIME double NULL NULL NULL NULL double +NULL information_schema USER_STATISTICS BYTES_RECEIVED int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS BYTES_SENT int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS BINLOG_BYTES_WRITTEN int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS ROWS_READ int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS ROWS_SENT int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS ROWS_DELETED int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS ROWS_INSERTED int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS ROWS_UPDATED int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS SELECT_COMMANDS int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS UPDATE_COMMANDS int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS OTHER_COMMANDS int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS COMMIT_TRANSACTIONS int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS ROLLBACK_TRANSACTIONS int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS DENIED_CONNECTIONS int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS LOST_CONNECTIONS int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS ACCESS_DENIED int NULL NULL NULL NULL int(21) +NULL information_schema USER_STATISTICS EMPTY_QUERIES int NULL NULL NULL NULL int(21) 3.0000 information_schema VIEWS TABLE_CATALOG varchar 512 1536 utf8 utf8_general_ci varchar(512) 3.0000 information_schema VIEWS TABLE_SCHEMA varchar 64 192 utf8 utf8_general_ci varchar(64) 3.0000 information_schema VIEWS TABLE_NAME varchar 64 192 utf8 utf8_general_ci varchar(64) diff --git a/mysql-test/suite/funcs_1/r/is_columns_mysql.result b/mysql-test/suite/funcs_1/r/is_columns_mysql.result index 2b285d7cc56..30a3d047bde 100644 --- a/mysql-test/suite/funcs_1/r/is_columns_mysql.result +++ b/mysql-test/suite/funcs_1/r/is_columns_mysql.result @@ -49,7 +49,7 @@ NULL mysql event modified 9 0000-00-00 00:00:00 NO timestamp NULL NULL NULL NULL NULL mysql event name 2 NO char 64 192 NULL NULL utf8 utf8_general_ci char(64) PRI select,insert,update,references NULL mysql event on_completion 14 DROP NO enum 8 24 NULL NULL utf8 utf8_general_ci enum('DROP','PRESERVE') select,insert,update,references NULL mysql event originator 17 NULL NO int NULL NULL 10 0 NULL NULL int(10) unsigned select,insert,update,references -NULL mysql event sql_mode 15 NO set 478 1434 NULL NULL utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') select,insert,update,references +NULL mysql event sql_mode 15 NO set 494 1482 NULL NULL utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') select,insert,update,references NULL mysql event starts 11 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select,insert,update,references NULL mysql event status 13 ENABLED NO enum 18 54 NULL NULL utf8 utf8_general_ci enum('ENABLED','DISABLED','SLAVESIDE_DISABLED') select,insert,update,references NULL mysql event time_zone 18 SYSTEM NO char 64 64 NULL NULL latin1 latin1_swedish_ci char(64) select,insert,update,references @@ -124,7 +124,7 @@ NULL mysql proc returns 10 NULL NO longblob 4294967295 4294967295 NULL NULL NULL NULL mysql proc security_type 8 DEFINER NO enum 7 21 NULL NULL utf8 utf8_general_ci enum('INVOKER','DEFINER') select,insert,update,references NULL mysql proc specific_name 4 NO char 64 192 NULL NULL utf8 utf8_general_ci char(64) select,insert,update,references NULL mysql proc sql_data_access 6 CONTAINS_SQL NO enum 17 51 NULL NULL utf8 utf8_general_ci enum('CONTAINS_SQL','NO_SQL','READS_SQL_DATA','MODIFIES_SQL_DATA') select,insert,update,references -NULL mysql proc sql_mode 15 NO set 478 1434 NULL NULL utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') select,insert,update,references +NULL mysql proc sql_mode 15 NO set 494 1482 NULL NULL utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') select,insert,update,references NULL mysql proc type 3 NULL NO enum 9 27 NULL NULL utf8 utf8_general_ci enum('FUNCTION','PROCEDURE') PRI select,insert,update,references NULL mysql procs_priv Db 2 NO char 64 192 NULL NULL utf8 utf8_bin char(64) PRI select,insert,update,references NULL mysql procs_priv Grantor 6 NO char 77 231 NULL NULL utf8 utf8_bin char(77) MUL select,insert,update,references @@ -178,6 +178,7 @@ NULL mysql time_zone_transition_type Time_zone_id 1 NULL NO int NULL NULL 10 0 N NULL mysql time_zone_transition_type Transition_type_id 2 NULL NO int NULL NULL 10 0 NULL NULL int(10) unsigned PRI select,insert,update,references NULL mysql user Alter_priv 17 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references NULL mysql user Alter_routine_priv 28 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references +NULL mysql user auth_string 41 NULL NO text 65535 65535 NULL NULL utf8 utf8_bin text select,insert,update,references NULL mysql user Create_priv 8 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references NULL mysql user Create_routine_priv 27 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references NULL mysql user Create_tmp_table_priv 20 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references @@ -198,6 +199,7 @@ NULL mysql user max_questions 36 0 NO int NULL NULL 10 0 NULL NULL int(11) unsig NULL mysql user max_updates 37 0 NO int NULL NULL 10 0 NULL NULL int(11) unsigned select,insert,update,references NULL mysql user max_user_connections 39 0 NO int NULL NULL 10 0 NULL NULL int(11) unsigned select,insert,update,references NULL mysql user Password 3 NO char 41 41 NULL NULL latin1 latin1_bin char(41) select,insert,update,references +NULL mysql user plugin 40 NO char 60 60 NULL NULL latin1 latin1_swedish_ci char(60) select,insert,update,references NULL mysql user Process_priv 12 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references NULL mysql user References_priv 15 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references NULL mysql user Reload_priv 10 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references @@ -233,6 +235,7 @@ COL_CML DATA_TYPE CHARACTER_SET_NAME COLLATION_NAME 1.0000 char latin1 latin1_bin 1.0000 char latin1 latin1_swedish_ci 1.0000 varchar latin1 latin1_swedish_ci +1.0000 text utf8 utf8_bin 1.0000 mediumtext utf8 utf8_general_ci 1.0000 text utf8 utf8_general_ci SELECT DISTINCT @@ -327,7 +330,7 @@ NULL mysql event starts datetime NULL NULL NULL NULL datetime NULL mysql event ends datetime NULL NULL NULL NULL datetime 3.0000 mysql event status enum 18 54 utf8 utf8_general_ci enum('ENABLED','DISABLED','SLAVESIDE_DISABLED') 3.0000 mysql event on_completion enum 8 24 utf8 utf8_general_ci enum('DROP','PRESERVE') -3.0000 mysql event sql_mode set 478 1434 utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') +3.0000 mysql event sql_mode set 494 1482 utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') 3.0000 mysql event comment char 64 192 utf8 utf8_bin char(64) NULL mysql event originator int NULL NULL NULL NULL int(10) unsigned 1.0000 mysql event time_zone char 64 64 latin1 latin1_swedish_ci char(64) @@ -402,7 +405,7 @@ NULL mysql ndb_binlog_index schemaops bigint NULL NULL NULL NULL bigint(20) unsi 3.0000 mysql proc definer char 77 231 utf8 utf8_bin char(77) NULL mysql proc created timestamp NULL NULL NULL NULL timestamp NULL mysql proc modified timestamp NULL NULL NULL NULL timestamp -3.0000 mysql proc sql_mode set 478 1434 utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') +3.0000 mysql proc sql_mode set 494 1482 utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') 3.0000 mysql proc comment char 64 192 utf8 utf8_bin char(64) 3.0000 mysql proc character_set_client char 32 96 utf8 utf8_bin char(32) 3.0000 mysql proc collation_connection char 32 96 utf8 utf8_bin char(32) @@ -497,3 +500,5 @@ NULL mysql user max_questions int NULL NULL NULL NULL int(11) unsigned NULL mysql user max_updates int NULL NULL NULL NULL int(11) unsigned NULL mysql user max_connections int NULL NULL NULL NULL int(11) unsigned NULL mysql user max_user_connections int NULL NULL NULL NULL int(11) unsigned +1.0000 mysql user plugin char 60 60 latin1 latin1_swedish_ci char(60) +1.0000 mysql user auth_string text 65535 65535 utf8 utf8_bin text diff --git a/mysql-test/suite/funcs_1/r/is_columns_mysql_embedded.result b/mysql-test/suite/funcs_1/r/is_columns_mysql_embedded.result index 983f9dd833e..926c2219bb0 100644 --- a/mysql-test/suite/funcs_1/r/is_columns_mysql_embedded.result +++ b/mysql-test/suite/funcs_1/r/is_columns_mysql_embedded.result @@ -49,7 +49,7 @@ NULL mysql event modified 9 0000-00-00 00:00:00 NO timestamp NULL NULL NULL NULL NULL mysql event name 2 NO char 64 192 NULL NULL utf8 utf8_general_ci char(64) PRI NULL mysql event on_completion 14 DROP NO enum 8 24 NULL NULL utf8 utf8_general_ci enum('DROP','PRESERVE') NULL mysql event originator 17 NULL NO int NULL NULL 10 0 NULL NULL int(10) unsigned -NULL mysql event sql_mode 15 NO set 478 1434 NULL NULL utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') +NULL mysql event sql_mode 15 NO set 478 1434 NULL NULL utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') NULL mysql event starts 11 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime NULL mysql event status 13 ENABLED NO enum 18 54 NULL NULL utf8 utf8_general_ci enum('ENABLED','DISABLED','SLAVESIDE_DISABLED') NULL mysql event time_zone 18 SYSTEM NO char 64 64 NULL NULL latin1 latin1_swedish_ci char(64) @@ -124,7 +124,7 @@ NULL mysql proc returns 10 NULL NO longblob 4294967295 4294967295 NULL NULL NULL NULL mysql proc security_type 8 DEFINER NO enum 7 21 NULL NULL utf8 utf8_general_ci enum('INVOKER','DEFINER') NULL mysql proc specific_name 4 NO char 64 192 NULL NULL utf8 utf8_general_ci char(64) NULL mysql proc sql_data_access 6 CONTAINS_SQL NO enum 17 51 NULL NULL utf8 utf8_general_ci enum('CONTAINS_SQL','NO_SQL','READS_SQL_DATA','MODIFIES_SQL_DATA') -NULL mysql proc sql_mode 15 NO set 478 1434 NULL NULL utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') +NULL mysql proc sql_mode 15 NO set 478 1434 NULL NULL utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') NULL mysql proc type 3 NULL NO enum 9 27 NULL NULL utf8 utf8_general_ci enum('FUNCTION','PROCEDURE') PRI NULL mysql procs_priv Db 2 NO char 64 192 NULL NULL utf8 utf8_bin char(64) PRI NULL mysql procs_priv Grantor 6 NO char 77 231 NULL NULL utf8 utf8_bin char(77) MUL @@ -327,7 +327,7 @@ NULL mysql event starts datetime NULL NULL NULL NULL datetime NULL mysql event ends datetime NULL NULL NULL NULL datetime 3.0000 mysql event status enum 18 54 utf8 utf8_general_ci enum('ENABLED','DISABLED','SLAVESIDE_DISABLED') 3.0000 mysql event on_completion enum 8 24 utf8 utf8_general_ci enum('DROP','PRESERVE') -3.0000 mysql event sql_mode set 478 1434 utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') +3.0000 mysql event sql_mode set 478 1434 utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') 3.0000 mysql event comment char 64 192 utf8 utf8_bin char(64) NULL mysql event originator int NULL NULL NULL NULL int(10) unsigned 1.0000 mysql event time_zone char 64 64 latin1 latin1_swedish_ci char(64) @@ -402,7 +402,7 @@ NULL mysql ndb_binlog_index schemaops bigint NULL NULL NULL NULL bigint(20) unsi 3.0000 mysql proc definer char 77 231 utf8 utf8_bin char(77) NULL mysql proc created timestamp NULL NULL NULL NULL timestamp NULL mysql proc modified timestamp NULL NULL NULL NULL timestamp -3.0000 mysql proc sql_mode set 478 1434 utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') +3.0000 mysql proc sql_mode set 478 1434 utf8 utf8_general_ci set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') 3.0000 mysql proc comment char 64 192 utf8 utf8_bin char(64) 3.0000 mysql proc character_set_client char 32 96 utf8 utf8_bin char(32) 3.0000 mysql proc collation_connection char 32 96 utf8 utf8_bin char(32) diff --git a/mysql-test/suite/funcs_1/r/is_engines_innodb.result b/mysql-test/suite/funcs_1/r/is_engines_innodb.result index 6de31d3ad31..5713b417cd1 100644 --- a/mysql-test/suite/funcs_1/r/is_engines_innodb.result +++ b/mysql-test/suite/funcs_1/r/is_engines_innodb.result @@ -2,7 +2,7 @@ SELECT * FROM information_schema.engines WHERE ENGINE = 'InnoDB'; ENGINE InnoDB SUPPORT YES -COMMENT Percona-XtraDB, Supports transactions, row-level locking, and foreign keys +COMMENT Supports transactions, row-level locking, and foreign keys TRANSACTIONS YES XA YES SAVEPOINTS YES diff --git a/mysql-test/suite/funcs_1/r/is_tables_is.result b/mysql-test/suite/funcs_1/r/is_tables_is.result index 4b2b3bff752..f4fe0a880e7 100644 --- a/mysql-test/suite/funcs_1/r/is_tables_is.result +++ b/mysql-test/suite/funcs_1/r/is_tables_is.result @@ -38,6 +38,29 @@ user_comment Separator ----------------------------------------------------- TABLE_CATALOG NULL TABLE_SCHEMA information_schema +TABLE_NAME CLIENT_STATISTICS +TABLE_TYPE SYSTEM VIEW +ENGINE MEMORY +VERSION 10 +ROW_FORMAT Fixed +TABLE_ROWS #TBLR# +AVG_ROW_LENGTH #ARL# +DATA_LENGTH #DL# +MAX_DATA_LENGTH #MDL# +INDEX_LENGTH #IL# +DATA_FREE #DF# +AUTO_INCREMENT NULL +CREATE_TIME #CRT# +UPDATE_TIME #UT# +CHECK_TIME #CT# +TABLE_COLLATION utf8_general_ci +CHECKSUM NULL +CREATE_OPTIONS #CO# +TABLE_COMMENT #TC# +user_comment +Separator ----------------------------------------------------- +TABLE_CATALOG NULL +TABLE_SCHEMA information_schema TABLE_NAME COLLATIONS TABLE_TYPE SYSTEM VIEW ENGINE MEMORY @@ -245,6 +268,29 @@ user_comment Separator ----------------------------------------------------- TABLE_CATALOG NULL TABLE_SCHEMA information_schema +TABLE_NAME INDEX_STATISTICS +TABLE_TYPE SYSTEM VIEW +ENGINE MEMORY +VERSION 10 +ROW_FORMAT Fixed +TABLE_ROWS #TBLR# +AVG_ROW_LENGTH #ARL# +DATA_LENGTH #DL# +MAX_DATA_LENGTH #MDL# +INDEX_LENGTH #IL# +DATA_FREE #DF# +AUTO_INCREMENT NULL +CREATE_TIME #CRT# +UPDATE_TIME #UT# +CHECK_TIME #CT# +TABLE_COLLATION utf8_general_ci +CHECKSUM NULL +CREATE_OPTIONS #CO# +TABLE_COMMENT #TC# +user_comment +Separator ----------------------------------------------------- +TABLE_CATALOG NULL +TABLE_SCHEMA information_schema TABLE_NAME INNODB_BUFFER_POOL_PAGES TABLE_TYPE SYSTEM VIEW ENGINE MEMORY @@ -613,6 +659,29 @@ user_comment Separator ----------------------------------------------------- TABLE_CATALOG NULL TABLE_SCHEMA information_schema +TABLE_NAME KEY_CACHES +TABLE_TYPE SYSTEM VIEW +ENGINE MEMORY +VERSION 10 +ROW_FORMAT Fixed +TABLE_ROWS #TBLR# +AVG_ROW_LENGTH #ARL# +DATA_LENGTH #DL# +MAX_DATA_LENGTH #MDL# +INDEX_LENGTH #IL# +DATA_FREE #DF# +AUTO_INCREMENT NULL +CREATE_TIME #CRT# +UPDATE_TIME #UT# +CHECK_TIME #CT# +TABLE_COLLATION utf8_general_ci +CHECKSUM NULL +CREATE_OPTIONS #CO# +TABLE_COMMENT #TC# +user_comment +Separator ----------------------------------------------------- +TABLE_CATALOG NULL +TABLE_SCHEMA information_schema TABLE_NAME KEY_COLUMN_USAGE TABLE_TYPE SYSTEM VIEW ENGINE MEMORY @@ -958,6 +1027,29 @@ user_comment Separator ----------------------------------------------------- TABLE_CATALOG NULL TABLE_SCHEMA information_schema +TABLE_NAME TABLE_STATISTICS +TABLE_TYPE SYSTEM VIEW +ENGINE MEMORY +VERSION 10 +ROW_FORMAT Fixed +TABLE_ROWS #TBLR# +AVG_ROW_LENGTH #ARL# +DATA_LENGTH #DL# +MAX_DATA_LENGTH #MDL# +INDEX_LENGTH #IL# +DATA_FREE #DF# +AUTO_INCREMENT NULL +CREATE_TIME #CRT# +UPDATE_TIME #UT# +CHECK_TIME #CT# +TABLE_COLLATION utf8_general_ci +CHECKSUM NULL +CREATE_OPTIONS #CO# +TABLE_COMMENT #TC# +user_comment +Separator ----------------------------------------------------- +TABLE_CATALOG NULL +TABLE_SCHEMA information_schema TABLE_NAME TRIGGERS TABLE_TYPE SYSTEM VIEW ENGINE MYISAM_OR_MARIA @@ -1004,6 +1096,29 @@ user_comment Separator ----------------------------------------------------- TABLE_CATALOG NULL TABLE_SCHEMA information_schema +TABLE_NAME USER_STATISTICS +TABLE_TYPE SYSTEM VIEW +ENGINE MEMORY +VERSION 10 +ROW_FORMAT Fixed +TABLE_ROWS #TBLR# +AVG_ROW_LENGTH #ARL# +DATA_LENGTH #DL# +MAX_DATA_LENGTH #MDL# +INDEX_LENGTH #IL# +DATA_FREE #DF# +AUTO_INCREMENT NULL +CREATE_TIME #CRT# +UPDATE_TIME #UT# +CHECK_TIME #CT# +TABLE_COLLATION utf8_general_ci +CHECKSUM NULL +CREATE_OPTIONS #CO# +TABLE_COMMENT #TC# +user_comment +Separator ----------------------------------------------------- +TABLE_CATALOG NULL +TABLE_SCHEMA information_schema TABLE_NAME VIEWS TABLE_TYPE SYSTEM VIEW ENGINE MYISAM_OR_MARIA @@ -1113,6 +1228,29 @@ user_comment Separator ----------------------------------------------------- TABLE_CATALOG NULL TABLE_SCHEMA information_schema +TABLE_NAME CLIENT_STATISTICS +TABLE_TYPE SYSTEM VIEW +ENGINE MEMORY +VERSION 10 +ROW_FORMAT Fixed +TABLE_ROWS #TBLR# +AVG_ROW_LENGTH #ARL# +DATA_LENGTH #DL# +MAX_DATA_LENGTH #MDL# +INDEX_LENGTH #IL# +DATA_FREE #DF# +AUTO_INCREMENT NULL +CREATE_TIME #CRT# +UPDATE_TIME #UT# +CHECK_TIME #CT# +TABLE_COLLATION utf8_general_ci +CHECKSUM NULL +CREATE_OPTIONS #CO# +TABLE_COMMENT #TC# +user_comment +Separator ----------------------------------------------------- +TABLE_CATALOG NULL +TABLE_SCHEMA information_schema TABLE_NAME COLLATIONS TABLE_TYPE SYSTEM VIEW ENGINE MEMORY @@ -1320,6 +1458,29 @@ user_comment Separator ----------------------------------------------------- TABLE_CATALOG NULL TABLE_SCHEMA information_schema +TABLE_NAME INDEX_STATISTICS +TABLE_TYPE SYSTEM VIEW +ENGINE MEMORY +VERSION 10 +ROW_FORMAT Fixed +TABLE_ROWS #TBLR# +AVG_ROW_LENGTH #ARL# +DATA_LENGTH #DL# +MAX_DATA_LENGTH #MDL# +INDEX_LENGTH #IL# +DATA_FREE #DF# +AUTO_INCREMENT NULL +CREATE_TIME #CRT# +UPDATE_TIME #UT# +CHECK_TIME #CT# +TABLE_COLLATION utf8_general_ci +CHECKSUM NULL +CREATE_OPTIONS #CO# +TABLE_COMMENT #TC# +user_comment +Separator ----------------------------------------------------- +TABLE_CATALOG NULL +TABLE_SCHEMA information_schema TABLE_NAME INNODB_BUFFER_POOL_PAGES TABLE_TYPE SYSTEM VIEW ENGINE MEMORY @@ -1688,6 +1849,29 @@ user_comment Separator ----------------------------------------------------- TABLE_CATALOG NULL TABLE_SCHEMA information_schema +TABLE_NAME KEY_CACHES +TABLE_TYPE SYSTEM VIEW +ENGINE MEMORY +VERSION 10 +ROW_FORMAT Fixed +TABLE_ROWS #TBLR# +AVG_ROW_LENGTH #ARL# +DATA_LENGTH #DL# +MAX_DATA_LENGTH #MDL# +INDEX_LENGTH #IL# +DATA_FREE #DF# +AUTO_INCREMENT NULL +CREATE_TIME #CRT# +UPDATE_TIME #UT# +CHECK_TIME #CT# +TABLE_COLLATION utf8_general_ci +CHECKSUM NULL +CREATE_OPTIONS #CO# +TABLE_COMMENT #TC# +user_comment +Separator ----------------------------------------------------- +TABLE_CATALOG NULL +TABLE_SCHEMA information_schema TABLE_NAME KEY_COLUMN_USAGE TABLE_TYPE SYSTEM VIEW ENGINE MEMORY @@ -2033,6 +2217,29 @@ user_comment Separator ----------------------------------------------------- TABLE_CATALOG NULL TABLE_SCHEMA information_schema +TABLE_NAME TABLE_STATISTICS +TABLE_TYPE SYSTEM VIEW +ENGINE MEMORY +VERSION 10 +ROW_FORMAT Fixed +TABLE_ROWS #TBLR# +AVG_ROW_LENGTH #ARL# +DATA_LENGTH #DL# +MAX_DATA_LENGTH #MDL# +INDEX_LENGTH #IL# +DATA_FREE #DF# +AUTO_INCREMENT NULL +CREATE_TIME #CRT# +UPDATE_TIME #UT# +CHECK_TIME #CT# +TABLE_COLLATION utf8_general_ci +CHECKSUM NULL +CREATE_OPTIONS #CO# +TABLE_COMMENT #TC# +user_comment +Separator ----------------------------------------------------- +TABLE_CATALOG NULL +TABLE_SCHEMA information_schema TABLE_NAME TRIGGERS TABLE_TYPE SYSTEM VIEW ENGINE MYISAM_OR_MARIA @@ -2079,6 +2286,29 @@ user_comment Separator ----------------------------------------------------- TABLE_CATALOG NULL TABLE_SCHEMA information_schema +TABLE_NAME USER_STATISTICS +TABLE_TYPE SYSTEM VIEW +ENGINE MEMORY +VERSION 10 +ROW_FORMAT Fixed +TABLE_ROWS #TBLR# +AVG_ROW_LENGTH #ARL# +DATA_LENGTH #DL# +MAX_DATA_LENGTH #MDL# +INDEX_LENGTH #IL# +DATA_FREE #DF# +AUTO_INCREMENT NULL +CREATE_TIME #CRT# +UPDATE_TIME #UT# +CHECK_TIME #CT# +TABLE_COLLATION utf8_general_ci +CHECKSUM NULL +CREATE_OPTIONS #CO# +TABLE_COMMENT #TC# +user_comment +Separator ----------------------------------------------------- +TABLE_CATALOG NULL +TABLE_SCHEMA information_schema TABLE_NAME VIEWS TABLE_TYPE SYSTEM VIEW ENGINE MYISAM_OR_MARIA diff --git a/mysql-test/suite/funcs_1/r/is_user_privileges.result b/mysql-test/suite/funcs_1/r/is_user_privileges.result index 03865f59c2c..b9a19f98d65 100644 --- a/mysql-test/suite/funcs_1/r/is_user_privileges.result +++ b/mysql-test/suite/funcs_1/r/is_user_privileges.result @@ -76,10 +76,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser3'@'localhost' NULL USAGE NO SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 # # Add GRANT OPTION db_datadict.* to testuser1; GRANT UPDATE ON db_datadict.* TO 'testuser1'@'localhost' WITH GRANT OPTION; @@ -93,10 +93,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser3'@'localhost' NULL USAGE NO SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 # Establish connection testuser1 (user=testuser1) SELECT * FROM information_schema.user_privileges WHERE grantee LIKE '''testuser%''' @@ -105,10 +105,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser1'@'localhost' NULL USAGE NO SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 SHOW GRANTS; Grants for testuser1@localhost GRANT USAGE ON *.* TO 'testuser1'@'localhost' @@ -130,10 +130,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser3'@'localhost' NULL USAGE NO SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 Y N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 Y N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 GRANT SELECT ON *.* TO 'testuser1'@'localhost' WITH GRANT OPTION; # # Here <SELECT YES> is shown correctly for testuser1; @@ -147,10 +147,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser3'@'localhost' NULL USAGE NO SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 Y N N N N N N N N N Y N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 Y N N N N N N N N N Y N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 # Switch to connection testuser1 SELECT * FROM information_schema.user_privileges WHERE grantee LIKE '''testuser%''' @@ -159,10 +159,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser1'@'localhost' NULL SELECT YES SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 Y N N N N N N N N N Y N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 Y N N N N N N N N N Y N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 SHOW GRANTS; Grants for testuser1@localhost GRANT SELECT ON *.* TO 'testuser1'@'localhost' WITH GRANT OPTION @@ -207,10 +207,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser3'@'localhost' NULL USAGE NO SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 # Switch to connection testuser1 SELECT * FROM information_schema.user_privileges WHERE grantee LIKE '''testuser%''' @@ -253,10 +253,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser3'@'localhost' NULL USAGE NO SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 # Switch to connection testuser1 SELECT * FROM information_schema.user_privileges WHERE grantee LIKE '''testuser%''' @@ -265,10 +265,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser1'@'localhost' NULL USAGE NO SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 SHOW GRANTS; Grants for testuser1@localhost GRANT USAGE ON *.* TO 'testuser1'@'localhost' @@ -284,10 +284,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser1'@'localhost' NULL USAGE NO SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 SHOW GRANTS; Grants for testuser1@localhost GRANT USAGE ON *.* TO 'testuser1'@'localhost' @@ -309,10 +309,10 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'testuser3'@'localhost' NULL USAGE NO SELECT * FROM mysql.user WHERE user LIKE 'testuser%' ORDER BY host, user; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 -localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost testuser1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser2 N Y Y N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 +localhost testuser3 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 0 # Switch to connection testuser1 SELECT * FROM information_schema.user_privileges WHERE grantee LIKE '''testuser%''' diff --git a/mysql-test/suite/funcs_1/t/is_columns.test b/mysql-test/suite/funcs_1/t/is_columns.test index 5e754c56532..fca21034e37 100644 --- a/mysql-test/suite/funcs_1/t/is_columns.test +++ b/mysql-test/suite/funcs_1/t/is_columns.test @@ -78,7 +78,7 @@ eval SHOW TABLES FROM information_schema LIKE '$is_table'; --source suite/funcs_1/datadict/datadict_bug_12777.inc eval DESCRIBE information_schema.$is_table; --source suite/funcs_1/datadict/datadict_bug_12777.inc ---replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" +--replace_result ENGINE=MyISAM "" ENGINE=Aria "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE information_schema.$is_table; --source suite/funcs_1/datadict/datadict_bug_12777.inc eval SHOW COLUMNS FROM information_schema.$is_table; diff --git a/mysql-test/suite/funcs_1/t/is_events.test b/mysql-test/suite/funcs_1/t/is_events.test index 22565840728..400094966b1 100644 --- a/mysql-test/suite/funcs_1/t/is_events.test +++ b/mysql-test/suite/funcs_1/t/is_events.test @@ -89,7 +89,7 @@ eval SHOW TABLES FROM information_schema LIKE '$is_table'; # is associated. # eval DESCRIBE information_schema.$is_table; ---replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" +--replace_result ENGINE=MyISAM "" ENGINE=Aria "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE information_schema.$is_table; eval SHOW COLUMNS FROM information_schema.$is_table; diff --git a/mysql-test/suite/funcs_1/t/is_tables_is.test b/mysql-test/suite/funcs_1/t/is_tables_is.test index 3db2f7fbdcb..6401f2d451a 100644 --- a/mysql-test/suite/funcs_1/t/is_tables_is.test +++ b/mysql-test/suite/funcs_1/t/is_tables_is.test @@ -17,4 +17,3 @@ let $my_where = WHERE table_schema = 'information_schema' AND table_name <> 'profiling'; --source suite/funcs_1/datadict/tables1.inc - diff --git a/mysql-test/suite/innodb/r/innodb.result b/mysql-test/suite/innodb/r/innodb.result index 809d372f695..244ad5f4435 100644 --- a/mysql-test/suite/innodb/r/innodb.result +++ b/mysql-test/suite/innodb/r/innodb.result @@ -2375,4 +2375,4 @@ Variable_name Value Handler_read_key 0 f1 Variable_name Value -Handler_read_key 1 +Handler_read_key 0 diff --git a/mysql-test/suite/innodb/r/innodb_bug59641.result b/mysql-test/suite/innodb/r/innodb_bug59641.result index 482df8914eb..de8bb61bd0d 100644 --- a/mysql-test/suite/innodb/r/innodb_bug59641.result +++ b/mysql-test/suite/innodb/r/innodb_bug59641.result @@ -16,6 +16,7 @@ UPDATE t SET b=4*a WHERE a=32; XA END '789'; XA PREPARE '789'; call mtr.add_suppression("Found 3 prepared XA transactions"); +FLUSH TABLES; SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; SELECT * FROM t; a b diff --git a/mysql-test/suite/innodb/r/innodb_mysql.result b/mysql-test/suite/innodb/r/innodb_mysql.result index 42aca8b6464..e022bd961d6 100644 --- a/mysql-test/suite/innodb/r/innodb_mysql.result +++ b/mysql-test/suite/innodb/r/innodb_mysql.result @@ -1739,7 +1739,7 @@ SELECT 1 FROM (SELECT COUNT(DISTINCT c1) FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x; id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY <derived2> system NULL NULL NULL NULL 1 -2 DERIVED t1 ALL c3,c2 c3 5 5 Using filesort +2 DERIVED t1 ALL c3,c2 c3 5 const 5 Using where; Using filesort DROP TABLE t1; CREATE TABLE t1 (c1 REAL, c2 REAL, c3 REAL, KEY (c3), KEY (c2, c3)) ENGINE=InnoDB; @@ -1753,7 +1753,7 @@ SELECT 1 FROM (SELECT COUNT(DISTINCT c1) FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x; id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY <derived2> system NULL NULL NULL NULL 1 -2 DERIVED t1 ALL c3,c2 c3 9 5 Using filesort +2 DERIVED t1 ALL c3,c2 c3 9 const 5 Using where; Using filesort DROP TABLE t1; CREATE TABLE t1 (c1 DECIMAL(12,2), c2 DECIMAL(12,2), c3 DECIMAL(12,2), KEY (c3), KEY (c2, c3)) @@ -1768,7 +1768,7 @@ SELECT 1 FROM (SELECT COUNT(DISTINCT c1) FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x; id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY <derived2> system NULL NULL NULL NULL 1 -2 DERIVED t1 ALL c3,c2 c3 7 5 Using filesort +2 DERIVED t1 ALL c3,c2 c3 7 const 5 Using where; Using filesort DROP TABLE t1; End of 5.1 tests drop table if exists t1, t2, t3; diff --git a/mysql-test/suite/innodb/t/innodb_bug59641.test b/mysql-test/suite/innodb/t/innodb_bug59641.test index e19dec54bc2..22cd4e49753 100644 --- a/mysql-test/suite/innodb/t/innodb_bug59641.test +++ b/mysql-test/suite/innodb/t/innodb_bug59641.test @@ -33,7 +33,7 @@ XA PREPARE '789'; # The server would issue this warning on restart. call mtr.add_suppression("Found 3 prepared XA transactions"); - +FLUSH TABLES; # Kill the server without sending a shutdown command -- exec echo "wait" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect -- shutdown_server 0 diff --git a/mysql-test/suite/innodb_plugin/r/innodb.result b/mysql-test/suite/innodb_plugin/r/innodb.result index f346e2d5917..87dee7dc6e1 100644 --- a/mysql-test/suite/innodb_plugin/r/innodb.result +++ b/mysql-test/suite/innodb_plugin/r/innodb.result @@ -3266,5 +3266,5 @@ select f1 from t1; f1 show status like "handler_read_key"; Variable_name Value -Handler_read_key 1 +Handler_read_key 0 drop table t1; diff --git a/mysql-test/suite/innodb_plugin/r/innodb_bug30423.result b/mysql-test/suite/innodb_plugin/r/innodb_bug30423.result index a19809366ae..6071587e888 100644 --- a/mysql-test/suite/innodb_plugin/r/innodb_bug30423.result +++ b/mysql-test/suite/innodb_plugin/r/innodb_bug30423.result @@ -48,9 +48,9 @@ ON orgs.org_id=sa_opportunities.org_id LEFT JOIN bug30243_2 contacts ON orgs.org_id=contacts.org_id ; id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE orgs index NULL org_id 4 NULL 128 Using index -1 SIMPLE sa_opportunities ref org_id org_id 5 test.orgs.org_id 1 Using index -1 SIMPLE contacts ref contacts$org_id contacts$org_id 5 test.orgs.org_id 1 Using index +1 SIMPLE orgs index NULL org_id 4 NULL # Using index +1 SIMPLE sa_opportunities ref org_id org_id 5 test.orgs.org_id # Using index +1 SIMPLE contacts ref contacts$org_id contacts$org_id 5 test.orgs.org_id # Using index select @@innodb_stats_method; @@innodb_stats_method nulls_ignored diff --git a/mysql-test/suite/innodb_plugin/r/innodb_bug59641.result b/mysql-test/suite/innodb_plugin/r/innodb_bug59641.result index 482df8914eb..de8bb61bd0d 100644 --- a/mysql-test/suite/innodb_plugin/r/innodb_bug59641.result +++ b/mysql-test/suite/innodb_plugin/r/innodb_bug59641.result @@ -16,6 +16,7 @@ UPDATE t SET b=4*a WHERE a=32; XA END '789'; XA PREPARE '789'; call mtr.add_suppression("Found 3 prepared XA transactions"); +FLUSH TABLES; SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; SELECT * FROM t; a b diff --git a/mysql-test/suite/innodb_plugin/r/innodb_mysql.result b/mysql-test/suite/innodb_plugin/r/innodb_mysql.result index 86d83f82b76..49e8b44b018 100644 --- a/mysql-test/suite/innodb_plugin/r/innodb_mysql.result +++ b/mysql-test/suite/innodb_plugin/r/innodb_mysql.result @@ -1739,7 +1739,7 @@ SELECT 1 FROM (SELECT COUNT(DISTINCT c1) FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x; id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY <derived2> system NULL NULL NULL NULL 1 -2 DERIVED t1 ALL c3,c2 c3 5 5 Using filesort +2 DERIVED t1 ALL c3,c2 c3 5 const 5 Using where; Using filesort DROP TABLE t1; CREATE TABLE t1 (c1 REAL, c2 REAL, c3 REAL, KEY (c3), KEY (c2, c3)) ENGINE=InnoDB; @@ -1753,7 +1753,7 @@ SELECT 1 FROM (SELECT COUNT(DISTINCT c1) FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x; id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY <derived2> system NULL NULL NULL NULL 1 -2 DERIVED t1 ALL c3,c2 c3 9 5 Using filesort +2 DERIVED t1 ALL c3,c2 c3 9 const 5 Using where; Using filesort DROP TABLE t1; CREATE TABLE t1 (c1 DECIMAL(12,2), c2 DECIMAL(12,2), c3 DECIMAL(12,2), KEY (c3), KEY (c2, c3)) @@ -1768,7 +1768,7 @@ SELECT 1 FROM (SELECT COUNT(DISTINCT c1) FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x; id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY <derived2> system NULL NULL NULL NULL 1 -2 DERIVED t1 ALL c3,c2 c3 7 5 Using filesort +2 DERIVED t1 ALL c3,c2 c3 7 const 5 Using where; Using filesort DROP TABLE t1; End of 5.1 tests drop table if exists t1, t2, t3; diff --git a/mysql-test/suite/innodb_plugin/t/innodb_bug30423.test b/mysql-test/suite/innodb_plugin/t/innodb_bug30423.test index 458c2967e19..da490589400 100644 --- a/mysql-test/suite/innodb_plugin/t/innodb_bug30423.test +++ b/mysql-test/suite/innodb_plugin/t/innodb_bug30423.test @@ -140,6 +140,7 @@ analyze table bug30243_3; # Following query plan shows that we get the correct rows per # unique value (should be approximately 1 row per value) +--replace_column 9 # explain SELECT COUNT(*), 0 FROM bug30243_1 orgs LEFT JOIN bug30243_3 sa_opportunities diff --git a/mysql-test/suite/innodb_plugin/t/innodb_bug59641.test b/mysql-test/suite/innodb_plugin/t/innodb_bug59641.test index e2e893a0487..75a8fc235bf 100644 --- a/mysql-test/suite/innodb_plugin/t/innodb_bug59641.test +++ b/mysql-test/suite/innodb_plugin/t/innodb_bug59641.test @@ -33,7 +33,7 @@ XA PREPARE '789'; # The server would issue this warning on restart. call mtr.add_suppression("Found 3 prepared XA transactions"); - +FLUSH TABLES; # Kill the server without sending a shutdown command -- exec echo "wait" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect -- shutdown_server 0 diff --git a/mysql-test/suite/innodb_plugin/t/innodb_mysql.test b/mysql-test/suite/innodb_plugin/t/innodb_mysql.test index d9981af2d0d..84cb12d3faf 100644 --- a/mysql-test/suite/innodb_plugin/t/innodb_mysql.test +++ b/mysql-test/suite/innodb_plugin/t/innodb_mysql.test @@ -5,7 +5,6 @@ # main testing code t/innodb_mysql.test -> include/mix1.inc # --- source include/have_innodb_plugin.inc -- source include/have_query_cache.inc # We must run this with XtraDB as otherwise we will get different EXPLAIN's diff --git a/mysql-test/suite/maria/r/compat_aliases.result b/mysql-test/suite/maria/r/compat_aliases.result new file mode 100644 index 00000000000..f0cd5f1d719 --- /dev/null +++ b/mysql-test/suite/maria/r/compat_aliases.result @@ -0,0 +1,59 @@ +select * from information_schema.plugins where plugin_name like '%aria'; +PLUGIN_NAME PLUGIN_VERSION PLUGIN_STATUS PLUGIN_TYPE PLUGIN_TYPE_VERSION PLUGIN_LIBRARY PLUGIN_LIBRARY_VERSION PLUGIN_AUTHOR PLUGIN_DESCRIPTION PLUGIN_LICENSE PLUGIN_MATURITY PLUGIN_AUTH_VERSION +Maria 1.5 ACTIVE DAEMON # NULL NULL Monty Program Ab Compatibility aliases for the Aria engine GPL Gamma 1.5 +Aria 1.5 ACTIVE STORAGE ENGINE # NULL NULL Monty Program Ab Crash-safe tables with MyISAM heritage GPL Gamma 1.5 +select maria_vars.variable_name, aria_vars.variable_name from +information_schema.session_variables as maria_vars left join +information_schema.session_variables as aria_vars +on (maria_vars.variable_name = concat('m', aria_vars.variable_name)) +where maria_vars.variable_name like 'maria_%' + and not (maria_vars.variable_value <=> aria_vars.variable_value); +variable_name variable_name +select maria_vars.variable_name, aria_vars.variable_name from +information_schema.session_status as maria_vars left join +information_schema.session_status as aria_vars +on (maria_vars.variable_name = concat('m', aria_vars.variable_name)) +where maria_vars.variable_name like 'maria_%' + and not (maria_vars.variable_value <=> aria_vars.variable_value); +variable_name variable_name +select maria_vars.variable_name, aria_vars.variable_name from +information_schema.session_variables as aria_vars left join +information_schema.session_variables as maria_vars +on (maria_vars.variable_name = concat('m', aria_vars.variable_name)) +where aria_vars.variable_name like 'aria_%' + and not (maria_vars.variable_value <=> aria_vars.variable_value); +variable_name variable_name +NULL ARIA_CHECKPOINT_LOG_ACTIVITY +select maria_vars.variable_name, aria_vars.variable_name from +information_schema.session_status as aria_vars left join +information_schema.session_status as maria_vars +on (maria_vars.variable_name = concat('m', aria_vars.variable_name)) +where aria_vars.variable_name like 'aria_%' + and not (maria_vars.variable_value <=> aria_vars.variable_value); +variable_name variable_name +set @old_checkpoint_interval=@@global.aria_checkpoint_interval; +set global maria_checkpoint_interval=10; +select @@global.aria_checkpoint_interval; +@@global.aria_checkpoint_interval +10 +set global maria_checkpoint_interval=@old_checkpoint_interval; +set @old_sort_buffer_size=@@global.maria_sort_buffer_size; +set global aria_sort_buffer_size=1024; +select @@global.maria_sort_buffer_size; +@@global.maria_sort_buffer_size +1024 +set global aria_sort_buffer_size=@old_sort_buffer_size; +set @old_sort_buffer_size=@@session.maria_sort_buffer_size; +set session aria_sort_buffer_size=2048; +select @@session.maria_sort_buffer_size; +@@session.maria_sort_buffer_size +2048 +set session aria_sort_buffer_size=@old_sort_buffer_size; +set @old_max_sort_file_size=@@global.maria_max_sort_file_size, +@old_repair_threads=@@global.aria_repair_threads; +set @@global.maria_max_sort_file_size=default, @@global.aria_repair_threads=default; +select @@global.maria_max_sort_file_size, @@global.aria_repair_threads; +@@global.maria_max_sort_file_size @@global.aria_repair_threads +9223372036853727232 1 +set @@global.aria_max_sort_file_size=@old_max_sort_file_size, +@@global.maria_repair_threads=@old_repair_threads; diff --git a/mysql-test/suite/maria/r/group_commit.result b/mysql-test/suite/maria/r/group_commit.result new file mode 100644 index 00000000000..4fb85b912ec --- /dev/null +++ b/mysql-test/suite/maria/r/group_commit.result @@ -0,0 +1,17 @@ +drop table if exists t1; +create table t1 (a int); +SET GLOBAL aria_group_commit="NONE"; +SET GLOBAL aria_group_commit_interval= 0; +SET GLOBAL aria_group_commit="NONE"; +SET GLOBAL aria_group_commit_interval= 100; +SET GLOBAL aria_group_commit="HARD"; +SET GLOBAL aria_group_commit_interval= 0; +SET GLOBAL aria_group_commit="HARD"; +SET GLOBAL aria_group_commit_interval= 100; +SET GLOBAL aria_group_commit="SOFT"; +SET GLOBAL aria_group_commit_interval= 0; +SET GLOBAL aria_group_commit="SOFT"; +SET GLOBAL aria_group_commit_interval= 100; +SET GLOBAL aria_group_commit="NONE"; +SET GLOBAL aria_group_commit_interval= 0; +drop table t1; diff --git a/mysql-test/suite/maria/r/maria-autozerofill.result b/mysql-test/suite/maria/r/maria-autozerofill.result index b719dbaebcb..0ce199feeca 100644 --- a/mysql-test/suite/maria/r/maria-autozerofill.result +++ b/mysql-test/suite/maria/r/maria-autozerofill.result @@ -2,13 +2,13 @@ call mtr.add_suppression("Table 't1' is marked as crashed and should be repaired drop database if exists mysqltest; create database mysqltest; use mysqltest; -create table t1(a int) engine=maria; +create table t1(a int) engine=aria; insert into t1 values(1); -create table t2 (a int) engine=maria; +create table t2 (a int) engine=aria; INSERT INTO t2 VALUES (1),(2); -create table t3 (a int) engine=maria; +create table t3 (a int) engine=aria; INSERT INTO t3 VALUES (1),(2); -create table t4 (a int) engine=maria; +create table t4 (a int) engine=aria; INSERT INTO t4 VALUES (1),(2); create table t5 (a int) engine=maria; INSERT INTO t5 VALUES (1),(2); @@ -21,8 +21,7 @@ a Warnings: Note 1194 Zerofilling moved table ./mysqltest/t1 flush table t1; -Status: changed,sorted index pages,zerofilled,movable -create_rename_lsn has magic value +Status: changed,sorted index pages,zerofilled insert into t1 values(2); flush table t1; create_rename_lsn has non-magic value diff --git a/mysql-test/suite/maria/r/maria-big.result b/mysql-test/suite/maria/r/maria-big.result index 64b3296b6b2..cb6e02df00e 100644 --- a/mysql-test/suite/maria/r/maria-big.result +++ b/mysql-test/suite/maria/r/maria-big.result @@ -1,5 +1,5 @@ set global max_allowed_packet=400000000; -set storage_engine=maria; +set storage_engine=aria; affected rows: 0 drop table if exists t1, t2; affected rows: 0 diff --git a/mysql-test/suite/maria/r/maria-big2.result b/mysql-test/suite/maria/r/maria-big2.result index 7fc57d6a203..3e4c6973997 100644 --- a/mysql-test/suite/maria/r/maria-big2.result +++ b/mysql-test/suite/maria/r/maria-big2.result @@ -1,4 +1,4 @@ -create table t2(id int,a varchar(255),b varchar(255),key(a))engine=maria row_format=dynamic transactional=0; +create table t2(id int,a varchar(255),b varchar(255),key(a))engine=aria row_format=dynamic transactional=0; Table Op Msg_type Msg_text test.t2 check status OK Table Op Msg_type Msg_text diff --git a/mysql-test/suite/maria/r/maria-connect.result b/mysql-test/suite/maria/r/maria-connect.result index 8fe483c8467..a02c29f3d5f 100644 --- a/mysql-test/suite/maria/r/maria-connect.result +++ b/mysql-test/suite/maria/r/maria-connect.result @@ -1,5 +1,5 @@ -set global storage_engine=maria; -set session storage_engine=maria; +set global storage_engine=aria; +set session storage_engine=aria; drop table if exists t1; SET SQL_WARNINGS=1; RESET MASTER; diff --git a/mysql-test/suite/maria/r/maria-gis-rtree-dynamic.result b/mysql-test/suite/maria/r/maria-gis-rtree-dynamic.result index 189872e8e13..743f1785f5c 100644 --- a/mysql-test/suite/maria/r/maria-gis-rtree-dynamic.result +++ b/mysql-test/suite/maria/r/maria-gis-rtree-dynamic.result @@ -1,4 +1,4 @@ -set storage_engine=maria; +set storage_engine=aria; DROP TABLE IF EXISTS t1, t2; CREATE TABLE t1 ( fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, @@ -12,7 +12,7 @@ t1 CREATE TABLE `t1` ( `g` geometry NOT NULL, PRIMARY KEY (`fid`), SPATIAL KEY `g` (`g`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=DYNAMIC +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=DYNAMIC INSERT INTO t1 (g) VALUES (GeomFromText('LineString(150 150, 150 150)')); INSERT INTO t1 (g) VALUES (GeomFromText('LineString(149 149, 151 151)')); INSERT INTO t1 (g) VALUES (GeomFromText('LineString(148 148, 152 152)')); @@ -295,7 +295,7 @@ t2 CREATE TABLE `t2` ( `g` geometry NOT NULL, PRIMARY KEY (`fid`), SPATIAL KEY `g` (`g`) -) ENGINE=MARIA AUTO_INCREMENT=101 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=DYNAMIC +) ENGINE=Aria AUTO_INCREMENT=101 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=DYNAMIC SELECT count(*) FROM t2; count(*) 100 diff --git a/mysql-test/suite/maria/r/maria-gis-rtree-trans.result b/mysql-test/suite/maria/r/maria-gis-rtree-trans.result index 9e43daa9623..ae37b9d454d 100644 --- a/mysql-test/suite/maria/r/maria-gis-rtree-trans.result +++ b/mysql-test/suite/maria/r/maria-gis-rtree-trans.result @@ -1,4 +1,4 @@ -set storage_engine=maria; +set storage_engine=aria; DROP TABLE IF EXISTS t1, t2; CREATE TABLE t1 ( fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, @@ -12,7 +12,7 @@ t1 CREATE TABLE `t1` ( `g` geometry NOT NULL, PRIMARY KEY (`fid`), SPATIAL KEY `g` (`g`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=PAGE TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=PAGE TRANSACTIONAL=1 INSERT INTO t1 (g) VALUES (GeomFromText('LineString(150 150, 150 150)')); INSERT INTO t1 (g) VALUES (GeomFromText('LineString(149 149, 151 151)')); INSERT INTO t1 (g) VALUES (GeomFromText('LineString(148 148, 152 152)')); @@ -295,7 +295,7 @@ t2 CREATE TABLE `t2` ( `g` geometry NOT NULL, PRIMARY KEY (`fid`), SPATIAL KEY `g` (`g`) -) ENGINE=MARIA AUTO_INCREMENT=101 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=PAGE TRANSACTIONAL=1 +) ENGINE=Aria AUTO_INCREMENT=101 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=PAGE TRANSACTIONAL=1 SELECT count(*) FROM t2; count(*) 100 diff --git a/mysql-test/suite/maria/r/maria-gis-rtree.result b/mysql-test/suite/maria/r/maria-gis-rtree.result index 0c929fe1313..a61e93d2a3a 100644 --- a/mysql-test/suite/maria/r/maria-gis-rtree.result +++ b/mysql-test/suite/maria/r/maria-gis-rtree.result @@ -1,4 +1,4 @@ -set storage_engine=maria; +set storage_engine=aria; DROP TABLE IF EXISTS t1, t2; CREATE TABLE t1 ( fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, @@ -12,7 +12,7 @@ t1 CREATE TABLE `t1` ( `g` geometry NOT NULL, PRIMARY KEY (`fid`), SPATIAL KEY `g` (`g`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=PAGE TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=PAGE TRANSACTIONAL=0 INSERT INTO t1 (g) VALUES (GeomFromText('LineString(150 150, 150 150)')); INSERT INTO t1 (g) VALUES (GeomFromText('LineString(149 149, 151 151)')); INSERT INTO t1 (g) VALUES (GeomFromText('LineString(148 148, 152 152)')); @@ -295,7 +295,7 @@ t2 CREATE TABLE `t2` ( `g` geometry NOT NULL, PRIMARY KEY (`fid`), SPATIAL KEY `g` (`g`) -) ENGINE=MARIA AUTO_INCREMENT=101 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=PAGE TRANSACTIONAL=0 +) ENGINE=Aria AUTO_INCREMENT=101 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 ROW_FORMAT=PAGE TRANSACTIONAL=0 SELECT count(*) FROM t2; count(*) 100 diff --git a/mysql-test/suite/maria/r/maria-mvcc.result b/mysql-test/suite/maria/r/maria-mvcc.result index 3919dfc597e..671b1bbf53c 100644 --- a/mysql-test/suite/maria/r/maria-mvcc.result +++ b/mysql-test/suite/maria/r/maria-mvcc.result @@ -1,11 +1,11 @@ -set global maria_page_checksum=1; +set global aria_page_checksum=1; drop table if exists t1; -create table t1 (i int) engine=maria; +create table t1 (i int) engine=aria; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `i` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 insert into t1 values (0); lock tables t1 write concurrent; insert into t1 values (1); @@ -151,7 +151,7 @@ select count(*) from t1; count(*) 8 drop table t1; -CREATE TABLE t1 (fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, g GEOMETRY NOT NULL, SPATIAL KEY(g) ) transactional=1 row_format=page engine=maria; +CREATE TABLE t1 (fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, g GEOMETRY NOT NULL, SPATIAL KEY(g) ) transactional=1 row_format=page engine=aria; lock tables t1 write concurrent, t1 as t2 write concurrent; insert into t1 (fid,g) values (NULL,GeomFromText('LineString(0 0,1 1)')); select fid from t1 as t2; diff --git a/mysql-test/suite/maria/r/maria-no-logging.result b/mysql-test/suite/maria/r/maria-no-logging.result index e72842ae71b..0d3d7804853 100644 --- a/mysql-test/suite/maria/r/maria-no-logging.result +++ b/mysql-test/suite/maria/r/maria-no-logging.result @@ -1,8 +1,8 @@ -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; drop database if exists mysqltest; create database mysqltest; use mysqltest; -set global maria_checkpoint_interval=0; +set global aria_checkpoint_interval=0; create table t2 (a varchar(100)) engine=myisam; insert into t2 select repeat('z',100); insert into t2 select * from t2; @@ -12,40 +12,40 @@ insert into t2 select * from t2; insert into t2 select * from t2; insert into t2 select * from t2; * shut down mysqld, removed logs, restarted it -create table t1 (a varchar(100)) engine=maria transactional=1; +create table t1 (a varchar(100)) engine=aria transactional=1; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` varchar(100) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 -show engine maria logs; +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +show engine aria logs; Type Name Status -MARIA Size 16384 maria_log.00000001 unknown +Aria Size 16384 aria_log.00000001 unknown insert into t1 values('a'); insert into t1 select * from t2; -show engine maria logs; +show engine aria logs; Type Name Status -MARIA Size 24576 maria_log.00000001 unknown +Aria Size 24576 aria_log.00000001 unknown * shut down mysqld, removed logs, restarted it truncate table t1; insert into t1 select * from t2; -show engine maria logs; +show engine aria logs; Type Name Status -MARIA Size 16384 maria_log.00000001 unknown +Aria Size 16384 aria_log.00000001 unknown drop table t1; * shut down mysqld, removed logs, restarted it -create table t1 (a varchar(100)) engine=maria transactional=1; +create table t1 (a varchar(100)) engine=aria transactional=1; insert into t1 values('a'); create table if not exists t1 select * from t2; Warnings: Note 1050 Table 't1' already exists -show engine maria logs; +show engine aria logs; Type Name Status -MARIA Size 24576 maria_log.00000001 unknown +Aria Size 24576 aria_log.00000001 unknown * shut down mysqld, removed logs, restarted it drop table t1; -create table t1 engine=maria transactional=1 select * from t2; -show engine maria logs; +create table t1 engine=aria transactional=1 select * from t2; +show engine aria logs; Type Name Status -MARIA Size 16384 maria_log.00000001 unknown +Aria Size 16384 aria_log.00000001 unknown drop database mysqltest; diff --git a/mysql-test/suite/maria/r/maria-page-checksum.result b/mysql-test/suite/maria/r/maria-page-checksum.result index 0319bd9e9ca..c4d1b71e33a 100644 --- a/mysql-test/suite/maria/r/maria-page-checksum.result +++ b/mysql-test/suite/maria/r/maria-page-checksum.result @@ -1,940 +1,940 @@ drop table if exists t1; -select @@global.maria_page_checksum; -@@global.maria_page_checksum +select @@global.aria_page_checksum; +@@global.aria_page_checksum 1 # iteration 1 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 2 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 3 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 4 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 5 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 6 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 7 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 8 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 9 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 10 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 11 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 12 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 13 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 14 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 15 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 16 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 17 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 18 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 19 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 20 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 21 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 22 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 23 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 24 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 25 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 26 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 27 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 28 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 29 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 30 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 31 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 32 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 33 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 34 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 35 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 Page checksums are not used drop table t1; # iteration 36 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Page checksums are used drop table t1; # iteration 1 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Crashsafe: yes alter table t1 modify a bigint ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` bigint(20) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Crashsafe: yes drop table t1; # iteration 2 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Crashsafe: yes alter table t1 transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no drop table t1; # iteration 3 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Crashsafe: yes alter table t1 transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes drop table t1; # iteration 4 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Crashsafe: yes -alter table t1 engine=maria ; +alter table t1 engine=aria ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Crashsafe: yes drop table t1; # iteration 5 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Crashsafe: yes -alter table t1 engine=maria transactional=0 ; +alter table t1 engine=aria transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no drop table t1; # iteration 6 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 Crashsafe: yes -alter table t1 engine=maria transactional=1 ; +alter table t1 engine=aria transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes drop table t1; # iteration 7 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no alter table t1 modify a bigint ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` bigint(20) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no drop table t1; # iteration 8 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no alter table t1 transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no drop table t1; # iteration 9 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no alter table t1 transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes drop table t1; # iteration 10 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no -alter table t1 engine=maria ; +alter table t1 engine=aria ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no drop table t1; # iteration 11 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no -alter table t1 engine=maria transactional=0 ; +alter table t1 engine=aria transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no drop table t1; # iteration 12 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no -alter table t1 engine=maria transactional=1 ; +alter table t1 engine=aria transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes drop table t1; # iteration 13 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes alter table t1 modify a bigint ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` bigint(20) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes drop table t1; # iteration 14 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes alter table t1 transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no drop table t1; # iteration 15 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes alter table t1 transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes drop table t1; # iteration 16 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes -alter table t1 engine=maria ; +alter table t1 engine=aria ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes drop table t1; # iteration 17 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes -alter table t1 engine=maria transactional=0 ; +alter table t1 engine=aria transactional=0 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0 Crashsafe: no drop table t1; # iteration 18 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes -alter table t1 engine=maria transactional=1 ; +alter table t1 engine=aria transactional=1 ; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 Crashsafe: yes drop table t1; diff --git a/mysql-test/suite/maria/r/maria-partitioning.result b/mysql-test/suite/maria/r/maria-partitioning.result index ff3035e560e..840c7c0b3b4 100644 --- a/mysql-test/suite/maria/r/maria-partitioning.result +++ b/mysql-test/suite/maria/r/maria-partitioning.result @@ -1,11 +1,11 @@ -set global storage_engine=maria; -set session storage_engine=maria; +set global storage_engine=aria; +set session storage_engine=aria; DROP TABLE if exists t1,t2; Warnings: Note 1051 Unknown table 't1' Note 1051 Unknown table 't2' -create table t2(a blob) engine=maria; -create table t1(a int primary key) engine=maria; +create table t2(a blob) engine=aria; +create table t1(a int primary key) engine=aria; insert into t2 values ('foo'),('bar'); select * from t2 left join t1 on (t2.a=t1.a) where t2.a='bbb'; a a @@ -16,8 +16,8 @@ insert into t1 values (2); select * from t2 left join t1 on (t2.a=t1.a) where t2.a='bbb'; a a drop table t1,t2; -create table t2(a blob) engine= maria; -create table t1(a int primary key) engine= maria PARTITION BY HASH (a) PARTITIONS 2; +create table t2(a blob) engine= aria; +create table t1(a int primary key) engine= aria PARTITION BY HASH (a) PARTITIONS 2; insert into t2 values ('foo'),('bar'); select * from t2 left join t1 on (t2.a=t1.a) where t2.a='bbb'; a a diff --git a/mysql-test/suite/maria/r/maria-preload.result b/mysql-test/suite/maria/r/maria-preload.result index b7c65ba8bb4..a693b6768ac 100644 --- a/mysql-test/suite/maria/r/maria-preload.result +++ b/mysql-test/suite/maria/r/maria-preload.result @@ -1,20 +1,20 @@ drop table if exists t1, t2; -set global maria_checkpoint_interval=0; +set global aria_checkpoint_interval=0; create temporary table initial select variable_name,variable_value from -information_schema.global_status where variable_name like "Maria_pagecache_reads"; +information_schema.global_status where variable_name like "Aria_pagecache_reads"; create table t1 ( a int not null auto_increment, b char(16) not null, primary key (a), key (b) -) engine=maria row_format=dynamic; +) engine=aria row_format=dynamic; create table t2( a int not null auto_increment, b char(16) not null, primary key (a), key (b) -) engine=maria row_format=dynamic; +) engine=aria row_format=dynamic; insert into t1(b) values ('test0'), ('test1'), @@ -50,21 +50,21 @@ count(*) 20672 flush tables; flush status; -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 2 +ARIA_PAGECACHE_READS 2 select count(*) from t1 where b = 'test1'; count(*) 4181 -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 9 +ARIA_PAGECACHE_READS 9 select count(*) from t1 where b = 'test1'; count(*) 4181 -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 9 +ARIA_PAGECACHE_READS 9 flush tables; flush status; select @@preload_buffer_size; @@ -73,20 +73,20 @@ select @@preload_buffer_size; load index into cache t1; Table Op Msg_type Msg_text test.t1 preload_keys status OK -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 80 +ARIA_PAGECACHE_READS 80 select count(*) from t1 where b = 'test1'; count(*) 4181 -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 80 +ARIA_PAGECACHE_READS 80 flush tables; flush status; -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 80 +ARIA_PAGECACHE_READS 80 set session preload_buffer_size=256*1024; select @@preload_buffer_size; @@preload_buffer_size @@ -94,20 +94,20 @@ select @@preload_buffer_size; load index into cache t1 ignore leaves; Table Op Msg_type Msg_text test.t1 preload_keys status OK -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 151 +ARIA_PAGECACHE_READS 151 select count(*) from t1 where b = 'test1'; count(*) 4181 -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 157 +ARIA_PAGECACHE_READS 157 flush tables; flush status; -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 157 +ARIA_PAGECACHE_READS 157 set session preload_buffer_size=1*1024; select @@preload_buffer_size; @@preload_buffer_size @@ -116,45 +116,45 @@ load index into cache t1, t2 key (primary,b) ignore leaves; Table Op Msg_type Msg_text test.t1 preload_keys status OK test.t2 preload_keys status OK -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 271 +ARIA_PAGECACHE_READS 271 select count(*) from t1 where b = 'test1'; count(*) 4181 select count(*) from t2 where b = 'test1'; count(*) 2584 -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 274 +ARIA_PAGECACHE_READS 274 flush tables; flush status; -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 274 +ARIA_PAGECACHE_READS 274 load index into cache t3, t2 key (primary,b) ; Table Op Msg_type Msg_text test.t3 preload_keys Error Table 'test.t3' doesn't exist test.t3 preload_keys status Operation failed test.t2 preload_keys status OK -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 317 +ARIA_PAGECACHE_READS 317 flush tables; flush status; -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 317 +ARIA_PAGECACHE_READS 317 load index into cache t3 key (b), t2 key (c) ; Table Op Msg_type Msg_text test.t3 preload_keys Error Table 'test.t3' doesn't exist test.t3 preload_keys status Operation failed test.t2 preload_keys Error Key 'c' doesn't exist in table 't2' test.t2 preload_keys status Operation failed -select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; variable_name g.variable_value-i.variable_value -MARIA_PAGECACHE_READS 317 +ARIA_PAGECACHE_READS 317 drop table t1, t2; drop temporary table initial; show status like "key_read%"; diff --git a/mysql-test/suite/maria/r/maria-purge.result b/mysql-test/suite/maria/r/maria-purge.result index eb67bab8cde..263e3270d26 100644 --- a/mysql-test/suite/maria/r/maria-purge.result +++ b/mysql-test/suite/maria/r/maria-purge.result @@ -1,7 +1,7 @@ * shut down mysqld, removed logs, restarted it -set global storage_engine=maria; -set session storage_engine=maria; -set global maria_log_file_size=4294967295; +set global storage_engine=aria; +set session storage_engine=aria; +set global aria_log_file_size=4294967295; drop table if exists t1,t2; SET SQL_WARNINGS=1; CREATE TABLE t1 ( @@ -34,60 +34,60 @@ insert into t2 select * from t1; insert into t1 select * from t2; insert into t2 select * from t1; insert into t1 select * from t2; -set global maria_log_file_size=16777216; -set global maria_checkpoint_interval=30; -SHOW ENGINE maria logs; +set global aria_log_file_size=16777216; +set global aria_checkpoint_interval=30; +SHOW ENGINE aria logs; Type Name Status -MARIA maria_log.00000002 in use +Aria aria_log.00000002 in use insert into t2 select * from t1; insert into t1 select * from t2; -set global maria_checkpoint_interval=30; -SHOW ENGINE maria logs; +set global aria_checkpoint_interval=30; +SHOW ENGINE aria logs; Type Name Status -MARIA maria_log.00000004 in use -set global maria_log_file_size=16777216; -select @@global.maria_log_file_size; -@@global.maria_log_file_size +Aria aria_log.00000004 in use +set global aria_log_file_size=16777216; +select @@global.aria_log_file_size; +@@global.aria_log_file_size 16777216 -set global maria_checkpoint_interval=30; -SHOW ENGINE maria logs; +set global aria_checkpoint_interval=30; +SHOW ENGINE aria logs; Type Name Status -MARIA maria_log.00000004 in use -set global maria_log_file_size=8388608; -select @@global.maria_log_file_size; -@@global.maria_log_file_size +Aria aria_log.00000004 in use +set global aria_log_file_size=8388608; +select @@global.aria_log_file_size; +@@global.aria_log_file_size 8388608 -set global maria_log_purge_type=at_flush; +set global aria_log_purge_type=at_flush; insert into t1 select * from t2; -set global maria_checkpoint_interval=30; -SHOW ENGINE maria logs; +set global aria_checkpoint_interval=30; +SHOW ENGINE aria logs; Type Name Status -MARIA maria_log.00000004 free -MARIA maria_log.00000005 free -MARIA maria_log.00000006 free -MARIA maria_log.00000007 free -MARIA maria_log.00000008 in use +Aria aria_log.00000004 free +Aria aria_log.00000005 free +Aria aria_log.00000006 free +Aria aria_log.00000007 free +Aria aria_log.00000008 in use flush logs; -SHOW ENGINE maria logs; +SHOW ENGINE aria logs; Type Name Status -MARIA maria_log.00000008 in use -set global maria_log_file_size=16777216; -set global maria_log_purge_type=external; +Aria aria_log.00000008 in use +set global aria_log_file_size=16777216; +set global aria_log_purge_type=external; insert into t1 select * from t2; -set global maria_checkpoint_interval=30; -SHOW ENGINE maria logs; +set global aria_checkpoint_interval=30; +SHOW ENGINE aria logs; Type Name Status -MARIA maria_log.00000008 free -MARIA maria_log.00000009 in use +Aria aria_log.00000008 free +Aria aria_log.00000009 in use flush logs; -SHOW ENGINE maria logs; +SHOW ENGINE aria logs; Type Name Status -MARIA maria_log.00000008 free -MARIA maria_log.00000009 in use -set global maria_log_purge_type=immediate; +Aria aria_log.00000008 free +Aria aria_log.00000009 in use +set global aria_log_purge_type=immediate; insert into t1 select * from t2; -set global maria_checkpoint_interval=30; -SHOW ENGINE maria logs; +set global aria_checkpoint_interval=30; +SHOW ENGINE aria logs; Type Name Status -MARIA maria_log.00000011 in use +Aria aria_log.00000011 in use drop table t1, t2; diff --git a/mysql-test/suite/maria/r/maria-recover.result b/mysql-test/suite/maria/r/maria-recover.result index 41155d683e4..128467a278c 100644 --- a/mysql-test/suite/maria/r/maria-recover.result +++ b/mysql-test/suite/maria/r/maria-recover.result @@ -1,22 +1,22 @@ -select @@global.maria_recover; -@@global.maria_recover +select @@global.aria_recover; +@@global.aria_recover BACKUP -set global maria_recover=off; -select @@global.maria_recover; -@@global.maria_recover +set global aria_recover=off; +select @@global.aria_recover; +@@global.aria_recover OFF -set global maria_recover=default; -select @@global.maria_recover; -@@global.maria_recover +set global aria_recover=default; +select @@global.aria_recover; +@@global.aria_recover NORMAL -set global maria_recover=normal; -select @@global.maria_recover; -@@global.maria_recover +set global aria_recover=normal; +select @@global.aria_recover; +@@global.aria_recover NORMAL drop database if exists mysqltest; create database mysqltest; use mysqltest; -create table t1 (a varchar(1000), index(a)) engine=maria; +create table t1 (a varchar(1000), index(a)) engine=aria; insert into t1 values("ThursdayMorningsMarket"); flush table t1; insert into t1 select concat(a,'b') from t1 limit 1; @@ -35,5 +35,5 @@ a ThursdayMorningsMarket ThursdayMorningsMarketb drop database mysqltest; -set global maria_recover=backup; -set global maria_checkpoint_interval=30; +set global aria_recover=backup; +set global aria_checkpoint_interval=30; diff --git a/mysql-test/suite/maria/r/maria-recovery-big.result b/mysql-test/suite/maria/r/maria-recovery-big.result index ecc53de437e..b205265f0da 100644 --- a/mysql-test/suite/maria/r/maria-recovery-big.result +++ b/mysql-test/suite/maria/r/maria-recovery-big.result @@ -1,10 +1,10 @@ -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; drop database if exists mysqltest; create database mysqltest; use mysqltest; * TEST of recovery with blobs * shut down mysqld, removed logs, restarted it -create table t1 (a int, b longtext) engine=maria table_checksum=1; +create table t1 (a int, b longtext) engine=aria table_checksum=1; * copied t1 for feeding_recovery insert into t1 values (1,"123456789012345678901234567890"),(2,"09876543210987654321"); flush table t1; @@ -62,7 +62,7 @@ a length(b) 2 5 SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * copied t1 back for feeding_recovery * recovery happens diff --git a/mysql-test/suite/maria/r/maria-recovery-bitmap.result b/mysql-test/suite/maria/r/maria-recovery-bitmap.result index 01255c2394f..884825d4792 100644 --- a/mysql-test/suite/maria/r/maria-recovery-bitmap.result +++ b/mysql-test/suite/maria/r/maria-recovery-bitmap.result @@ -2,7 +2,7 @@ drop database if exists mysqltest; create database mysqltest; use mysqltest; * shut down mysqld, removed logs, restarted it -create table t1 (a varchar(10000)) engine=maria; +create table t1 (a varchar(10000)) engine=aria; * TEST of over-allocated bitmap not flushed by checkpoint insert into t1 values ("bbbbbbb"); flush table t1; @@ -11,10 +11,10 @@ insert into t1 values ("bbbbbbb"); delete from t1 limit 1; set session debug="+d,info,enter,exit,maria_over_alloc_bitmap"; insert into t1 values ("aaaaaaaaa"); -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; SET SESSION debug="+d,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -31,7 +31,7 @@ lock tables t1 write; insert into t1 values (REPEAT('a', 6000)); SET SESSION debug="+d,maria_flush_bitmap,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; diff --git a/mysql-test/suite/maria/r/maria-recovery-rtree-ft.result b/mysql-test/suite/maria/r/maria-recovery-rtree-ft.result index b8b0daa0ad8..57a2927c749 100644 --- a/mysql-test/suite/maria/r/maria-recovery-rtree-ft.result +++ b/mysql-test/suite/maria/r/maria-recovery-rtree-ft.result @@ -1,4 +1,4 @@ -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; drop database if exists mysqltest; create database mysqltest; use mysqltest; @@ -8,12 +8,12 @@ line LINESTRING NOT NULL, kind ENUM('po', 'pp', 'rr', 'dr', 'rd', 'ts', 'cl') NOT NULL DEFAULT 'po', name VARCHAR(32) ,SPATIAL key (line) -) transactional=1 row_format=page engine=maria; +) transactional=1 row_format=page engine=aria; SHOW INDEX FROM t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment t1 1 line 1 line A NULL 32 NULL SPATIAL CREATE TABLE t2 (a VARCHAR(200), b TEXT, FULLTEXT (a,b) -) transactional=1 row_format=page engine=maria; +) transactional=1 row_format=page engine=aria; SHOW INDEX FROM t2; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment t2 1 a 1 a NULL NULL NULL NULL YES FULLTEXT @@ -27,7 +27,7 @@ flush table t1; * copied t1 for comparison SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * copied t2 back for feeding_recovery * copied t1 back for feeding_recovery @@ -53,7 +53,7 @@ flush table t1; lock tables t1 write, t2 write; SET SESSION debug="+d,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t2 extended; @@ -76,7 +76,7 @@ flush table t1; lock tables t1 write, t2 write; SET SESSION debug="+d,maria_flush_whole_page_cache,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t2 extended; @@ -99,7 +99,7 @@ flush table t1; lock tables t1 write, t2 write; SET SESSION debug="+d,maria_flush_states,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t2 extended; @@ -122,7 +122,7 @@ flush table t1; lock tables t1 write, t2 write; SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t2 extended; @@ -140,7 +140,7 @@ ok use mysqltest; SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t2 extended; diff --git a/mysql-test/suite/maria/r/maria-recovery.result b/mysql-test/suite/maria/r/maria-recovery.result index b0440489cd1..cfabbf10be9 100644 --- a/mysql-test/suite/maria/r/maria-recovery.result +++ b/mysql-test/suite/maria/r/maria-recovery.result @@ -1,9 +1,9 @@ -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; drop database if exists mysqltest; create database mysqltest; use mysqltest; * shut down mysqld, removed logs, restarted it -create table t1 (a varchar(1000)) engine=maria; +create table t1 (a varchar(1000)) engine=aria; * TEST of REDO: see if recovery can reconstruct if we give it an old table * copied t1 for feeding_recovery insert into t1 values ("00000000"); @@ -11,7 +11,7 @@ flush table t1; * copied t1 for comparison SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * copied t1 back for feeding_recovery * recovery happens @@ -34,7 +34,7 @@ lock tables t1 write; insert into t1 values ("aaaaaaaaa"); SET SESSION debug="+d,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -55,7 +55,7 @@ lock tables t1 write; insert into t1 values ("aaaaaaaaa"); SET SESSION debug="+d,maria_flush_whole_page_cache,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -77,7 +77,7 @@ lock tables t1 write; insert into t1 values ("aaaaaaaaa"); SET SESSION debug="+d,maria_flush_states,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -100,7 +100,7 @@ lock tables t1 write; insert into t1 values ("aaaaaaaaa"); SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -124,7 +124,7 @@ CREATE TABLE t1 ( i int, b blob default NULL, c varchar(6000) default NULL -) ENGINE=MARIA CHECKSUM=1; +) ENGINE=ARIA CHECKSUM=1; * copied t1 for feeding_recovery INSERT INTO t1 VALUES (1, REPEAT('a', 5000), REPEAT('b', 5000)); UPDATE t1 SET i=3, b=CONCAT(b,'c') WHERE i=1; @@ -135,7 +135,7 @@ flush table t1; * copied t1 for comparison SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * copied t1 back for feeding_recovery * recovery happens @@ -156,7 +156,7 @@ CREATE TABLE t1 ( i int auto_increment primary key, c varchar(6), key(c) -) ENGINE=MARIA; +) ENGINE=ARIA; insert into t1 values(null,"b"); * copied t1 for feeding_recovery insert into t1 values(null,"a"), (null,"c"), (null,"d"); @@ -165,7 +165,7 @@ flush table t1; * copied t1 for comparison SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * copied t1 back for feeding_recovery * recovery happens @@ -183,7 +183,7 @@ t1 CREATE TABLE `t1` ( `c` varchar(6) DEFAULT NULL, PRIMARY KEY (`i`), KEY `c` (`c`) -) ENGINE=MARIA AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 * TEST of UPDATE vs state.auto_increment * copied t1 for feeding_recovery update t1 set i=15 where c="a"; @@ -191,7 +191,7 @@ flush table t1; * copied t1 for comparison SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * copied t1 back for feeding_recovery * recovery happens @@ -209,7 +209,7 @@ t1 CREATE TABLE `t1` ( `c` varchar(6) DEFAULT NULL, PRIMARY KEY (`i`), KEY `c` (`c`) -) ENGINE=MARIA AUTO_INCREMENT=16 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria AUTO_INCREMENT=16 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 * TEST of INSERT's rollback vs state.auto_increment flush table t1; * copied t1 for comparison @@ -217,7 +217,7 @@ lock tables t1 write; insert into t1 values(null, "e"); SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -234,7 +234,7 @@ t1 CREATE TABLE `t1` ( `c` varchar(6) DEFAULT NULL, PRIMARY KEY (`i`), KEY `c` (`c`) -) ENGINE=MARIA AUTO_INCREMENT=17 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria AUTO_INCREMENT=17 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 insert into t1 values(null, "f"); drop table t1; drop database mysqltest_for_feeding_recovery; diff --git a/mysql-test/suite/maria/r/maria-recovery2.result b/mysql-test/suite/maria/r/maria-recovery2.result index bca6d0d7c74..b78d7dcc4e7 100644 --- a/mysql-test/suite/maria/r/maria-recovery2.result +++ b/mysql-test/suite/maria/r/maria-recovery2.result @@ -1,13 +1,13 @@ -call mtr.add_suppression("File '.*maria_log.000.*' not found \\(Errcode: 2\\)"); -call mtr.add_suppression("Table '.\/mysqltest\/t_corrupted1' is crashed, skipping it. Please repair it with maria_chk -r"); -set global maria_log_file_size=4294967295; +call mtr.add_suppression("File '.*aria_log.000.*' not found \\(Errcode: 2\\)"); +call mtr.add_suppression("Table '.\/mysqltest\/t_corrupted1' is crashed, skipping it. Please repair it with aria_chk -r"); +set global aria_log_file_size=4294967295; drop database if exists mysqltest; create database mysqltest; use mysqltest; * TEST of removing logs manually * shut down mysqld, removed logs, restarted it * TEST of UNDO_ROW_DELETE preserving rowid -create table t1(a int) engine=maria; +create table t1(a int) engine=aria; insert into t1 values(1),(2); flush table t1; * copied t1 for comparison @@ -16,7 +16,7 @@ insert into t1 values(3); delete from t1 where a in (1,2,3); SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -29,8 +29,8 @@ use mysqltest; drop table t1; * TEST of checkpoint set global debug="+d,info,query,enter,exit,loop,maria_checkpoint_indirect"; -set global maria_checkpoint_interval=10000; -create table t1(a int, b varchar(10), index(a,b)) engine=maria; +set global aria_checkpoint_interval=10000; +create table t1(a int, b varchar(10), index(a,b)) engine=aria; insert into t1 values(1,"a"),(2,"b"),(3,"c"); delete from t1 where b="b"; update t1 set b="d" where a=1; @@ -40,14 +40,14 @@ lock tables t1 write; insert into t1 values(4,"e"),(5,"f"),(6,"g"); update t1 set b="h" where a=5; delete from t1 where b="g"; -show status like "Maria_pagecache_blocks_not_flushed"; +show status like "Aria_pagecache_blocks_not_flushed"; Variable_name Value -Maria_pagecache_blocks_not_flushed 3 -set global maria_checkpoint_interval=10000; +Aria_pagecache_blocks_not_flushed 3 +set global aria_checkpoint_interval=10000; update t1 set b="i" where a=5; SET SESSION debug="+d,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -59,7 +59,7 @@ ok use mysqltest; drop table t1; Test of REPAIR's implicit commit -create table t1 (a varchar(100), key(a)) engine=maria; +create table t1 (a varchar(100), key(a)) engine=aria; insert into t1 values(3); flush table t1; * copied t1 for comparison @@ -76,7 +76,7 @@ a 3 SET SESSION debug="+d,maria_flush_whole_log,maria_flush_whole_page_cache,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -92,7 +92,7 @@ a 3 drop table t1; * TEST of recovery when crash before bulk-insert-with-repair is committed -create table t1 (a varchar(100), key(a)) engine=maria; +create table t1 (a varchar(100), key(a)) engine=aria; create table t2 (a varchar(100)) engine=myisam; set rand_seed1=12, rand_seed2=254; insert into t2 values (rand()); @@ -110,7 +110,7 @@ delete from t1 limit 1; insert into t1 select * from t2; SET SESSION debug="+d,maria_flush_whole_log,maria_flush_whole_page_cache,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -125,7 +125,7 @@ Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_par t1 1 a 1 a A 1 NULL NULL YES BTREE drop table t1; * TEST of recovery when OPTIMIZE has replaced the index file and crash -create table t_corrupted1 (a varchar(100), key(a)) engine=maria; +create table t_corrupted1 (a varchar(100), key(a)) engine=aria; insert into t_corrupted1 select (rand()) from t2; flush table t_corrupted1; * copied t_corrupted1 for comparison diff --git a/mysql-test/suite/maria/r/maria-recovery3.result b/mysql-test/suite/maria/r/maria-recovery3.result index 118ec537901..89643b7c7a0 100644 --- a/mysql-test/suite/maria/r/maria-recovery3.result +++ b/mysql-test/suite/maria/r/maria-recovery3.result @@ -1,20 +1,20 @@ -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; drop database if exists mysqltest; create database mysqltest; use mysqltest; * shut down mysqld, removed logs, restarted it * TEST of Checkpoint between writing the commit log record and committing in trnman -create table t1(a int primary key) engine=maria; +create table t1(a int primary key) engine=aria; insert into t1 values(1); flush table t1; * copied t1 for comparison set session debug="+d,maria_sleep_in_commit"; insert into t1 values(2); -set global maria_checkpoint_interval=1000; +set global aria_checkpoint_interval=1000; delete from t1 where a=2; SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; @@ -29,11 +29,11 @@ drop table t1; CREATE TABLE `t1` ( `blob` blob, `blob_key` blob -) ENGINE=maria ROW_FORMAT=page +) ENGINE=aria ROW_FORMAT=page ; * copied t1 for feeding_recovery * compared t1 to old version -set global maria_checkpoint_interval=0; +set global aria_checkpoint_interval=0; INSERT INTO `t1` VALUES (NULL,repeat('A',5198)); INSERT INTO `t1` VALUES (NULL,repeat('B',65535)); INSERT INTO `t1` VALUES (repeat('K',5198),repeat('L',2325)); @@ -50,7 +50,7 @@ flush table t1; * compared t1 to old version SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; * crashing mysqld intentionally -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; ERROR HY000: Lost connection to MySQL server during query * copied t1 back for feeding_recovery * recovery happens @@ -63,9 +63,9 @@ ok * compared t1 to old version use mysqltest; drop table t1; -create table t1 engine=maria select 1; +create table t1 engine=aria select 1; * copied t1 for feeding_recovery -set global maria_checkpoint_interval=0; +set global aria_checkpoint_interval=0; insert into t1 values(2); truncate table t1; flush table t1; @@ -78,7 +78,7 @@ ERROR HY000: Lost connection to MySQL server during query * recovery happens check table t1 extended; Table Op Msg_type Msg_text -mysqltest.t1 check warning Size of indexfile is: 372 Should be: 8192 +mysqltest.t1 check warning Size of indexfile is: 372 Expected: 8192 mysqltest.t1 check status OK * testing that checksum after recovery is as expected Checksum-check @@ -89,6 +89,28 @@ check table t1 extended; Table Op Msg_type Msg_text mysqltest.t1 check status OK drop table t1; +CREATE TABLE t1 ( word VARCHAR(255) PRIMARY KEY ) ENGINE=Aria; +LOAD DATA INFILE '../../std_data/bug887051.txt' INTO TABLE t1; +SET AUTOCOMMIT=0; +DELETE FROM t1; +LOAD DATA INFILE '../../std_data/bug887051.txt' INTO TABLE t1 IGNORE 1 LINES; +COMMIT; +SET SESSION debug="+d,maria_flush_whole_log,maria_crash"; +* crashing mysqld intentionally +set global aria_checkpoint_interval=1; +ERROR HY000: Lost connection to MySQL server during query +* recovery happens +check table t1 extended; +Table Op Msg_type Msg_text +mysqltest.t1 check status OK +* testing that checksum after recovery is as expected +Checksum-check +failure +use mysqltest; +select * from t1; +word +saved2 +drop table t1; drop database mysqltest_for_feeding_recovery; drop database mysqltest_for_comparison; drop database mysqltest; diff --git a/mysql-test/suite/maria/r/maria-ucs2.result b/mysql-test/suite/maria/r/maria-ucs2.result new file mode 100644 index 00000000000..e7258f21d4f --- /dev/null +++ b/mysql-test/suite/maria/r/maria-ucs2.result @@ -0,0 +1,39 @@ +select * from INFORMATION_SCHEMA.ENGINES where ENGINE="ARIA"; +ENGINE SUPPORT COMMENT TRANSACTIONS XA SAVEPOINTS +Aria YES Crash-safe tables with MyISAM heritage NO NO NO +set global storage_engine=aria; +set session storage_engine=aria; +drop table if exists t1; +SET SQL_WARNINGS=1; +CREATE TABLE t1 ( a VARCHAR(800),KEY(a) ) +ENGINE=Aria DEFAULT CHARACTER SET latin1; +INSERT INTO t1 VALUES +(REPEAT('abc ',200)), (REPEAT('def ',200)), +(REPEAT('ghi ',200)), (REPEAT('jkl ',200)); +INSERT INTO t1 SELECT * FROM t1; +CHECK TABLE t1; +Table Op Msg_type Msg_text +test.t1 check status OK +ALTER TABLE t1 MODIFY a VARCHAR(800) CHARSET `ucs2`; +Warnings: +Warning 1071 Specified key was too long; max key length is 1000 bytes +Warning 1071 Specified key was too long; max key length is 1000 bytes +CHECK TABLE t1; +Table Op Msg_type Msg_text +test.t1 check status OK +SHOW CREATE table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(800) CHARACTER SET ucs2 DEFAULT NULL, + KEY `a` (`a`(500)) +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +DROP TABLE t1; +CREATE TABLE t1 (a VARCHAR(800),KEY(a)) ENGINE=Aria CHARACTER SET ucs2; +Warnings: +Warning 1071 Specified key was too long; max key length is 1000 bytes +INSERT INTO t1 VALUES (REPEAT('abc ',200)); +CHECK TABLE t1; +Table Op Msg_type Msg_text +test.t1 check status OK +DROP TABLE t1; +# End of 5.2 tests diff --git a/mysql-test/suite/maria/r/maria.result b/mysql-test/suite/maria/r/maria.result index 5d1e8f98c38..74b1694d7d1 100644 --- a/mysql-test/suite/maria/r/maria.result +++ b/mysql-test/suite/maria/r/maria.result @@ -1,10 +1,10 @@ -select * from INFORMATION_SCHEMA.ENGINES where ENGINE="MARIA"; +select * from INFORMATION_SCHEMA.ENGINES where ENGINE="ARIA"; ENGINE SUPPORT COMMENT TRANSACTIONS XA SAVEPOINTS -MARIA YES Crash-safe tables with MyISAM heritage YES NO NO -set global storage_engine=maria; -set session storage_engine=maria; -set global maria_page_checksum=0; -set global maria_log_file_size=4294967295; +Aria YES Crash-safe tables with MyISAM heritage NO NO NO +set global storage_engine=aria; +set session storage_engine=aria; +set global aria_page_checksum=0; +set global aria_log_file_size=4294967295; drop table if exists t1,t2; drop view if exists v1; SET SQL_WARNINGS=1; @@ -340,14 +340,14 @@ Table Op Msg_type Msg_text test.t1 check status OK drop table t1; CREATE TABLE t1 (a varchar(255), b varchar(255), c varchar(255), d varchar(255), e varchar(255), KEY t1 (a, b, c, d, e)); -ERROR 42000: Specified key was too long; max key length is 1208 bytes +ERROR 42000: Specified key was too long; max key length is 1000 bytes CREATE TABLE t1 (a varchar(32000), unique key(a)); -ERROR 42000: Specified key was too long; max key length is 1208 bytes +ERROR 42000: Specified key was too long; max key length is 1000 bytes CREATE TABLE t1 (a varchar(1), b varchar(1), key (a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b)); ERROR 42000: Too many key parts specified; max 32 parts allowed CREATE TABLE t1 (a varchar(255), b varchar(255), c varchar(255), d varchar(255), e varchar(255)); ALTER TABLE t1 ADD INDEX t1 (a, b, c, d, e); -ERROR 42000: Specified key was too long; max key length is 1208 bytes +ERROR 42000: Specified key was too long; max key length is 1000 bytes DROP TABLE t1; CREATE TABLE t1 (a int not null, b int, c int, key(b), key(c), key(a,b), key(c,a)); INSERT into t1 values (0, null, 0), (0, null, 1), (0, null, 2), (0, null,3), (1,1,4); @@ -702,9 +702,9 @@ checksum table t1; Table Checksum test.t1 4183529555 drop table t1; -show variables like 'maria_stats_method'; +show variables like 'aria_stats_method'; Variable_name Value -maria_stats_method nulls_unequal +aria_stats_method nulls_unequal create table t1 (a int, key(a)); insert into t1 values (0),(1),(2),(3),(4); insert into t1 select NULL from t1; @@ -722,10 +722,10 @@ test.t1 check status OK show index from t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment t1 1 a 1 a A 10 NULL NULL YES BTREE -set maria_stats_method=nulls_equal; -show variables like 'maria_stats_method'; +set aria_stats_method=nulls_equal; +show variables like 'aria_stats_method'; Variable_name Value -maria_stats_method nulls_equal +aria_stats_method nulls_equal insert into t1 values (11); delete from t1 where a=11; analyze table t1; @@ -742,10 +742,10 @@ test.t1 check status OK show index from t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment t1 1 a 1 a A 5 NULL NULL YES BTREE -set maria_stats_method=DEFAULT; -show variables like 'maria_stats_method'; +set aria_stats_method=DEFAULT; +show variables like 'aria_stats_method'; Variable_name Value -maria_stats_method nulls_unequal +aria_stats_method nulls_unequal insert into t1 values (11); delete from t1 where a=11; analyze table t1; @@ -763,10 +763,10 @@ show index from t1; Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment t1 1 a 1 a A 10 NULL NULL YES BTREE drop table t1; -set maria_stats_method=nulls_ignored; -show variables like 'maria_stats_method'; +set aria_stats_method=nulls_ignored; +show variables like 'aria_stats_method'; Variable_name Value -maria_stats_method nulls_ignored +aria_stats_method nulls_ignored create table t1 ( a char(3), b char(4), c char(5), d char(6), key(a,b,c,d) @@ -794,7 +794,7 @@ t1 1 a 1 a A 0 NULL NULL YES BTREE t1 1 a 2 b A 0 NULL NULL YES BTREE t1 1 a 3 c A 0 NULL NULL YES BTREE t1 1 a 4 d A 0 NULL NULL YES BTREE -set maria_stats_method=DEFAULT; +set aria_stats_method=DEFAULT; drop table t1; create table t1( cip INT NOT NULL, @@ -819,7 +819,7 @@ id2 int not null default '0', t text not null, primary key (id1), key x (id2, t(32)) -) engine=maria; +) engine=aria; insert into t1 (id2, t) values (10, 'abc'), (10, 'abc'), (10, 'abc'), (20, 'abc'), (20, 'abc'), (20, 'def'), @@ -852,10 +852,10 @@ a b xxxxxxxxx bbbbbb xxxxxxxxx bbbbbb DROP TABLE t1; -SET @@maria_repair_threads=2; -SHOW VARIABLES LIKE 'maria_repair%'; +SET @@aria_repair_threads=2; +SHOW VARIABLES LIKE 'aria_repair%'; Variable_name Value -maria_repair_threads 2 +aria_repair_threads 2 CREATE TABLE t1 ( `_id` int(11) NOT NULL default '0', `url` text, @@ -897,7 +897,7 @@ _id DELETE FROM t1 WHERE _id < 8; SHOW TABLE STATUS LIKE 't1'; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 2 # # # # 0 # # # # # # +t1 Aria 10 Page 2 # # # # 0 # # # # # # CHECK TABLE t1 EXTENDED; Table Op Msg_type Msg_text test.t1 check status OK @@ -909,7 +909,7 @@ Table Op Msg_type Msg_text test.t1 check status OK SHOW TABLE STATUS LIKE 't1'; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 2 # # # # 0 # # # # # # +t1 Aria 10 Page 2 # # # # 0 # # # # # # SELECT _id FROM t1; _id 8 @@ -956,7 +956,7 @@ _id DELETE FROM t1 WHERE _id < 8; SHOW TABLE STATUS LIKE 't1'; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 2 # # # # 0 # # # # # # +t1 Aria 10 Page 2 # # # # 0 # # # # # # CHECK TABLE t1 EXTENDED; Table Op Msg_type Msg_text test.t1 check status OK @@ -968,16 +968,16 @@ Table Op Msg_type Msg_text test.t1 check status OK SHOW TABLE STATUS LIKE 't1'; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 2 # # # # 0 # # # # # # +t1 Aria 10 Page 2 # # # # 0 # # # # # # SELECT _id FROM t1; _id 8 9 DROP TABLE t1; -SET @@maria_repair_threads=1; -SHOW VARIABLES LIKE 'maria_repair%'; +SET @@aria_repair_threads=1; +SHOW VARIABLES LIKE 'aria_repair%'; Variable_name Value -maria_repair_threads 1 +aria_repair_threads 1 drop table if exists t1,t2,t3; --- Testing varchar --- --- Testing varchar --- @@ -997,7 +997,7 @@ t1 CREATE TABLE `t1` ( `v` varchar(10) DEFAULT NULL, `c` char(10) DEFAULT NULL, `t` text -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 create table t2 like t1; show create table t2; Table Create Table @@ -1005,7 +1005,7 @@ t2 CREATE TABLE `t2` ( `v` varchar(10) DEFAULT NULL, `c` char(10) DEFAULT NULL, `t` text -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 create table t3 select * from t1; show create table t3; Table Create Table @@ -1013,7 +1013,7 @@ t3 CREATE TABLE `t3` ( `v` varchar(10) DEFAULT NULL, `c` char(10) DEFAULT NULL, `t` text -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 alter table t1 modify c varchar(10); show create table t1; Table Create Table @@ -1021,7 +1021,7 @@ t1 CREATE TABLE `t1` ( `v` varchar(10) DEFAULT NULL, `c` varchar(10) DEFAULT NULL, `t` text -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 alter table t1 modify v char(10); show create table t1; Table Create Table @@ -1029,7 +1029,7 @@ t1 CREATE TABLE `t1` ( `v` char(10) DEFAULT NULL, `c` varchar(10) DEFAULT NULL, `t` text -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 alter table t1 modify t varchar(10); Warnings: Note 1265 Data truncated for column 't' at row 2 @@ -1039,7 +1039,7 @@ t1 CREATE TABLE `t1` ( `v` char(10) DEFAULT NULL, `c` varchar(10) DEFAULT NULL, `t` varchar(10) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 select concat('*',v,'*',c,'*',t,'*') from t1; concat('*',v,'*',c,'*',t,'*') *+*+*+ * @@ -1055,7 +1055,7 @@ t1 CREATE TABLE `t1` ( KEY `v` (`v`), KEY `c` (`c`), KEY `t` (`t`(10)) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 select count(*) from t1; count(*) 270 @@ -1274,7 +1274,7 @@ t1 CREATE TABLE `t1` ( KEY `c` (`c`), KEY `t` (`t`(10)), KEY `v` (`v`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 select count(*) from t1 where v='a'; count(*) 10 @@ -1354,7 +1354,7 @@ t1 CREATE TABLE `t1` ( KEY `c` (`c`), KEY `t` (`t`(10)), KEY `v` (`v`(30)) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 select count(*) from t1 where v='a'; count(*) 10 @@ -1434,7 +1434,7 @@ t1 CREATE TABLE `t1` ( KEY `c` (`c`), KEY `t` (`t`(10)), KEY `v` (`v`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 select v,count(*) from t1 group by v limit 10; v count(*) a 1 @@ -1512,14 +1512,14 @@ t1 CREATE TABLE `t1` ( KEY `v` (`v`(5)), KEY `c` (`c`(5)), KEY `t` (`t`(5)) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (v char(10) character set utf8); show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `v` char(10) CHARACTER SET utf8 DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (v varchar(10), c char(10)) row_format=fixed; show create table t1; @@ -1527,7 +1527,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `v` varchar(10) DEFAULT NULL, `c` char(10) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED insert into t1 values('a','a'),('a ','a '); select concat('*',v,'*',c,'*') from t1; concat('*',v,'*',c,'*') @@ -1551,7 +1551,7 @@ a b drop table t1; create table t1 (v varchar(65530), key(v)); Warnings: -Warning 1071 Specified key was too long; max key length is 1208 bytes +Warning 1071 Specified key was too long; max key length is 1000 bytes drop table if exists t1; create table t1 (v varchar(65536)); Warnings: @@ -1560,7 +1560,7 @@ show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `v` mediumtext -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (v varchar(65530) character set utf8); Warnings: @@ -1569,7 +1569,7 @@ show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `v` mediumtext CHARACTER SET utf8 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (v varchar(65535)); ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs @@ -1696,32 +1696,32 @@ DROP TABLE t1; CREATE TABLE t1 (c1 INT, c2 INT, UNIQUE INDEX (c1), INDEX (c2)); SHOW TABLE STATUS LIKE 't1'; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 0 # # # 8192 # # # # # # # +t1 Aria 10 Page 0 # # # 8192 # # # # # # # INSERT INTO t1 VALUES (1,1); SHOW TABLE STATUS LIKE 't1'; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 1 # # # 24576 # # # # # # # +t1 Aria 10 Page 1 # # # 24576 # # # # # # # ALTER TABLE t1 DISABLE KEYS; SHOW TABLE STATUS LIKE 't1'; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 1 # # # 24576 # # # # # # # +t1 Aria 10 Page 1 # # # 24576 # # # # # # # ALTER TABLE t1 ENABLE KEYS; SHOW TABLE STATUS LIKE 't1'; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 1 # # # 24576 # # # # # # # +t1 Aria 10 Page 1 # # # 24576 # # # # # # # ALTER TABLE t1 DISABLE KEYS; SHOW TABLE STATUS LIKE 't1'; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 1 # # # 24576 # # # # # # # +t1 Aria 10 Page 1 # # # 24576 # # # # # # # ALTER TABLE t1 ENABLE KEYS; SHOW TABLE STATUS LIKE 't1'; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 1 # # # 24576 # # # # # # # +t1 Aria 10 Page 1 # # # 24576 # # # # # # # # Enable keys with parallel repair -SET @@maria_repair_threads=2; +SET @@aria_repair_threads=2; ALTER TABLE t1 DISABLE KEYS; ALTER TABLE t1 ENABLE KEYS; -SET @@maria_repair_threads=1; +SET @@aria_repair_threads=1; CHECK TABLE t1 EXTENDED; Table Op Msg_type Msg_text test.t1 check status OK @@ -1748,7 +1748,7 @@ id ref 3 2 4 5 DROP TABLE t1, t2; -CREATE TABLE t1 (a INT) ENGINE=MARIA CHECKSUM=1 ROW_FORMAT=DYNAMIC; +CREATE TABLE t1 (a INT) ENGINE=ARIA CHECKSUM=1 ROW_FORMAT=DYNAMIC; INSERT INTO t1 VALUES (0); UPDATE t1 SET a=1; SELECT a FROM t1; @@ -1777,7 +1777,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a int not null, key `a` (a) key_block_size=2048); show create table t1; @@ -1785,39 +1785,39 @@ Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a varchar(2048), key `a` (a)); Warnings: -Warning 1071 Specified key was too long; max key length is 1208 bytes +Warning 1071 Specified key was too long; max key length is 1000 bytes show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` varchar(2048) DEFAULT NULL, - KEY `a` (`a`(1208)) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 + KEY `a` (`a`(1000)) +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a varchar(2048), key `a` (a) key_block_size=1024); Warnings: -Warning 1071 Specified key was too long; max key length is 1208 bytes +Warning 1071 Specified key was too long; max key length is 1000 bytes show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` varchar(2048) DEFAULT NULL, - KEY `a` (`a`(1208)) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 + KEY `a` (`a`(1000)) KEY_BLOCK_SIZE=8192 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a int not null, b varchar(2048), key (a), key(b)) key_block_size=1024; Warnings: -Warning 1071 Specified key was too long; max key length is 1208 bytes +Warning 1071 Specified key was too long; max key length is 1000 bytes show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, `b` varchar(2048) DEFAULT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192, - KEY `b` (`b`(1208)) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=1024 + KEY `b` (`b`(1000)) KEY_BLOCK_SIZE=8192 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=1024 alter table t1 key_block_size=2048; show create table t1; Table Create Table @@ -1825,8 +1825,8 @@ t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, `b` varchar(2048) DEFAULT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192, - KEY `b` (`b`(1208)) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=2048 + KEY `b` (`b`(1000)) KEY_BLOCK_SIZE=8192 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=2048 alter table t1 add c int, add key (c); show create table t1; Table Create Table @@ -1835,9 +1835,9 @@ t1 CREATE TABLE `t1` ( `b` varchar(2048) DEFAULT NULL, `c` int(11) DEFAULT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192, - KEY `b` (`b`(1208)) KEY_BLOCK_SIZE=8192, + KEY `b` (`b`(1000)) KEY_BLOCK_SIZE=8192, KEY `c` (`c`) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=2048 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=2048 alter table t1 key_block_size=0; alter table t1 add d int, add key (d); show create table t1; @@ -1848,34 +1848,34 @@ t1 CREATE TABLE `t1` ( `c` int(11) DEFAULT NULL, `d` int(11) DEFAULT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192, - KEY `b` (`b`(1208)) KEY_BLOCK_SIZE=8192, + KEY `b` (`b`(1000)) KEY_BLOCK_SIZE=8192, KEY `c` (`c`) KEY_BLOCK_SIZE=8192, KEY `d` (`d`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a int not null, b varchar(2048), key (a), key(b)) key_block_size=8192; Warnings: -Warning 1071 Specified key was too long; max key length is 1208 bytes +Warning 1071 Specified key was too long; max key length is 1000 bytes show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, `b` varchar(2048) DEFAULT NULL, KEY `a` (`a`), - KEY `b` (`b`(1208)) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=8192 + KEY `b` (`b`(1000)) +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=8192 drop table t1; create table t1 (a int not null, b varchar(2048), key (a) key_block_size=1024, key(b)) key_block_size=8192; Warnings: -Warning 1071 Specified key was too long; max key length is 1208 bytes +Warning 1071 Specified key was too long; max key length is 1000 bytes show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, `b` varchar(2048) DEFAULT NULL, KEY `a` (`a`), - KEY `b` (`b`(1208)) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=8192 + KEY `b` (`b`(1000)) +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=8192 drop table t1; create table t1 (a int not null, b int, key (a) key_block_size=1024, key(b) key_block_size=8192) key_block_size=16384; show create table t1; @@ -1885,7 +1885,7 @@ t1 CREATE TABLE `t1` ( `b` int(11) DEFAULT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192, KEY `b` (`b`) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=16384 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 KEY_BLOCK_SIZE=16384 drop table t1; create table t1 (a int not null, key `a` (a) key_block_size=512); show create table t1; @@ -1893,17 +1893,17 @@ Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a varchar(2048), key `a` (a) key_block_size=1000000000000000000); Warnings: -Warning 1071 Specified key was too long; max key length is 1208 bytes +Warning 1071 Specified key was too long; max key length is 1000 bytes show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` varchar(2048) DEFAULT NULL, - KEY `a` (`a`(1208)) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 + KEY `a` (`a`(1000)) KEY_BLOCK_SIZE=8192 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a int not null, key `a` (a) key_block_size=1025); show create table t1; @@ -1911,7 +1911,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a int not null, key key_block_size=1024 (a)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=1024 (a))' at line 1 @@ -1965,7 +1965,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(130), c2 VARCHAR(1) -) ENGINE=maria; +) ENGINE=aria; INSERT INTO t1 VALUES(REPEAT("a",128), 'b'); SELECT COUNT(*) FROM t1; COUNT(*) @@ -1986,7 +1986,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(130), c2 VARCHAR(1) -) ENGINE=maria; +) ENGINE=aria; INSERT INTO t1 VALUES(REPEAT("a",128), 'b'); SELECT COUNT(*) FROM t1; COUNT(*) @@ -2007,7 +2007,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(130), c2 VARCHAR(1) -) ENGINE=maria; +) ENGINE=aria; INSERT INTO t1 VALUES(REPEAT("a",128), 'b'); INSERT INTO t1 VALUES('b', 'b'); INSERT INTO t1 VALUES('c', 'b'); @@ -2026,13 +2026,13 @@ CREATE TABLE t1 ( c1 CHAR(130), c2 VARCHAR(1), KEY (c1) -) ENGINE=maria; +) ENGINE=aria; # Insert 100 rows. Query log disabled. UPDATE t1 SET c1=REPEAT("a",128) LIMIT 90; SELECT COUNT(*) FROM t1; COUNT(*) 100 -ALTER TABLE t1 ENGINE=maria; +ALTER TABLE t1 ENGINE=aria; SELECT COUNT(*) FROM t1; COUNT(*) 100 @@ -2046,7 +2046,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(50), c2 VARCHAR(1) -) ENGINE=maria DEFAULT CHARSET UTF8; +) ENGINE=aria DEFAULT CHARSET UTF8; INSERT INTO t1 VALUES(REPEAT(_utf8 x'e0ae85',43), 'b'); SELECT COUNT(*) FROM t1; COUNT(*) @@ -2067,7 +2067,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(50), c2 VARCHAR(1) -) ENGINE=maria DEFAULT CHARSET UTF8; +) ENGINE=aria DEFAULT CHARSET UTF8; INSERT INTO t1 VALUES(REPEAT(_utf8 x'e0ae85',43), 'b'); SELECT COUNT(*) FROM t1; COUNT(*) @@ -2088,7 +2088,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(50), c2 VARCHAR(1) -) ENGINE=maria DEFAULT CHARSET UTF8; +) ENGINE=aria DEFAULT CHARSET UTF8; INSERT INTO t1 VALUES(REPEAT(_utf8 x'e0ae85',43), 'b'); INSERT INTO t1 VALUES('b', 'b'); INSERT INTO t1 VALUES('c', 'b'); @@ -2107,13 +2107,13 @@ CREATE TABLE t1 ( c1 CHAR(50), c2 VARCHAR(1), KEY (c1) -) ENGINE=maria DEFAULT CHARSET UTF8; +) ENGINE=aria DEFAULT CHARSET UTF8; # Insert 100 rows. Query log disabled. UPDATE t1 SET c1=REPEAT(_utf8 x'e0ae85',43) LIMIT 90; SELECT COUNT(*) FROM t1; COUNT(*) 100 -ALTER TABLE t1 ENGINE=maria; +ALTER TABLE t1 ENGINE=aria; SELECT COUNT(*) FROM t1; COUNT(*) 100 @@ -2130,8 +2130,8 @@ c2 CHAR(10) DEFAULT NULL, c3 VARCHAR(10) NOT NULL, KEY (c1), KEY (c2) -) ENGINE=maria DEFAULT CHARSET=utf8 PACK_KEYS=0; -MARIA file: MYSQLD_DATADIR/test/t1 +) ENGINE=aria DEFAULT CHARSET=utf8 PACK_KEYS=0; +Aria file: MYSQLD_DATADIR/test/t1 Record format: Block Crashsafe: yes Character set: utf8_general_ci (33) @@ -2150,14 +2150,14 @@ Table Create Table t1 CREATE TABLE `t1` ( `n` int(11) NOT NULL, `c` char(1) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 TRANSACTIONAL=1 drop table t1; -CREATE TABLE t1 (line LINESTRING NOT NULL) engine=maria; +CREATE TABLE t1 (line LINESTRING NOT NULL) engine=aria; INSERT INTO t1 VALUES (GeomFromText("POINT(0 0)")); checksum table t1; Table Checksum test.t1 326284887 -CREATE TABLE t2 (line LINESTRING NOT NULL) engine=maria; +CREATE TABLE t2 (line LINESTRING NOT NULL) engine=aria; INSERT INTO t2 VALUES (GeomFromText("POINT(0 0)")); checksum table t2; Table Checksum @@ -2168,7 +2168,7 @@ Table Checksum test.t3 326284887 drop table t1,t2,t3; End of 5.1 tests -create table t2(a varchar(255),key(a))engine=maria row_format=dynamic transactional=0; +create table t2(a varchar(255),key(a))engine=aria row_format=dynamic transactional=0; insert into t2 values (repeat('o',124)), (repeat('h',226)), (repeat('i',236)), (repeat('l',234)), (repeat('b',13)), (repeat('g',236)), (repeat('y',205)), (repeat('c',99)), (repeat('g',145)), (repeat('o',131)), (repeat('e',63)), @@ -2380,7 +2380,7 @@ col172 tinyint(1) DEFAULT NULL, col173 tinytext, col174 decimal(10,0) DEFAULT NULL, col175 double DEFAULT NULL -) engine=maria; +) engine=aria; insert ignore into t1 set col10=abs(28449) % 2, col11='1973', @@ -2505,7 +2505,7 @@ check table t1; Table Op Msg_type Msg_text test.t1 check status OK drop table t1; -create table t1 (a char(200) primary key, b int default 12345) engine=maria; +create table t1 (a char(200) primary key, b int default 12345) engine=aria; insert t1 (a) values (repeat('0', 200)); insert t1 (a) values (repeat('1', 200)), (repeat('2', 200)), (repeat('3', 200)), (repeat('4', 200)), (repeat('5', 200)), (repeat('6', 200)), (repeat('7', 200)), @@ -2525,14 +2525,14 @@ b 12345 12345 drop table t1; -create table t1 (a int) engine=maria transactional=1; +create table t1 (a int) engine=aria transactional=1; insert into t1 values (1); lock table t1 write concurrent; delete from t1; ERROR 42000: The storage engine for the table doesn't support DELETE in WRITE CONCURRENT drop table t1; create table t1 (p int primary key, i int, a char(10), key k1(i), key k2(a)) -engine maria; +engine aria; insert into t1 values (1, 1, 'qqqq'), (2, 1, 'pppp'), (3, 1, 'yyyy'), (4, 3, 'zzzz'); insert into t1 values (5, 3, 'yyyy'), (6, 3, 'yyyy'), (7, 0, NULL), @@ -2563,8 +2563,8 @@ check table t1; Table Op Msg_type Msg_text test.t1 check status OK drop table t1; -create table t1 (f1 int unique, f2 int) engine=maria; -create table t2 (f3 int, f4 int) engine=maria; +create table t1 (f1 int unique, f2 int) engine=aria; +create table t2 (f3 int, f4 int) engine=aria; create view v1 as select * from t1, t2 where f1= f3; insert into t1 values (1,11), (2,22); insert into v1 (f1) values (3) on duplicate key update f1= f3 + 10; @@ -2573,7 +2573,7 @@ insert into v1 (f1) values (3) on duplicate key update f1= f3 + 10; ERROR HY000: Can not modify more than one base table through a join view 'test.v1' drop table t1,t2; drop view v1; -CREATE TABLE t1 (id int, c varchar(10)) engine=maria; +CREATE TABLE t1 (id int, c varchar(10)) engine=aria; INSERT INTO t1 VALUES (1,"1"); ALTER TABLE t1 CHANGE c d varchar(10); affected rows: 0 @@ -2590,7 +2590,7 @@ lock table t1 read, t2 read; flush tables with read lock; unlock tables; drop table t1, t2; -create table t1(a int primary key, b blob, c blob) engine=maria; +create table t1(a int primary key, b blob, c blob) engine=aria; insert into t1 values(1,repeat('a',100), repeat('b',657860)); Warnings: Warning 1265 Data truncated for column 'c' at row 1 @@ -2605,7 +2605,7 @@ show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; CREATE TABLE t1 ( f1 DOUBLE , f2 DOUBLE , f3 DOUBLE , f4 DOUBLE , v3 DOUBLE , v4 DOUBLE , KEY ( v3 ) , KEY ( v4 ) ) engine=maria; REPLACE t1 ( f2 , f1 ) VALUES ( f2 , 56 ) ; @@ -2618,7 +2618,7 @@ f1 CHAR(255) BINARY , f2 CHAR(255) BINARY NOT NULL DEFAULT '0', f3 CHAR(255) BINARY NOT NULL , f4 CHAR(255) BINARY NOT NULL DEFAULT '0' , -v3 CHAR(255) BINARY NOT NULL DEFAULT '0' , +v3 CHAR(255) BINARY AS ( ( f1 NOT LIKE '%' ) ) PERSISTENT, KEY (v3) ) ENGINE=Maria; INSERT INTO t1 ( f1 , f2 , f3 , f4 ) SELECT f1 , f4 , f1 , f4 FROM t1; diff --git a/mysql-test/suite/maria/r/maria2.result b/mysql-test/suite/maria/r/maria2.result index e721ceaafae..f145a4884e7 100644 --- a/mysql-test/suite/maria/r/maria2.result +++ b/mysql-test/suite/maria/r/maria2.result @@ -3,7 +3,7 @@ CREATE TABLE t1 ( line BLOB, kind ENUM('po', 'pp', 'rr', 'dr', 'rd', 'ts', 'cl') NOT NULL DEFAULT 'po', name VARCHAR(32) -) transactional=0 row_format=page engine=maria; +) transactional=0 row_format=page engine=aria; select count(*) from t1; count(*) 810 @@ -17,8 +17,8 @@ check table t1 extended; Table Op Msg_type Msg_text test.t1 check status OK drop table t1; -create table t1 (i int) engine=maria; -create table t2 (j int) engine=maria; +create table t1 (i int) engine=aria; +create table t2 (j int) engine=aria; lock table t1 write, t2 read; alter table t1 modify i int default 1; insert into t1 values (2); @@ -30,7 +30,7 @@ select * from t1; i 2 drop table t1,t2; -create table t1(id int, s char(1), unique(s)) engine=maria; +create table t1(id int, s char(1), unique(s)) engine=aria; insert into t1 values(1,"a") on duplicate key update t1.id=t1.id+1; insert into t1 values(1,"a") on duplicate key update t1.id=t1.id+1; insert into t1 select 1,"a" on duplicate key update t1.id=t1.id+1; @@ -42,7 +42,7 @@ select * from t1; id s 1 a drop table t1; -create table t1 (pk int primary key, apk int unique, data int) engine=maria; +create table t1 (pk int primary key, apk int unique, data int) engine=aria; insert into t1 values (1, 1, 1), (4, 4, 4), (6, 6, 6); load data concurrent infile '../../std_data/loaddata5.dat' replace into table t1 fields terminated by '' enclosed by '' ignore 1 lines (pk, apk); select * from t1 order by pk; diff --git a/mysql-test/suite/maria/r/maria3.result b/mysql-test/suite/maria/r/maria3.result index e4d76a308d3..1a8ada478f6 100644 --- a/mysql-test/suite/maria/r/maria3.result +++ b/mysql-test/suite/maria/r/maria3.result @@ -1,10 +1,10 @@ -select * from INFORMATION_SCHEMA.ENGINES where ENGINE="MARIA"; +select * from INFORMATION_SCHEMA.ENGINES where ENGINE="ARIA"; ENGINE SUPPORT COMMENT TRANSACTIONS XA SAVEPOINTS -MARIA YES Crash-safe tables with MyISAM heritage YES NO NO -set global storage_engine=maria; -set session storage_engine=maria; -set global maria_page_checksum=0; -set global maria_log_file_size=4294967295; +Aria YES Crash-safe tables with MyISAM heritage NO NO NO +set global storage_engine=aria; +set session storage_engine=aria; +set global aria_page_checksum=0; +set global aria_log_file_size=4294967295; drop table if exists t1,t2; SET SQL_WARNINGS=1; create table t1 (a int not null, key `a` (a) key_block_size=512); @@ -13,17 +13,17 @@ Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a varchar(2048), key `a` (a) key_block_size=1000000000000000000); Warnings: -Warning 1071 Specified key was too long; max key length is 1208 bytes +Warning 1071 Specified key was too long; max key length is 1000 bytes show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` varchar(2048) DEFAULT NULL, - KEY `a` (`a`(1208)) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 + KEY `a` (`a`(1000)) KEY_BLOCK_SIZE=8192 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a int not null, key `a` (a) key_block_size=1025); show create table t1; @@ -31,7 +31,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, KEY `a` (`a`) KEY_BLOCK_SIZE=8192 -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; create table t1 (a int not null, key key_block_size=1024 (a)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=1024 (a))' at line 1 @@ -87,14 +87,14 @@ show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 TRANSACTIONAL=0 drop table t1; create table t1 (a int) row_format=dynamic transactional=0; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC TRANSACTIONAL=0 drop table t1; create table t1 (a int) row_format=dynamic transactional=1; Warnings: @@ -103,13 +103,13 @@ show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1 alter table t1 row_format=PAGE; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1 alter table t1 row_format=DYNAMIC; Warnings: Note 1478 Row format set to PAGE because of TRANSACTIONAL=1 option @@ -117,46 +117,46 @@ show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1 alter table t1 transactional=0; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC TRANSACTIONAL=0 alter table t1 row_format=DYNAMIC; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC TRANSACTIONAL=0 drop table t1; create table t1 (a int) row_format=PAGE; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE drop table t1; create table t1 (a int) row_format=PAGE TRANSACTIONAL=DEFAULT; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE alter table t1 row_format=DYNAMIC; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=DYNAMIC drop table t1; create table t1 (a int) transactional=0 row_format=FIXED; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED TRANSACTIONAL=0 alter table t1 transactional=1; Warnings: Note 1478 Row format set to PAGE because of TRANSACTIONAL=1 option @@ -164,20 +164,20 @@ show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1 alter table t1 transactional=0; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED TRANSACTIONAL=0 drop table t1; create table t1 (a int) transactional=0 row_format=FIXED; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED TRANSACTIONAL=0 alter table t1 transactional=1; Warnings: Note 1478 Row format set to PAGE because of TRANSACTIONAL=1 option @@ -185,20 +185,20 @@ show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=PAGE TRANSACTIONAL=1 alter table t1 transactional=0; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED TRANSACTIONAL=0 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 ROW_FORMAT=FIXED TRANSACTIONAL=0 drop table t1; create table `t1` ( t1_name varchar(255) default null, t1_id int(10) unsigned not null auto_increment, key (t1_name), primary key (t1_id) -) engine=maria auto_increment = 1000 default charset=latin1; +) engine=aria auto_increment = 1000 default charset=latin1; lock tables t1 write; INSERT INTO `t1` VALUES ('bla',1000),('bla',1001),('bla',1002); check table t1; @@ -226,7 +226,7 @@ check table t1; Table Op Msg_type Msg_text test.t1 check status OK drop table t1; -CREATE TABLE t1 (a int, b int, v varchar(60000)) checksum=1 engine=maria; +CREATE TABLE t1 (a int, b int, v varchar(60000)) checksum=1 engine=aria; insert into t1 values (1,1,"aaa"),(1,2,null); checksum table t1; Table Checksum @@ -278,9 +278,9 @@ KEY (umedium), KEY (ulong), KEY (ulonglong,ulong), KEY (options,flags) -) engine=maria; +) engine=aria; insert into t1 values (10,1,1,1,1,1,1,1,1,1,1,1,1,1,NULL,0,0,0,1,1,1,1,'one','one'); -create table t2 (primary key (auto)) engine=maria row_format=page select auto+1 as auto,1 as t1, 'a' as t2, repeat('a',256) as t3, binary repeat('b',256) as t4, repeat('a',4096) as t5, binary repeat('b',4096) as t6, '' as t7, binary '' as t8 from t1; +create table t2 (primary key (auto)) engine=aria row_format=page select auto+1 as auto,1 as t1, 'a' as t2, repeat('a',256) as t3, binary repeat('b',256) as t4, repeat('a',4096) as t5, binary repeat('b',4096) as t6, '' as t7, binary '' as t8 from t1; check table t1,t2; Table Op Msg_type Msg_text test.t1 check status OK @@ -289,7 +289,7 @@ select t1,t2,length(t3),length(t4),length(t5),length(t6),t7,t8 from t2; t1 t2 length(t3) length(t4) length(t5) length(t6) t7 t8 1 a 256 256 4096 4096 drop table t2; -create table t2 (primary key (auto)) engine=maria row_format=dynamic select auto+1 as auto,1 as t1, 'a' as t2, repeat('a',256) as t3, binary repeat('b',256) as t4, repeat('a',4096) as t5, binary repeat('b',4096) as t6, '' as t7, binary '' as t8 from t1; +create table t2 (primary key (auto)) engine=aria row_format=dynamic select auto+1 as auto,1 as t1, 'a' as t2, repeat('a',256) as t3, binary repeat('b',256) as t4, repeat('a',4096) as t5, binary repeat('b',4096) as t6, '' as t7, binary '' as t8 from t1; check table t2; Table Op Msg_type Msg_text test.t2 check status OK @@ -301,32 +301,36 @@ check table t1 extended; Table Op Msg_type Msg_text test.t1 check status OK drop table t1; -select lower(variable_name) as Variable_name, Variable_value as Value from information_schema.session_variables where variable_name like "maria%" and variable_name not like "maria_used_for_temp_tables" order by 1; +select lower(variable_name) as Variable_name, Variable_value as Value from information_schema.session_variables where variable_name like "aria%" and variable_name not like "aria_used_for_temp_tables" order by 1; Variable_name Value -maria_block_size 8192 -maria_checkpoint_interval 30 -maria_force_start_after_recovery_failures 0 -maria_log_file_size 4294959104 -maria_log_purge_type immediate -maria_max_sort_file_size 9223372036853727232 -maria_pagecache_age_threshold 300 -maria_pagecache_buffer_size 134213632 -maria_pagecache_division_limit 100 -maria_page_checksum OFF -maria_recover NORMAL -maria_repair_threads 1 -maria_sort_buffer_size 134217728 -maria_stats_method nulls_unequal -maria_sync_log_dir NEWFILE -show status like 'maria%'; +aria_block_size 8192 +aria_checkpoint_interval 30 +aria_checkpoint_log_activity 1048576 +aria_force_start_after_recovery_failures 0 +aria_group_commit none +aria_group_commit_interval 0 +aria_log_file_size 4294959104 +aria_log_purge_type immediate +aria_max_sort_file_size 9223372036853727232 +aria_pagecache_age_threshold 300 +aria_pagecache_buffer_size 134213632 +aria_pagecache_division_limit 100 +aria_page_checksum OFF +aria_recover NORMAL +aria_repair_threads 1 +aria_sort_buffer_size 134217728 +aria_stats_method nulls_unequal +aria_sync_log_dir NEWFILE +show status like 'aria%'; Variable_name Value -Maria_pagecache_blocks_not_flushed # -Maria_pagecache_blocks_unused # -Maria_pagecache_blocks_used # -Maria_pagecache_read_requests # -Maria_pagecache_reads # -Maria_pagecache_write_requests # -Maria_pagecache_writes # +Aria_pagecache_blocks_not_flushed # +Aria_pagecache_blocks_unused # +Aria_pagecache_blocks_used # +Aria_pagecache_read_requests # +Aria_pagecache_reads # +Aria_pagecache_write_requests # +Aria_pagecache_writes # +Aria_transaction_log_syncs # create table t1 (b char(0)); insert into t1 values(NULL),(""); select length(b) from t1; @@ -382,15 +386,16 @@ drop table t1; CREATE TABLE t1 (col1 int, s1 char(16) DEFAULT NULL, s2 char(16) DEFAULT NULL, KEY (s1,s2)); insert into t1 (col1) values(0); drop table t1; -set global maria_page_checksum=1; +set global aria_page_checksum=1; create table t1 (a int); show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +set global aria_page_checksum=0; drop table t1; -set global maria_log_file_size=4294967296; +set global aria_log_file_size=4294967296; Warnings: Warning 1292 Truncated incorrect log_file_size value: '4294967296' create table t1 (a int not null); @@ -412,7 +417,7 @@ create table t3 select * from t1, t2; ERROR 42S21: Duplicate column name 'c' create table t3 select t1.c AS c1, t2.c AS c2,1 as "const" from t1, t2; drop table t1, t2, t3; -create table t1 (t datetime) engine=maria; +create table t1 (t datetime) engine=aria; insert into t1 values (101),(691231),(700101),(991231),(10000101),(99991231),(101000000),(691231000000),(700101000000),(991231235959),(10000101000000),(99991231235959),(20030100000000),(20030000000000); select * from t1; t @@ -497,38 +502,38 @@ n c 301 c 302 d drop table t1; -create table t1 (n int not null, c char(1)) engine=maria; +create table t1 (n int not null, c char(1)) engine=aria; alter table t1 engine=myisam; -alter table t1 engine=maria; +alter table t1 engine=aria; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `n` int(11) NOT NULL, `c` char(1) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 drop table t1; -create table t1 (n int not null, c char(1)) engine=maria transactional=1; +create table t1 (n int not null, c char(1)) engine=aria transactional=1; alter table t1 engine=myisam; Warnings: Error 1478 Table storage engine 'MyISAM' does not support the create option 'TRANSACTIONAL=1' -alter table t1 engine=maria; +alter table t1 engine=aria; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `n` int(11) NOT NULL, `c` char(1) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 TRANSACTIONAL=1 drop table t1; create table t1 (n int not null, c char(1)) engine=myisam transactional=1; Warnings: Error 1478 Table storage engine 'MyISAM' does not support the create option 'TRANSACTIONAL=1' -alter table t1 engine=maria; +alter table t1 engine=aria; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `n` int(11) NOT NULL, `c` char(1) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=0 TRANSACTIONAL=1 drop table t1; create table t1 (a int, key(a)) transactional=0; insert into t1 values (0),(1),(2),(3),(4); @@ -600,17 +605,17 @@ SELECT a FROM t1 WHERE MATCH a AGAINST ('+city (of)*' IN BOOLEAN MODE); a City Of God DROP TABLE t1; -create table t1(a int) engine=maria transactional=1; +create table t1(a int) engine=aria transactional=1; select CREATE_OPTIONS from information_schema.TABLES where TABLE_SCHEMA='test' and TABLE_NAME='t1'; CREATE_OPTIONS transactional=1 drop table t1; -create table t1 (a int, unique(a)) engine=maria transactional=1; +create table t1 (a int, unique(a)) engine=aria transactional=1; insert into t1 values(1); insert into t1 values(2),(2); ERROR 23000: Duplicate entry '2' for key 'a' -create table t2 (a int, unique(a)) engine=maria transactional=0 row_format=dynamic; +create table t2 (a int, unique(a)) engine=aria transactional=0 row_format=dynamic; insert into t2 values(1); insert into t2 values(2),(2); ERROR 23000: Duplicate entry '2' for key 'a' @@ -641,3 +646,4 @@ a b c d e f g h i j 1 A B C D 1 M H 2 Abcdefghi E F G 2 N H drop table t1,t2; +# End of 5.1 tests diff --git a/mysql-test/suite/maria/r/maria_notembedded.result b/mysql-test/suite/maria/r/maria_notembedded.result index 77325d24421..f9d8bbfedc8 100644 --- a/mysql-test/suite/maria/r/maria_notembedded.result +++ b/mysql-test/suite/maria/r/maria_notembedded.result @@ -1,4 +1,4 @@ -set session storage_engine=maria; +set session storage_engine=aria; create table t1 (a int) row_format=page; insert delayed into t1 values(1); ERROR HY000: DELAYED option not supported for table 't1' diff --git a/mysql-test/suite/maria/r/maria_partition.result b/mysql-test/suite/maria/r/maria_partition.result index e501af7ec4a..372230c0b71 100644 --- a/mysql-test/suite/maria/r/maria_partition.result +++ b/mysql-test/suite/maria/r/maria_partition.result @@ -1,6 +1,6 @@ -set global storage_engine=maria; -set session storage_engine=maria; -set global maria_page_checksum=0; +set global storage_engine=aria; +set session storage_engine=aria; +set global aria_page_checksum=0; drop table if exists t1,t2; drop view if exists v1; SET SQL_WARNINGS=1; @@ -9,8 +9,8 @@ insert into t1 values (1); alter table t1 partition by list (s1) (partition p1 values in (2)); ERROR HY000: Table has no partition for value 1 drop table t1; -create table t2(a blob) engine=maria; -create table t1(a int primary key) engine=maria; +create table t2(a blob) engine=aria; +create table t1(a int primary key) engine=aria; insert into t2 values ('foo'),('bar'); select * from t2 left join t1 on (t2.a=t1.a) where t2.a='bbb'; a a diff --git a/mysql-test/suite/maria/r/maria_showlog_error.result b/mysql-test/suite/maria/r/maria_showlog_error.result index b27b4a5b21c..e2434efec28 100644 --- a/mysql-test/suite/maria/r/maria_showlog_error.result +++ b/mysql-test/suite/maria/r/maria_showlog_error.result @@ -1,5 +1,5 @@ * shut down mysqld, removed logs, restarted it -show engine maria logs; +show engine aria logs; Type Name Status -MARIA Size unknown ; maria_log.00000001 can't stat +Aria Size unknown ; aria_log.00000001 can't stat * shut down mysqld, removed logs, restarted it diff --git a/mysql-test/suite/maria/r/max_length.result b/mysql-test/suite/maria/r/max_length.result index 668ba01bba5..6db58622698 100644 --- a/mysql-test/suite/maria/r/max_length.result +++ b/mysql-test/suite/maria/r/max_length.result @@ -7,8 +7,8 @@ create table t2 (id int(10) unsigned not null auto_increment primary key, v varc lock tables t1 write,t2 write; show table status like "t_"; Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment -t1 MARIA 10 Page 0 0 8192 268320768 8192 0 1 # # # latin1_swedish_ci NULL max_rows=2 row_format=PAGE -t2 MARIA 10 Page 0 0 8192 17592186011648 8192 0 1 # # # latin1_swedish_ci NULL max_rows=20000000 row_format=PAGE +t1 Aria 10 Page 0 0 8192 268320768 8192 0 1 # # # latin1_swedish_ci NULL max_rows=2 row_format=PAGE +t2 Aria 10 Page 0 0 8192 17592186011648 8192 0 1 # # # latin1_swedish_ci NULL max_rows=20000000 row_format=PAGE insert into t1 values(null, repeat("ab",100),repeat("def",1000)); insert into t1 values(null, repeat("de",200),repeat("ghi",2000)); insert into t1 values(null, repeat("fe",300),repeat("ghi",3000)); diff --git a/mysql-test/suite/maria/r/ps_maria.result b/mysql-test/suite/maria/r/ps_maria.result index c4dfe826b4d..04c14f9c1e4 100644 --- a/mysql-test/suite/maria/r/ps_maria.result +++ b/mysql-test/suite/maria/r/ps_maria.result @@ -4,7 +4,7 @@ create table t1 ( a int, b varchar(30), primary key(a) -) engine = 'MARIA' ; +) engine = 'ARIA' ; create table t9 ( c1 tinyint, c2 smallint, c3 mediumint, c4 int, @@ -17,7 +17,7 @@ c25 blob, c26 text, c27 mediumblob, c28 mediumtext, c29 longblob, c30 longtext, c31 enum('one', 'two', 'three'), c32 set('monday', 'tuesday', 'wednesday'), primary key(c1) -) engine = 'MARIA' ; +) engine = 'ARIA' ; delete from t1 ; insert into t1 values (1,'one'); insert into t1 values (2,'two'); @@ -1166,7 +1166,7 @@ id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t9 ALL NULL NULL NULL NULL 2 drop table if exists t2 ; create table t2 (s varchar(25), fulltext(s)) TRANSACTIONAL= 0 -ENGINE = 'MARIA' ; +ENGINE = 'ARIA' ; insert into t2 values ('Gravedigger'), ('Greed'),('Hollow Dogs') ; commit ; prepare stmt1 from ' select s from t2 where match (s) against (?) ' ; @@ -1352,7 +1352,7 @@ create table t2 ( a int, b varchar(30), primary key(a) -) engine = 'MARIA' ; +) engine = 'ARIA' ; insert into t2(a,b) select a, b from t1 ; prepare stmt1 from 'update t1 set a=? where b=? and a in (select ? from t2 @@ -1542,7 +1542,7 @@ execute stmt1 using @arg00, @arg01; ERROR 23000: Duplicate entry '82' for key 'PRIMARY' drop table if exists t2 ; create table t2 (id int auto_increment primary key) -ENGINE= 'MARIA' ; +ENGINE= 'ARIA' ; prepare stmt1 from ' select last_insert_id() ' ; insert into t2 values (NULL) ; execute stmt1 ; diff --git a/mysql-test/suite/maria/r/small_blocksize.result b/mysql-test/suite/maria/r/small_blocksize.result new file mode 100644 index 00000000000..f418a1f92ef --- /dev/null +++ b/mysql-test/suite/maria/r/small_blocksize.result @@ -0,0 +1,33 @@ +DROP TABLE if exists t1; +Warnings: +Note 1051 Unknown table 't1' +CREATE TABLE t1 (col_longtext_ucs2 longtext, col_longtext_utf8 longtext, col_varchar_255_ucs2_key varchar(255), col_set_utf8 set ('a','b'), col_char_255_ucs2 char(255), col_char_255_ucs2_key char(255), col_enum_ucs2 enum ('a','b'), col_varchar_255_ucs2 varchar(255), col_longtext_ucs2_key longtext, col_longtext_utf8_key longtext, col_enum_utf8 enum ('a','b'), col_varchar_255_utf8_key varchar(1024), col_varchar_255_utf8 varchar(255), col_enum_ucs2_key enum ('a','b'), col_enum_utf8_key enum ('a','b'), col_set_utf8_key set ('a','b'), col_char_255_utf8 char(255), pk integer auto_increment, col_set_ucs2_key set ('a','b'), col_char_255_utf8_key char(255), col_set_ucs2 set ('a','b'), primary key (pk)) ENGINE=aria; +INSERT INTO t1 ( col_char_255_utf8, col_varchar_255_utf8_key, col_longtext_utf8_key ) VALUES ( 'lggnqojgqectqlkvskffihliqcwoakzzzjvhkqlwjybkngdbubskflpmzegdrk', REPEAT( 'a', 627 ), 'mlggnqojgqectqlkvskffihliqcwoakzzzjvhkqlwjybkngdbubskflpmzegdrklnipcmzbtwdqfnyinqfohgtiwmvfpbuslgobjhslxnaybcyebhsrlipnuvalhmvhlwbwujtvjsdrbyapfzprnxfgtrukwhywtkaoupsaogxsjxhqjkidvnpeytjgndtnrrbm' ); +UPDATE t1 SET col_varchar_255_utf8 = REPEAT('a', 197 ); +UPDATE t1 SET col_char_255_utf8 = 'bmjihzjtxegprqfvmczyzbavjuozkyxrlxvqyzcfvsjrhcccqnecyohzhzbgsbqkqvzmtlhtlcgzheirkyfwczoolilkrfimfnuoapyylbghdhdgfebjjajfoigagozypqtrflrvdiwfgqalsqbmlllsanvtuuutiaastqtbzeoaawl'; +check table t1; +Table Op Msg_type Msg_text +test.t1 check status OK +drop table t1; +create table t1 (a int primary key auto_increment, e1 enum('a','b'), e2 enum('a','b'), vl int, bl int, c char(10), v1 varchar(10000), v2 varchar(10000), b1 blob, b2 blob) engine=aria; +insert into t1 (vl,bl) values (10,10),(100,100),(1000,1000),(5000,5000),(8000,12000); +update t1 set c="test", v1=repeat('a',vl),v2=repeat('b',vl/2),b1=repeat('c',bl),b2=repeat('d',bl); +insert into t1 (vl,bl) values (10,10),(100,100),(1000,1000),(1000,5000); +update t1 set c="test", v1=repeat('a',vl/4),v2=repeat('b',vl/5),b1=repeat('c',bl*2),b2=repeat('d',bl/2); +insert into t1 (vl,bl) values (100,100); +update t1 set c="test", v1=repeat('a',vl),v2=repeat('b',vl),b1=repeat('c',bl*2),b2=repeat('d',bl/2); +update t1 set c="test", v1=repeat('a',vl/2),v2=repeat('b',vl/2),b1=repeat('c',bl/2),b2=repeat('d',bl/2); +update t1 set c="test", v1=repeat('a',vl/4),v2=repeat('b',vl/4),b1=repeat('c',bl/4),b2=repeat('d',bl/4); +update t1 set c="test", v1=repeat('a',vl/20),v2=repeat('b',vl),b1=repeat('c',bl/20),b2=repeat('d',bl/20); +insert into t1 (vl,bl) values (100,100); +update t1 set c="test", v1=repeat('a',vl/100),b1=repeat('c',bl/100); +insert into t1 (vl,bl) values (100,100); +update t1 set c="test", v1=repeat('a',vl),b1=repeat('c',bl); +insert into t1 (vl,bl) values (100,100); +update t1 set c="test", v1=repeat('a',10),v2=repeat('b',10); +insert into t1 (vl,bl) values (100,100); +update t1 set c="test", v1=repeat('a',2000),v2=repeat('b',2000); +check table t1; +Table Op Msg_type Msg_text +test.t1 check status OK +drop table t1; diff --git a/mysql-test/suite/maria/suite.pm b/mysql-test/suite/maria/suite.pm new file mode 100644 index 00000000000..3176782404b --- /dev/null +++ b/mysql-test/suite/maria/suite.pm @@ -0,0 +1,8 @@ +package My::Suite::Maria; + +@ISA = qw(My::Suite); + +return "Need Aria engine" unless $::mysqld_variables{'aria-block-size'} > 0; + +bless { }; + diff --git a/mysql-test/suite/maria/t/compat_aliases-master.opt b/mysql-test/suite/maria/t/compat_aliases-master.opt new file mode 100644 index 00000000000..a1dcde828cd --- /dev/null +++ b/mysql-test/suite/maria/t/compat_aliases-master.opt @@ -0,0 +1 @@ +--maria-max-sort-file-size=100M --aria-repair-threads=100 diff --git a/mysql-test/suite/maria/t/compat_aliases.test b/mysql-test/suite/maria/t/compat_aliases.test new file mode 100644 index 00000000000..7b94d24e643 --- /dev/null +++ b/mysql-test/suite/maria/t/compat_aliases.test @@ -0,0 +1,59 @@ +# +# test for maria* aliases (system variables, status variables, +# command-line options). They should match aria* variables. +# + +--replace_column 5 # +select * from information_schema.plugins where plugin_name like '%aria'; + +select maria_vars.variable_name, aria_vars.variable_name from + information_schema.session_variables as maria_vars left join + information_schema.session_variables as aria_vars + on (maria_vars.variable_name = concat('m', aria_vars.variable_name)) + where maria_vars.variable_name like 'maria_%' + and not (maria_vars.variable_value <=> aria_vars.variable_value); + +select maria_vars.variable_name, aria_vars.variable_name from + information_schema.session_status as maria_vars left join + information_schema.session_status as aria_vars + on (maria_vars.variable_name = concat('m', aria_vars.variable_name)) + where maria_vars.variable_name like 'maria_%' + and not (maria_vars.variable_value <=> aria_vars.variable_value); + +select maria_vars.variable_name, aria_vars.variable_name from + information_schema.session_variables as aria_vars left join + information_schema.session_variables as maria_vars + on (maria_vars.variable_name = concat('m', aria_vars.variable_name)) + where aria_vars.variable_name like 'aria_%' + and not (maria_vars.variable_value <=> aria_vars.variable_value); + +select maria_vars.variable_name, aria_vars.variable_name from + information_schema.session_status as aria_vars left join + information_schema.session_status as maria_vars + on (maria_vars.variable_name = concat('m', aria_vars.variable_name)) + where aria_vars.variable_name like 'aria_%' + and not (maria_vars.variable_value <=> aria_vars.variable_value); + +set @old_checkpoint_interval=@@global.aria_checkpoint_interval; +set global maria_checkpoint_interval=10; +select @@global.aria_checkpoint_interval; +set global maria_checkpoint_interval=@old_checkpoint_interval; + +set @old_sort_buffer_size=@@global.maria_sort_buffer_size; +set global aria_sort_buffer_size=1024; +select @@global.maria_sort_buffer_size; +set global aria_sort_buffer_size=@old_sort_buffer_size; + +set @old_sort_buffer_size=@@session.maria_sort_buffer_size; +set session aria_sort_buffer_size=2048; +select @@session.maria_sort_buffer_size; +set session aria_sort_buffer_size=@old_sort_buffer_size; + +set @old_max_sort_file_size=@@global.maria_max_sort_file_size, + @old_repair_threads=@@global.aria_repair_threads; +set @@global.maria_max_sort_file_size=default, @@global.aria_repair_threads=default; +--replace_result 4293918720 9223372036853727232 +select @@global.maria_max_sort_file_size, @@global.aria_repair_threads; +set @@global.aria_max_sort_file_size=@old_max_sort_file_size, + @@global.maria_repair_threads=@old_repair_threads; + diff --git a/mysql-test/suite/maria/t/group_commit.test b/mysql-test/suite/maria/t/group_commit.test new file mode 100644 index 00000000000..38b2c9d3bf4 --- /dev/null +++ b/mysql-test/suite/maria/t/group_commit.test @@ -0,0 +1,72 @@ +# Test different ways of syncing (mostly syntax) +--source include/have_maria.inc + +--disable_warnings +drop table if exists t1; +--enable_warnings + +create table t1 (a int); + +SET GLOBAL aria_group_commit="NONE"; +SET GLOBAL aria_group_commit_interval= 0; +--disable_query_log +let $num = 5000; +while ($num) +{ + insert into t1 values (1); + dec $num; +} +--enable_query_log +SET GLOBAL aria_group_commit="NONE"; +SET GLOBAL aria_group_commit_interval= 100; +--disable_query_log +let $num = 5000; +while ($num) +{ + insert into t1 values (1); + dec $num; +} +--enable_query_log +SET GLOBAL aria_group_commit="HARD"; +SET GLOBAL aria_group_commit_interval= 0; +--disable_query_log +let $num = 5000; +while ($num) +{ + insert into t1 values (1); + dec $num; +} +--enable_query_log +SET GLOBAL aria_group_commit="HARD"; +SET GLOBAL aria_group_commit_interval= 100; +--disable_query_log +let $num = 5000; +while ($num) +{ + insert into t1 values (1); + dec $num; +} +--enable_query_log +SET GLOBAL aria_group_commit="SOFT"; +SET GLOBAL aria_group_commit_interval= 0; +--disable_query_log +let $num = 5000; +while ($num) +{ + insert into t1 values (1); + dec $num; +} +--enable_query_log +SET GLOBAL aria_group_commit="SOFT"; +SET GLOBAL aria_group_commit_interval= 100; +--disable_query_log +let $num = 5000; +while ($num) +{ + insert into t1 values (1); + dec $num; +} +--enable_query_log +SET GLOBAL aria_group_commit="NONE"; +SET GLOBAL aria_group_commit_interval= 0; +drop table t1; diff --git a/mysql-test/suite/maria/t/maria-autozerofill.test b/mysql-test/suite/maria/t/maria-autozerofill.test index 79e209d5d90..dfdedc220aa 100644 --- a/mysql-test/suite/maria/t/maria-autozerofill.test +++ b/mysql-test/suite/maria/t/maria-autozerofill.test @@ -1,5 +1,5 @@ # Test to verify that auto-zerofilling happens when a table is -# imported from a different Maria instance +# imported from a different Aria instance # can't restart in embedded --source include/not_embedded.inc @@ -23,13 +23,13 @@ use mysqltest; --enable_reconnect # Create some tables for future tests -create table t1(a int) engine=maria; +create table t1(a int) engine=aria; insert into t1 values(1); -create table t2 (a int) engine=maria; +create table t2 (a int) engine=aria; INSERT INTO t2 VALUES (1),(2); -create table t3 (a int) engine=maria; +create table t3 (a int) engine=aria; INSERT INTO t3 VALUES (1),(2); -create table t4 (a int) engine=maria; +create table t4 (a int) engine=aria; INSERT INTO t4 VALUES (1),(2); create table t5 (a int) engine=maria; INSERT INTO t5 VALUES (1),(2); @@ -37,11 +37,11 @@ flush tables; # Check that table is not zerofilled, not movable let $MYSQLD_DATADIR= `select @@datadir`; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/mysqltest/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/mysqltest/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= <FILE>; print grep(/Status:.*(zerofilled|movable)/, @content); @@ -49,12 +49,12 @@ perl; close FILE; EOF -# this will remove control file, so change the uuid of the Maria +# this will remove control file, so change the uuid of the Aria # instance, thus t1 will appear as imported from elsewhere. -- source include/maria_empty_logs.inc -disable_ps_protocol; # see maria-recover.test +disable_ps_protocol; # see aria-recover.test replace_regex /Table.*t1/t1/ ; replace_result \\ /; select * from t1; @@ -62,11 +62,11 @@ enable_ps_protocol; flush table t1; # Check that table is auto-zerofilled, movable ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/mysqltest/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/mysqltest/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= <FILE>; print grep(/Status:.*zerofilled/, @content); @@ -74,16 +74,16 @@ perl; close FILE; EOF -# this will attach t1 to the current Maria instance +# this will attach t1 to the current Aria instance insert into t1 values(2); flush table t1; # Check that table is not zerofilled, not movable ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/mysqltest/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/mysqltest/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= <FILE>; print grep(/Status:.*(zerofilled|movable)/, @content); diff --git a/mysql-test/suite/maria/t/maria-big.test b/mysql-test/suite/maria/t/maria-big.test index 612cdbabb81..5b4b6c4defe 100644 --- a/mysql-test/suite/maria/t/maria-big.test +++ b/mysql-test/suite/maria/t/maria-big.test @@ -9,7 +9,7 @@ connect (root,localhost,root,,test,$MASTER_MYPORT,$MASTER_MYSOCK); connection root; enable_info; -set storage_engine=maria; +set storage_engine=aria; disable_warnings; drop table if exists t1, t2; enable_warnings; @@ -68,7 +68,7 @@ drop table t1; # Set defaults back --disable_result_log --disable_query_log -set global maria_log_file_size=default; +set global aria_log_file_size=default; set global max_allowed_packet=default; --enable_result_log --enable_query_log diff --git a/mysql-test/suite/maria/t/maria-big2.test b/mysql-test/suite/maria/t/maria-big2.test index 867ce71d4b5..d138892fe3c 100644 --- a/mysql-test/suite/maria/t/maria-big2.test +++ b/mysql-test/suite/maria/t/maria-big2.test @@ -5,7 +5,7 @@ # (CHECK TABLE said Invalid key block position: 15731098820608 key # block size: 8192 file_length: 425984) -create table t2(id int,a varchar(255),b varchar(255),key(a))engine=maria row_format=dynamic transactional=0; +create table t2(id int,a varchar(255),b varchar(255),key(a))engine=aria row_format=dynamic transactional=0; disable_query_log; insert into t2(a,b) values ('zmysnptvgzljpaumbdhrzkmbhefugcyhncbl','urecietrsfhgusavxffpdszrfcpdqbwxzvygsuwammwunjhpxanvozwnngnnjbwfenjgosaixpccjyviiutzpxkwiecuprltzrpxvkrjnjqgsneniewbagpvwelajvnckbbkqpaicxor') diff --git a/mysql-test/suite/maria/t/maria-connect.test b/mysql-test/suite/maria/t/maria-connect.test index 31b15b1f8f1..9efb5844bc2 100644 --- a/mysql-test/suite/maria/t/maria-connect.test +++ b/mysql-test/suite/maria/t/maria-connect.test @@ -6,8 +6,8 @@ -- source include/have_log_bin.inc let $default=`select @@global.storage_engine`; -set global storage_engine=maria; -set session storage_engine=maria; +set global storage_engine=aria; +set session storage_engine=aria; # Initialise --disable_warnings @@ -18,7 +18,7 @@ SET SQL_WARNINGS=1; # # UNIQUE key test # -# as long as maria cannot rollback, binlog should contain both inserts +# as long as aria cannot rollback, binlog should contain both inserts # RESET MASTER; set binlog_format=statement; @@ -36,6 +36,6 @@ set binlog_format=default; --disable_result_log --disable_query_log eval set global storage_engine=$default; -set global maria_log_file_size=default; +set global aria_log_file_size=default; --enable_result_log --enable_query_log diff --git a/mysql-test/suite/maria/t/maria-gis-rtree-dynamic.test b/mysql-test/suite/maria/t/maria-gis-rtree-dynamic.test index 228998c01c3..166c88cab36 100644 --- a/mysql-test/suite/maria/t/maria-gis-rtree-dynamic.test +++ b/mysql-test/suite/maria/t/maria-gis-rtree-dynamic.test @@ -1,7 +1,7 @@ -- source include/have_maria.inc -- source include/have_geometry.inc -set storage_engine=maria; +set storage_engine=aria; # # test of rtree (using with spatial data) diff --git a/mysql-test/suite/maria/t/maria-gis-rtree-trans.test b/mysql-test/suite/maria/t/maria-gis-rtree-trans.test index f530699c755..ec1573c3e29 100644 --- a/mysql-test/suite/maria/t/maria-gis-rtree-trans.test +++ b/mysql-test/suite/maria/t/maria-gis-rtree-trans.test @@ -1,10 +1,10 @@ # Because state.key_root is updated differently between transactional -# and non-trans tables, we have several maria-gis-rtree-* tests. +# and non-trans tables, we have several aria-gis-rtree-* tests. -- source include/have_maria.inc -- source include/have_geometry.inc -set storage_engine=maria; +set storage_engine=aria; # # test of rtree (using with spatial data) diff --git a/mysql-test/suite/maria/t/maria-gis-rtree.test b/mysql-test/suite/maria/t/maria-gis-rtree.test index 7a3e5634388..beffbfc99fe 100644 --- a/mysql-test/suite/maria/t/maria-gis-rtree.test +++ b/mysql-test/suite/maria/t/maria-gis-rtree.test @@ -1,7 +1,7 @@ -- source include/have_maria.inc -- source include/have_geometry.inc -set storage_engine=maria; +set storage_engine=aria; # # test of rtree (using with spatial data) diff --git a/mysql-test/suite/maria/t/maria-mvcc.test b/mysql-test/suite/maria/t/maria-mvcc.test index 4b6f8a3996d..8be8e2ea630 100644 --- a/mysql-test/suite/maria/t/maria-mvcc.test +++ b/mysql-test/suite/maria/t/maria-mvcc.test @@ -4,7 +4,7 @@ # -- source include/have_maria.inc -set global maria_page_checksum=1; +set global aria_page_checksum=1; --disable_warnings drop table if exists t1; @@ -13,7 +13,7 @@ drop table if exists t1; connect (con1,localhost,root,,); connection con1; -create table t1 (i int) engine=maria; +create table t1 (i int) engine=aria; show create table t1; # versioning is disabled when table is empty, so insert a row @@ -94,7 +94,7 @@ drop table t1; # Test count(*) for not versioned tables # -CREATE TABLE t1 (fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, g GEOMETRY NOT NULL, SPATIAL KEY(g) ) transactional=1 row_format=page engine=maria; +CREATE TABLE t1 (fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, g GEOMETRY NOT NULL, SPATIAL KEY(g) ) transactional=1 row_format=page engine=aria; lock tables t1 write concurrent, t1 as t2 write concurrent; insert into t1 (fid,g) values (NULL,GeomFromText('LineString(0 0,1 1)')); diff --git a/mysql-test/suite/maria/t/maria-no-logging.test b/mysql-test/suite/maria/t/maria-no-logging.test index bca99848250..f0533686588 100644 --- a/mysql-test/suite/maria/t/maria-no-logging.test +++ b/mysql-test/suite/maria/t/maria-no-logging.test @@ -4,7 +4,7 @@ # can't restart server in embedded --source include/not_embedded.inc -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; --disable_warnings drop database if exists mysqltest; @@ -19,8 +19,8 @@ use mysqltest; --enable_reconnect # checkpoints can make log unrepeatable -let $def_checkinterval=`select @@global.maria_checkpoint_interval`; -set global maria_checkpoint_interval=0; +let $def_checkinterval=`select @@global.aria_checkpoint_interval`; +set global aria_checkpoint_interval=0; # Prepare table to help for big load create table t2 (a varchar(100)) engine=myisam; @@ -36,24 +36,24 @@ insert into t2 select * from t2; # no optimization because table not empty -# SHOW ENGINE MARIA LOGS could be influenced by older logs +# SHOW ENGINE ARIA LOGS could be influenced by older logs -- source include/maria_empty_logs.inc -create table t1 (a varchar(100)) engine=maria transactional=1; +create table t1 (a varchar(100)) engine=aria transactional=1; show create table t1; ---replace_regex /; .+maria_log/maria_log/ -show engine maria logs; +--replace_regex /; .+aria_log/aria_log/ +show engine aria logs; insert into t1 values('a'); insert into t1 select * from t2; ---replace_regex /; .+maria_log/maria_log/ -show engine maria logs; +--replace_regex /; .+aria_log/aria_log/ +show engine aria logs; # optimization because table is empty -- source include/maria_empty_logs.inc truncate table t1; insert into t1 select * from t2; ---replace_regex /; .+maria_log/maria_log/ -show engine maria logs; +--replace_regex /; .+aria_log/aria_log/ +show engine aria logs; drop table t1; @@ -61,23 +61,23 @@ drop table t1; # no optimization because table not empty -- source include/maria_empty_logs.inc -create table t1 (a varchar(100)) engine=maria transactional=1; +create table t1 (a varchar(100)) engine=aria transactional=1; insert into t1 values('a'); create table if not exists t1 select * from t2; ---replace_regex /; .+maria_log/maria_log/ -show engine maria logs; +--replace_regex /; .+aria_log/aria_log/ +show engine aria logs; # optimization because table is empty -- source include/maria_empty_logs.inc drop table t1; -create table t1 engine=maria transactional=1 select * from t2; ---replace_regex /; .+maria_log/maria_log/ -show engine maria logs; +create table t1 engine=aria transactional=1 select * from t2; +--replace_regex /; .+aria_log/aria_log/ +show engine aria logs; drop database mysqltest; --disable_result_log --disable_query_log -eval set global maria_checkpoint_interval=$def_checkinterval; +eval set global aria_checkpoint_interval=$def_checkinterval; --enable_result_log --enable_query_log diff --git a/mysql-test/suite/maria/t/maria-page-checksum.test b/mysql-test/suite/maria/t/maria-page-checksum.test index 9b05b00a371..8dd68fce245 100644 --- a/mysql-test/suite/maria/t/maria-page-checksum.test +++ b/mysql-test/suite/maria/t/maria-page-checksum.test @@ -1,4 +1,4 @@ -# Tests for two bugs related to ALTER TABLE and maria-specific alter +# Tests for two bugs related to ALTER TABLE and aria-specific alter # options (PAGE_CHECKSUM and TRANSACTIONAL). -- source include/have_maria.inc @@ -13,34 +13,34 @@ drop table if exists t1; let $MYSQLD_DATADIR= `select @@datadir`; -select @@global.maria_page_checksum; +select @@global.aria_page_checksum; # we scan through combinations in the cartesian product of -# (first value of maria_page_checksum) x (clauses in CREATE TABLE) x -# (second value of maria_page_checksum) x (clauses in ALTER TABLE). +# (first value of aria_page_checksum) x (clauses in CREATE TABLE) x +# (second value of aria_page_checksum) x (clauses in ALTER TABLE). --echo # iteration 1 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -49,27 +49,27 @@ EOF drop table t1; --echo # iteration 2 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -78,27 +78,27 @@ EOF drop table t1; --echo # iteration 3 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -107,27 +107,27 @@ EOF drop table t1; --echo # iteration 4 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -136,27 +136,27 @@ EOF drop table t1; --echo # iteration 5 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -165,27 +165,27 @@ EOF drop table t1; --echo # iteration 6 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -194,27 +194,27 @@ EOF drop table t1; --echo # iteration 7 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -223,27 +223,27 @@ EOF drop table t1; --echo # iteration 8 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -252,27 +252,27 @@ EOF drop table t1; --echo # iteration 9 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -281,27 +281,27 @@ EOF drop table t1; --echo # iteration 10 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -310,27 +310,27 @@ EOF drop table t1; --echo # iteration 11 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -339,27 +339,27 @@ EOF drop table t1; --echo # iteration 12 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -368,27 +368,27 @@ EOF drop table t1; --echo # iteration 13 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -397,27 +397,27 @@ EOF drop table t1; --echo # iteration 14 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -426,27 +426,27 @@ EOF drop table t1; --echo # iteration 15 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -455,27 +455,27 @@ EOF drop table t1; --echo # iteration 16 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -484,27 +484,27 @@ EOF drop table t1; --echo # iteration 17 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -513,27 +513,27 @@ EOF drop table t1; --echo # iteration 18 -set global maria_page_checksum = 0 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 0 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -542,27 +542,27 @@ EOF drop table t1; --echo # iteration 19 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -571,27 +571,27 @@ EOF drop table t1; --echo # iteration 20 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -600,27 +600,27 @@ EOF drop table t1; --echo # iteration 21 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -629,27 +629,27 @@ EOF drop table t1; --echo # iteration 22 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -658,27 +658,27 @@ EOF drop table t1; --echo # iteration 23 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -687,27 +687,27 @@ EOF drop table t1; --echo # iteration 24 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -716,27 +716,27 @@ EOF drop table t1; --echo # iteration 25 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -745,27 +745,27 @@ EOF drop table t1; --echo # iteration 26 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -774,27 +774,27 @@ EOF drop table t1; --echo # iteration 27 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -803,27 +803,27 @@ EOF drop table t1; --echo # iteration 28 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -832,27 +832,27 @@ EOF drop table t1; --echo # iteration 29 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -861,27 +861,27 @@ EOF drop table t1; --echo # iteration 30 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=0 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -890,27 +890,27 @@ EOF drop table t1; --echo # iteration 31 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 0 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -919,27 +919,27 @@ EOF drop table t1; --echo # iteration 32 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -948,27 +948,27 @@ EOF drop table t1; --echo # iteration 33 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 0 ; +set global aria_page_checksum = 0 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -977,27 +977,27 @@ EOF drop table t1; --echo # iteration 34 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; -alter table t1 engine=maria ; +set global aria_page_checksum = 1 ; +alter table t1 engine=aria ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -1006,27 +1006,27 @@ EOF drop table t1; --echo # iteration 35 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=0 ; show create table t1 /* expecting PAGE_CHECKSUM=0 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -1035,27 +1035,27 @@ EOF drop table t1; --echo # iteration 36 -set global maria_page_checksum = 1 ; -create table t1(a int) engine=maria PAGE_CHECKSUM=1 ; +set global aria_page_checksum = 1 ; +create table t1(a int) engine=aria PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; close FILE; EOF -set global maria_page_checksum = 1 ; +set global aria_page_checksum = 1 ; alter table t1 PAGE_CHECKSUM=1 ; show create table t1 /* expecting PAGE_CHECKSUM=1 */ ; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; my @content= grep(/Page checksums are used/, <FILE>); print @content ? $content[0] : "Page checksums are not used\n"; @@ -1065,20 +1065,20 @@ drop table t1; # # Test for BUG#37005 -# "Maria: ALTER TABLE TRANSACTIONAL=0 leaves table transactional inside Maria" +# "Aria: ALTER TABLE TRANSACTIONAL=0 leaves table transactional inside Aria" # # we scan through combinations in the cartesian product of # (clauses in CREATE TABLE) x (clauses in ALTER TABLE). --echo # iteration 1 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1086,11 +1086,11 @@ EOF alter table t1 modify a bigint ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1099,13 +1099,13 @@ drop table t1; --echo # iteration 2 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1113,11 +1113,11 @@ EOF alter table t1 transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1126,13 +1126,13 @@ drop table t1; --echo # iteration 3 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1140,11 +1140,11 @@ EOF alter table t1 transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1153,25 +1153,25 @@ drop table t1; --echo # iteration 4 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; EOF -alter table t1 engine=maria ; +alter table t1 engine=aria ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1180,25 +1180,25 @@ drop table t1; --echo # iteration 5 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; EOF -alter table t1 engine=maria transactional=0 ; +alter table t1 engine=aria transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1207,25 +1207,25 @@ drop table t1; --echo # iteration 6 -create table t1(a int) engine=maria ; +create table t1(a int) engine=aria ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; EOF -alter table t1 engine=maria transactional=1 ; +alter table t1 engine=aria transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1234,13 +1234,13 @@ drop table t1; --echo # iteration 7 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1248,11 +1248,11 @@ EOF alter table t1 modify a bigint ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1261,13 +1261,13 @@ drop table t1; --echo # iteration 8 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1275,11 +1275,11 @@ EOF alter table t1 transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1288,13 +1288,13 @@ drop table t1; --echo # iteration 9 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1302,11 +1302,11 @@ EOF alter table t1 transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1315,25 +1315,25 @@ drop table t1; --echo # iteration 10 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; EOF -alter table t1 engine=maria ; +alter table t1 engine=aria ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1342,25 +1342,25 @@ drop table t1; --echo # iteration 11 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; EOF -alter table t1 engine=maria transactional=0 ; +alter table t1 engine=aria transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1369,25 +1369,25 @@ drop table t1; --echo # iteration 12 -create table t1(a int) engine=maria transactional=0 ; +create table t1(a int) engine=aria transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; EOF -alter table t1 engine=maria transactional=1 ; +alter table t1 engine=aria transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1396,13 +1396,13 @@ drop table t1; --echo # iteration 13 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1410,11 +1410,11 @@ EOF alter table t1 modify a bigint ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1423,13 +1423,13 @@ drop table t1; --echo # iteration 14 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1437,11 +1437,11 @@ EOF alter table t1 transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1450,13 +1450,13 @@ drop table t1; --echo # iteration 15 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1464,11 +1464,11 @@ EOF alter table t1 transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1477,25 +1477,25 @@ drop table t1; --echo # iteration 16 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; EOF -alter table t1 engine=maria ; +alter table t1 engine=aria ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1504,25 +1504,25 @@ drop table t1; --echo # iteration 17 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; EOF -alter table t1 engine=maria transactional=0 ; +alter table t1 engine=aria transactional=0 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; @@ -1531,25 +1531,25 @@ drop table t1; --echo # iteration 18 -create table t1(a int) engine=maria transactional=1 ; +create table t1(a int) engine=aria transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; EOF -alter table t1 engine=maria transactional=1 ; +alter table t1 engine=aria transactional=1 ; show create table t1; ---exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/mariachk.txt +--exec $MARIA_CHK -dv $MYSQLD_DATADIR/test/t1 >$MYSQLTEST_VARDIR/tmp/ariachk.txt perl; use strict; use warnings; - my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/mariachk.txt"; + my $fname= "$ENV{'MYSQLTEST_VARDIR'}/tmp/ariachk.txt"; open(FILE, "<", $fname) or die; print grep(/Crashsafe/, <FILE>); close FILE; diff --git a/mysql-test/suite/maria/t/maria-partitioning.test b/mysql-test/suite/maria/t/maria-partitioning.test index 589b489331d..612c44be57e 100644 --- a/mysql-test/suite/maria/t/maria-partitioning.test +++ b/mysql-test/suite/maria/t/maria-partitioning.test @@ -1,21 +1,21 @@ # -# Testing of potential problems in Maria with partitioning +# Testing of potential problems in Aria with partitioning # --source include/have_maria.inc --source include/have_partition.inc let $default_engine=`select @@global.storage_engine`; -let $default_checksum=`select @@global.maria_page_checksum`; -set global storage_engine=maria; -set session storage_engine=maria; +let $default_checksum=`select @@global.aria_page_checksum`; +set global storage_engine=aria; +set session storage_engine=aria; # # Test outer join const propagation # DROP TABLE if exists t1,t2; -create table t2(a blob) engine=maria; -create table t1(a int primary key) engine=maria; +create table t2(a blob) engine=aria; +create table t1(a int primary key) engine=aria; insert into t2 values ('foo'),('bar'); select * from t2 left join t1 on (t2.a=t1.a) where t2.a='bbb'; insert into t1 values (1); @@ -24,8 +24,8 @@ insert into t1 values (2); select * from t2 left join t1 on (t2.a=t1.a) where t2.a='bbb'; drop table t1,t2; -create table t2(a blob) engine= maria; -create table t1(a int primary key) engine= maria PARTITION BY HASH (a) PARTITIONS 2; +create table t2(a blob) engine= aria; +create table t1(a int primary key) engine= aria PARTITION BY HASH (a) PARTITIONS 2; insert into t2 values ('foo'),('bar'); select * from t2 left join t1 on (t2.a=t1.a) where t2.a='bbb'; insert into t1 values (1); diff --git a/mysql-test/suite/maria/t/maria-preload.test b/mysql-test/suite/maria/t/maria-preload.test index 5012ca64f31..efac10ecbec 100644 --- a/mysql-test/suite/maria/t/maria-preload.test +++ b/mysql-test/suite/maria/t/maria-preload.test @@ -11,15 +11,15 @@ drop table if exists t1, t2; --enable_warnings # Background dirty pages flushing may influence page cache stats: -let $def_checkinterval=`select @@global.maria_checkpoint_interval`; -set global maria_checkpoint_interval=0; +let $def_checkinterval=`select @@global.aria_checkpoint_interval`; +set global aria_checkpoint_interval=0; # Work around BUG#34911 "FLUSH STATUS doesn't flush what it should": # compute differences in status variables before and after relevant -# queries. Maria_pagecache_read_requests varies accross machines. +# queries. Aria_pagecache_read_requests varies accross machines. create temporary table initial select variable_name,variable_value from -information_schema.global_status where variable_name like "Maria_pagecache_reads"; +information_schema.global_status where variable_name like "Aria_pagecache_reads"; # we don't use block-format because we want page cache stats # about indices and not data pages. @@ -29,14 +29,14 @@ create table t1 ( b char(16) not null, primary key (a), key (b) -) engine=maria row_format=dynamic; +) engine=aria row_format=dynamic; create table t2( a int not null auto_increment, b char(16) not null, primary key (a), key (b) -) engine=maria row_format=dynamic; +) engine=aria row_format=dynamic; insert into t1(b) values ('test0'), @@ -71,7 +71,7 @@ select count(*) from t1; select count(*) from t2; flush tables; flush status; -let $show_stat=select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Maria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; +let $show_stat=select g.variable_name,g.variable_value-i.variable_value from information_schema.global_status as g,initial as i where g.variable_name like "Aria_pagecache_read%" and g.variable_name=i.variable_name order by g.variable_name desc; eval $show_stat; select count(*) from t1 where b = 'test1'; eval $show_stat; @@ -116,11 +116,11 @@ eval $show_stat; drop table t1, t2; drop temporary table initial; -# check that Maria didn't use key cache +# check that Aria didn't use key cache show status like "key_read%"; --disable_result_log --disable_query_log -eval set global maria_checkpoint_interval=$def_checkinterval; +eval set global aria_checkpoint_interval=$def_checkinterval; --enable_result_log --enable_query_log diff --git a/mysql-test/suite/maria/t/maria-purge.test b/mysql-test/suite/maria/t/maria-purge.test index 0aa720543f6..c38a58bc492 100644 --- a/mysql-test/suite/maria/t/maria-purge.test +++ b/mysql-test/suite/maria/t/maria-purge.test @@ -2,7 +2,7 @@ -- source include/big_test.inc -- source include/not_embedded.inc -# pre-requisites for maria_empty_logs +# pre-requisites for aria_empty_logs connect (admin, localhost, root,,test,,); # --enable_reconnect @@ -10,18 +10,18 @@ connection default; --enable_reconnect # end of pre-requisites -# SHOW ENGINE MARIA LOGS could be influenced by older logs +# SHOW ENGINE ARIA LOGS could be influenced by older logs # Also, possibly automatic checkpoints (see if that happens in # practice) -- source include/maria_empty_logs.inc let $default=`select @@global.storage_engine`; -set global storage_engine=maria; -set session storage_engine=maria; -let $def_logsize=`select @@global.maria_log_file_size`; -let $def_checkinterval=`select @@global.maria_checkpoint_interval`; +set global storage_engine=aria; +set session storage_engine=aria; +let $def_logsize=`select @@global.aria_log_file_size`; +let $def_checkinterval=`select @@global.aria_checkpoint_interval`; -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; # Initialise --disable_warnings drop table if exists t1,t2; @@ -61,58 +61,58 @@ insert into t1 select * from t2; insert into t2 select * from t1; insert into t1 select * from t2; -set global maria_log_file_size=16777216; +set global aria_log_file_size=16777216; # force a checkpoint to allow log purge -eval set global maria_checkpoint_interval=$def_checkinterval; ---replace_regex /Size +[0-9]+ ; .+maria_log/maria_log/ -SHOW ENGINE maria logs; +eval set global aria_checkpoint_interval=$def_checkinterval; +--replace_regex /Size +[0-9]+ ; .+aria_log/aria_log/ +SHOW ENGINE aria logs; insert into t2 select * from t1; insert into t1 select * from t2; -eval set global maria_checkpoint_interval=$def_checkinterval; ---replace_regex /Size +[0-9]+ ; .+maria_log/maria_log/ -SHOW ENGINE maria logs; -set global maria_log_file_size=16777216; -select @@global.maria_log_file_size; -eval set global maria_checkpoint_interval=$def_checkinterval; ---replace_regex /Size +[0-9]+ ; .+maria_log/maria_log/ -SHOW ENGINE maria logs; -set global maria_log_file_size=8388608; -select @@global.maria_log_file_size; +eval set global aria_checkpoint_interval=$def_checkinterval; +--replace_regex /Size +[0-9]+ ; .+aria_log/aria_log/ +SHOW ENGINE aria logs; +set global aria_log_file_size=16777216; +select @@global.aria_log_file_size; +eval set global aria_checkpoint_interval=$def_checkinterval; +--replace_regex /Size +[0-9]+ ; .+aria_log/aria_log/ +SHOW ENGINE aria logs; +set global aria_log_file_size=8388608; +select @@global.aria_log_file_size; -set global maria_log_purge_type=at_flush; +set global aria_log_purge_type=at_flush; insert into t1 select * from t2; -eval set global maria_checkpoint_interval=$def_checkinterval; ---replace_regex /Size +[0-9]+ ; .+maria_log/maria_log/ -SHOW ENGINE maria logs; +eval set global aria_checkpoint_interval=$def_checkinterval; +--replace_regex /Size +[0-9]+ ; .+aria_log/aria_log/ +SHOW ENGINE aria logs; flush logs; ---replace_regex /Size +[0-9]+ ; .+maria_log/maria_log/ -SHOW ENGINE maria logs; +--replace_regex /Size +[0-9]+ ; .+aria_log/aria_log/ +SHOW ENGINE aria logs; -set global maria_log_file_size=16777216; -set global maria_log_purge_type=external; +set global aria_log_file_size=16777216; +set global aria_log_purge_type=external; insert into t1 select * from t2; -eval set global maria_checkpoint_interval=$def_checkinterval; ---replace_regex /Size +[0-9]+ ; .+maria_log/maria_log/ -SHOW ENGINE maria logs; +eval set global aria_checkpoint_interval=$def_checkinterval; +--replace_regex /Size +[0-9]+ ; .+aria_log/aria_log/ +SHOW ENGINE aria logs; flush logs; ---replace_regex /Size +[0-9]+ ; .+maria_log/maria_log/ -SHOW ENGINE maria logs; +--replace_regex /Size +[0-9]+ ; .+aria_log/aria_log/ +SHOW ENGINE aria logs; -set global maria_log_purge_type=immediate; +set global aria_log_purge_type=immediate; insert into t1 select * from t2; -eval set global maria_checkpoint_interval=$def_checkinterval; ---replace_regex /Size +[0-9]+ ; .+maria_log/maria_log/ -SHOW ENGINE maria logs; +eval set global aria_checkpoint_interval=$def_checkinterval; +--replace_regex /Size +[0-9]+ ; .+aria_log/aria_log/ +SHOW ENGINE aria logs; drop table t1, t2; --disable_result_log --disable_query_log -set global maria_log_purge_type=immediate; +set global aria_log_purge_type=immediate; eval set global storage_engine=$default; -eval set global maria_log_file_size=$def_logsize; -eval set global maria_checkpoint_interval=$def_checkinterval; +eval set global aria_log_file_size=$def_logsize; +eval set global aria_checkpoint_interval=$def_checkinterval; --enable_result_log --enable_query_log diff --git a/mysql-test/suite/maria/t/maria-recover-master.opt b/mysql-test/suite/maria/t/maria-recover-master.opt index 0cdefeadf3d..7582a381a32 100644 --- a/mysql-test/suite/maria/t/maria-recover-master.opt +++ b/mysql-test/suite/maria/t/maria-recover-master.opt @@ -1 +1 @@ ---loose-maria-recover=backup --loose-maria-log-dir-path=$MYSQLTEST_VARDIR/tmp +--loose-aria-recover=backup --loose-aria-log-dir-path=$MYSQLTEST_VARDIR/tmp diff --git a/mysql-test/suite/maria/t/maria-recover.test b/mysql-test/suite/maria/t/maria-recover.test index 4db02fcbb45..29b05879967 100644 --- a/mysql-test/suite/maria/t/maria-recover.test +++ b/mysql-test/suite/maria/t/maria-recover.test @@ -1,4 +1,4 @@ -# Test of the --maria-recover option. +# Test of the --aria-recover option. --source include/have_maria.inc @@ -18,13 +18,13 @@ let $def_checkinterval=`select @@global.maria_checkpoint_interval`; # so that the perl code below can access it. let MYSQLD_DATADIR= `select @@datadir`; -select @@global.maria_recover; -set global maria_recover=off; -select @@global.maria_recover; -set global maria_recover=default; -select @@global.maria_recover; -set global maria_recover=normal; -select @@global.maria_recover; +select @@global.aria_recover; +set global aria_recover=off; +select @@global.aria_recover; +set global aria_recover=default; +select @@global.aria_recover; +set global aria_recover=normal; +select @@global.aria_recover; --disable_warnings drop database if exists mysqltest; @@ -33,7 +33,7 @@ create database mysqltest; use mysqltest; -create table t1 (a varchar(1000), index(a)) engine=maria; +create table t1 (a varchar(1000), index(a)) engine=aria; insert into t1 values("ThursdayMorningsMarket"); flush table t1; # put index page on disk @@ -53,7 +53,7 @@ copy_file $MYSQLD_DATADIR/mysqltest/t1.MAD $MYSQLD_DATADIR/mysqltest/t_corrupted copy_file $MYSQLD_DATADIR/mysqltest/t1.MAI $MYSQLD_DATADIR/mysqltest/t_corrupted2.MAI; # Ruin the index file. -# If maria-block-size is smaller than the default, the corruption +# If aria-block-size is smaller than the default, the corruption # messages will differ. perl; use strict; @@ -72,5 +72,5 @@ select * from t_corrupted2; # should show corruption and repair messages select * from t_corrupted2; # should show just rows drop database mysqltest; -set global maria_recover=backup; -eval set global maria_checkpoint_interval=$def_checkinterval; +set global aria_recover=backup; +eval set global aria_checkpoint_interval=$def_checkinterval; diff --git a/mysql-test/suite/maria/t/maria-recovery-big.test b/mysql-test/suite/maria/t/maria-recovery-big.test index 4de8f934ec1..7a9a56c67ea 100644 --- a/mysql-test/suite/maria/t/maria-recovery-big.test +++ b/mysql-test/suite/maria/t/maria-recovery-big.test @@ -1,4 +1,4 @@ -# Maria recovery test which cannot run in shared memory +# Aria recovery test which cannot run in shared memory # because it generates too much data, or which takes a lot of time. --source include/not_embedded.inc @@ -9,7 +9,7 @@ --source include/have_maria.inc --source include/big_test.inc -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; --disable_warnings drop database if exists mysqltest; @@ -33,7 +33,7 @@ use mysqltest; --echo * TEST of recovery with blobs -- source include/maria_empty_logs.inc -create table t1 (a int, b longtext) engine=maria table_checksum=1; +create table t1 (a int, b longtext) engine=aria table_checksum=1; let $mms_tables=1; -- source include/maria_make_snapshot_for_feeding_recovery.inc insert into t1 values (1,"123456789012345678901234567890"),(2,"09876543210987654321"); @@ -57,7 +57,7 @@ select a,length(b) from t1; let $mvr_restore_old_snapshot=1; let $mms_compare_physically=0; let $mvr_debug_option="+d,maria_flush_whole_log,maria_crash"; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; -- source include/maria_verify_recovery.inc drop table t1; diff --git a/mysql-test/suite/maria/t/maria-recovery-bitmap.test b/mysql-test/suite/maria/t/maria-recovery-bitmap.test index f6b6583e9df..856785a04a8 100644 --- a/mysql-test/suite/maria/t/maria-recovery-bitmap.test +++ b/mysql-test/suite/maria/t/maria-recovery-bitmap.test @@ -1,4 +1,4 @@ -# Tests of Maria's recovery of the bitmap pages +# Tests of Aria's recovery of the bitmap pages --source include/not_embedded.inc # Don't test this under valgrind, memory leaks will occur as we crash @@ -25,14 +25,14 @@ use mysqltest; -- source include/maria_empty_logs.inc let $mms_tables=1; -create table t1 (a varchar(10000)) engine=maria; +create table t1 (a varchar(10000)) engine=aria; # we want recovery to use the tables as they were at time of crash let $mvr_restore_old_snapshot=0; # UNDO phase prevents physical comparison, normally, # so we'll only use checksums to compare. let $mms_compare_physically=0; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; --echo * TEST of over-allocated bitmap not flushed by checkpoint let $mvr_debug_option="+d,maria_crash"; @@ -45,7 +45,7 @@ insert into t1 values ("bbbbbbb"); insert into t1 values ("bbbbbbb"); delete from t1 limit 1; # Use a separate connection here. The reason is that we leave a dangling -# --send on the connection during maria_verify_recovery.inc, which makes that +# --send on the connection during aria_verify_recovery.inc, which makes that # script fail if it were to try to use that connection before --reap. connect (extra, localhost, root,,mysqltest,,); set session debug="+d,info,enter,exit,maria_over_alloc_bitmap"; @@ -59,7 +59,7 @@ sleep 5; # bitmap page; as REDO-UNDO was not written, bitmap and data page # would be inconsistent. Correct checkpoint will wait until UNDO is # written. -set global maria_checkpoint_interval=1; +set global aria_checkpoint_interval=1; -- source include/maria_verify_recovery.inc connection default; diff --git a/mysql-test/suite/maria/t/maria-recovery-master.opt b/mysql-test/suite/maria/t/maria-recovery-master.opt index 9023fb74e8b..58d0d012c54 100644 --- a/mysql-test/suite/maria/t/maria-recovery-master.opt +++ b/mysql-test/suite/maria/t/maria-recovery-master.opt @@ -1 +1 @@ ---skip-stack-trace --skip-core-file --loose-maria-log-dir-path=$MYSQLTEST_VARDIR/tmp +--skip-stack-trace --skip-core-file --loose-aria-log-dir-path=$MYSQLTEST_VARDIR/tmp diff --git a/mysql-test/suite/maria/t/maria-recovery-rtree-ft.test b/mysql-test/suite/maria/t/maria-recovery-rtree-ft.test index ac71be376f1..01ab5740258 100644 --- a/mysql-test/suite/maria/t/maria-recovery-rtree-ft.test +++ b/mysql-test/suite/maria/t/maria-recovery-rtree-ft.test @@ -8,7 +8,7 @@ --source include/have_maria.inc --source include/long_test.inc -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; let $MARIA_LOG=.; --disable_warnings @@ -35,10 +35,10 @@ CREATE TABLE t1 ( kind ENUM('po', 'pp', 'rr', 'dr', 'rd', 'ts', 'cl') NOT NULL DEFAULT 'po', name VARCHAR(32) ,SPATIAL key (line) -) transactional=1 row_format=page engine=maria; +) transactional=1 row_format=page engine=aria; SHOW INDEX FROM t1; CREATE TABLE t2 (a VARCHAR(200), b TEXT, FULLTEXT (a,b) -) transactional=1 row_format=page engine=maria; +) transactional=1 row_format=page engine=aria; SHOW INDEX FROM t2; let $query1= INSERT INTO t1 (name, kind, line) VALUES @@ -114,7 +114,7 @@ while($1) let $mvr_restore_old_snapshot=1; let $mms_compare_physically=0; let $mvr_debug_option="+d,maria_flush_whole_log,maria_crash"; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; # the script below will trigger recovery and compare checksums -- source include/maria_verify_recovery.inc @@ -133,7 +133,7 @@ let $mvr_restore_old_snapshot=0; # UNDO phase prevents physical comparison, normally, # so we'll only use checksums to compare. let $mms_compare_physically=0; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; # Note that we don't remove logs between iterations. Test is # cumulative (each new recovery processes more log records than the previous). diff --git a/mysql-test/suite/maria/t/maria-recovery.test b/mysql-test/suite/maria/t/maria-recovery.test index 6ba8e65e658..6eb91c59dc1 100644 --- a/mysql-test/suite/maria/t/maria-recovery.test +++ b/mysql-test/suite/maria/t/maria-recovery.test @@ -5,7 +5,7 @@ --source include/have_debug.inc --source include/have_maria.inc -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; let $MARIA_LOG=../../tmp; --disable_warnings @@ -27,7 +27,7 @@ use mysqltest; # A sample test -- source include/maria_empty_logs.inc let $mms_tables=1; -create table t1 (a varchar(1000)) engine=maria; +create table t1 (a varchar(1000)) engine=aria; --echo * TEST of REDO: see if recovery can reconstruct if we give it an old table @@ -42,7 +42,7 @@ let $mvr_restore_old_snapshot=1; # produce a physically identical table. let $mms_compare_physically=1; let $mvr_debug_option="+d,maria_flush_whole_log,maria_crash"; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; # the script below will trigger recovery and compare checksums -- source include/maria_verify_recovery.inc let $mms_compare_physically=0; @@ -63,7 +63,7 @@ let $mvr_restore_old_snapshot=0; # UNDO phase prevents physical comparison, normally, # so we'll only use checksums to compare. let $mms_compare_physically=0; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; # Note that we don't remove logs between iterations. Test is # cumulative (each new recovery processes more log records than the previous). @@ -131,7 +131,7 @@ CREATE TABLE t1 ( i int, b blob default NULL, c varchar(6000) default NULL -) ENGINE=MARIA CHECKSUM=1; +) ENGINE=ARIA CHECKSUM=1; -- source include/maria_make_snapshot_for_feeding_recovery.inc INSERT INTO t1 VALUES (1, REPEAT('a', 5000), REPEAT('b', 5000)); UPDATE t1 SET i=3, b=CONCAT(b,'c') WHERE i=1; @@ -141,7 +141,7 @@ SELECT LENGTH(b) FROM t1 WHERE i=3; let $mvr_restore_old_snapshot=1; let $mms_compare_physically=0; let $mvr_debug_option="+d,maria_flush_whole_log,maria_crash"; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; -- source include/maria_verify_recovery.inc SELECT LENGTH(b) FROM t1 WHERE i=3; drop table t1; @@ -154,7 +154,7 @@ CREATE TABLE t1 ( i int auto_increment primary key, c varchar(6), key(c) -) ENGINE=MARIA; +) ENGINE=ARIA; insert into t1 values(null,"b"); -- source include/maria_make_snapshot_for_feeding_recovery.inc insert into t1 values(null,"a"), (null,"c"), (null,"d"); @@ -164,7 +164,7 @@ delete from t1 where c="d"; let $mvr_restore_old_snapshot=1; let $mms_compare_physically=0; let $mvr_debug_option="+d,maria_flush_whole_log,maria_crash"; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; -- source include/maria_verify_recovery.inc show create table t1; @@ -176,7 +176,7 @@ update t1 set i=15 where c="a"; let $mvr_restore_old_snapshot=1; let $mms_compare_physically=0; let $mvr_debug_option="+d,maria_flush_whole_log,maria_crash"; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; -- source include/maria_verify_recovery.inc show create table t1; @@ -187,7 +187,7 @@ show create table t1; let $mvr_restore_old_snapshot=0; let $mms_compare_physically=0; let $mvr_debug_option="+d,maria_flush_whole_log,maria_crash"; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; lock tables t1 write; insert into t1 values(null, "e"); -- source include/maria_verify_recovery.inc diff --git a/mysql-test/suite/maria/t/maria-recovery2-master.opt b/mysql-test/suite/maria/t/maria-recovery2-master.opt index 36b4216a4b4..9b232472a24 100644 --- a/mysql-test/suite/maria/t/maria-recovery2-master.opt +++ b/mysql-test/suite/maria/t/maria-recovery2-master.opt @@ -1 +1 @@ ---skip-stack-trace --skip-core-file --loose-maria-log-dir-path=$MYSQLTEST_VARDIR/tmp --myisam-recover= +--skip-stack-trace --skip-core-file --loose-aria-log-dir-path=$MYSQLTEST_VARDIR/tmp --myisam-recover= diff --git a/mysql-test/suite/maria/t/maria-recovery2.test b/mysql-test/suite/maria/t/maria-recovery2.test index 017256a5ec8..81ea45fbd42 100644 --- a/mysql-test/suite/maria/t/maria-recovery2.test +++ b/mysql-test/suite/maria/t/maria-recovery2.test @@ -5,10 +5,10 @@ --source include/have_debug.inc --source include/have_maria.inc -call mtr.add_suppression("File '.*maria_log.000.*' not found \\(Errcode: 2\\)"); -call mtr.add_suppression("Table '.\/mysqltest\/t_corrupted1' is crashed, skipping it. Please repair it with maria_chk -r"); +call mtr.add_suppression("File '.*aria_log.000.*' not found \\(Errcode: 2\\)"); +call mtr.add_suppression("Table '.\/mysqltest\/t_corrupted1' is crashed, skipping it. Please repair it with aria_chk -r"); -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; let $MARIA_LOG=../../tmp; --disable_warnings @@ -31,13 +31,13 @@ let $mms_tables=1; let $mvr_restore_old_snapshot=0; let $mms_compare_physically=0; let $mvr_debug_option="+d,maria_flush_whole_log,maria_crash"; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; # Test of removing logs manually --echo * TEST of removing logs manually let $mel_keep_control_file=1; # this will shut mysqld down cleanly (so, take a checkpoint) and -# remove only logs; at restart Maria will create a new log with a high +# remove only logs; at restart Aria will create a new log with a high # number -- source include/maria_empty_logs.inc let $mel_keep_control_file=0; @@ -49,8 +49,8 @@ let $mvr_restore_old_snapshot=0; # UNDO phase prevents physical comparison, normally, # so we'll only use checksums to compare. let $mms_compare_physically=0; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; -create table t1(a int) engine=maria; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; +create table t1(a int) engine=aria; insert into t1 values(1),(2); -- source include/maria_make_snapshot_for_comparison.inc lock tables t1 write; @@ -64,8 +64,8 @@ drop table t1; # Don't take a full checkpoints, we want to test checkpoint vs dirty pages set global debug="+d,info,query,enter,exit,loop,maria_checkpoint_indirect"; # restart checkpoint thread for it to notice the above -set global maria_checkpoint_interval=10000; -create table t1(a int, b varchar(10), index(a,b)) engine=maria; +set global aria_checkpoint_interval=10000; +create table t1(a int, b varchar(10), index(a,b)) engine=aria; insert into t1 values(1,"a"),(2,"b"),(3,"c"); delete from t1 where b="b"; update t1 set b="d" where a=1; @@ -74,15 +74,15 @@ lock tables t1 write; insert into t1 values(4,"e"),(5,"f"),(6,"g"); update t1 set b="h" where a=5; delete from t1 where b="g"; -show status like "Maria_pagecache_blocks_not_flushed"; +show status like "Aria_pagecache_blocks_not_flushed"; # force a checkpoint; there should be dirty pages and an open transaction -set global maria_checkpoint_interval=10000; +set global aria_checkpoint_interval=10000; # do some more work update t1 set b="i" where a=5; let $mvr_restore_old_snapshot=0; let $mms_compare_physically=0; let $mvr_debug_option="+d,maria_crash"; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; # Now we have a recovery, which should use the checkpoint record # and its dirty pages list. -- source include/maria_verify_recovery.inc @@ -90,10 +90,10 @@ drop table t1; --echo Test of REPAIR's implicit commit let $mms_tables=1; -create table t1 (a varchar(100), key(a)) engine=maria; +create table t1 (a varchar(100), key(a)) engine=aria; let $mvr_restore_old_snapshot=0; let $mms_compare_physically=0; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; let $mvr_debug_option="+d,maria_flush_whole_log,maria_flush_whole_page_cache,maria_crash"; insert into t1 values(3); @@ -111,11 +111,11 @@ select * from t1; drop table t1; --echo * TEST of recovery when crash before bulk-insert-with-repair is committed -create table t1 (a varchar(100), key(a)) engine=maria; +create table t1 (a varchar(100), key(a)) engine=aria; create table t2 (a varchar(100)) engine=myisam; let $mvr_restore_old_snapshot=0; let $mms_compare_physically=0; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; let $mvr_debug_option="+d,maria_flush_whole_log,maria_flush_whole_page_cache,maria_crash"; set rand_seed1=12, rand_seed2=254; # repeatable insert into t2 values (rand()); @@ -136,7 +136,7 @@ show keys from t1; # should be enabled drop table t1; --echo * TEST of recovery when OPTIMIZE has replaced the index file and crash -create table t_corrupted1 (a varchar(100), key(a)) engine=maria; +create table t_corrupted1 (a varchar(100), key(a)) engine=aria; # we use a special name because this test portion will generate # corruption warnings, which we tell mtr_report.pl to ignore by # putting the message in mtr_report.pl, but we don't want to it ignore diff --git a/mysql-test/suite/maria/t/maria-recovery3-master.opt b/mysql-test/suite/maria/t/maria-recovery3-master.opt index 9023fb74e8b..58d0d012c54 100644 --- a/mysql-test/suite/maria/t/maria-recovery3-master.opt +++ b/mysql-test/suite/maria/t/maria-recovery3-master.opt @@ -1 +1 @@ ---skip-stack-trace --skip-core-file --loose-maria-log-dir-path=$MYSQLTEST_VARDIR/tmp +--skip-stack-trace --skip-core-file --loose-aria-log-dir-path=$MYSQLTEST_VARDIR/tmp diff --git a/mysql-test/suite/maria/t/maria-recovery3.test b/mysql-test/suite/maria/t/maria-recovery3.test index a241473f457..c8333a66f30 100644 --- a/mysql-test/suite/maria/t/maria-recovery3.test +++ b/mysql-test/suite/maria/t/maria-recovery3.test @@ -5,7 +5,7 @@ --source include/have_debug.inc --source include/have_maria.inc -set global maria_log_file_size=4294967295; +set global aria_log_file_size=4294967295; let $MARIA_LOG=../../tmp; --disable_warnings @@ -28,7 +28,7 @@ let $mms_tables=1; let $mvr_restore_old_snapshot=0; let $mms_compare_physically=0; let $mvr_debug_option="+d,maria_flush_whole_log,maria_crash"; -let $mvr_crash_statement= set global maria_checkpoint_interval=1; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; -- source include/maria_empty_logs.inc @@ -39,7 +39,7 @@ let $mvr_restore_old_snapshot=0; # UNDO phase prevents physical comparison, normally, # so we'll only use checksums to compare. let $mms_compare_physically=0; -create table t1(a int primary key) engine=maria; +create table t1(a int primary key) engine=aria; insert into t1 values(1); -- source include/maria_make_snapshot_for_comparison.inc set session debug="+d,maria_sleep_in_commit"; @@ -49,7 +49,7 @@ sleep 1; # but not yet called trnman_commit(), so for checkpoint it's not # committed. connection admin; -set global maria_checkpoint_interval=1000; # force a checkpoint +set global aria_checkpoint_interval=1000; # force a checkpoint connection default; reap; # end of INSERT delete from t1 where a=2; @@ -64,17 +64,17 @@ drop table t1; # before checkpoint happens, test should still pass (though it won't # reproduce the conditions of the bug). -# Test for BUG#41493 Maria: two recovery failures (wrong logging of BLOB pages) +# Test for BUG#41493 Aria: two recovery failures (wrong logging of BLOB pages) --echo * TEST of logging of BLOBs let $mvr_restore_old_snapshot=1; let $mms_compare_physically=1; CREATE TABLE `t1` ( `blob` blob, `blob_key` blob -) ENGINE=maria ROW_FORMAT=page +) ENGINE=aria ROW_FORMAT=page ; -- source include/maria_make_snapshot_for_feeding_recovery.inc -set global maria_checkpoint_interval=0; # no checkpoints +set global aria_checkpoint_interval=0; # no checkpoints INSERT INTO `t1` VALUES (NULL,repeat('A',5198)); INSERT INTO `t1` VALUES (NULL,repeat('B',65535)); INSERT INTO `t1` VALUES (repeat('K',5198),repeat('L',2325)); @@ -88,14 +88,14 @@ check table t1 extended; -- source include/maria_verify_recovery.inc drop table t1; -# Test for BUG#42112 "Maria: recovery failure (pushbuild2) Assertion +# Test for BUG#42112 "Aria: recovery failure (pushbuild2) Assertion # `rownr == 0 && new_page' failed" let $mvr_restore_old_snapshot=0; let $mms_compare_physically=0; -create table t1 engine=maria select 1; +create table t1 engine=aria select 1; -- source include/maria_make_snapshot_for_feeding_recovery.inc -set global maria_checkpoint_interval=0; # no checkpoints +set global aria_checkpoint_interval=0; # no checkpoints insert into t1 values(2); truncate table t1; -- source include/maria_make_snapshot_for_comparison.inc @@ -109,6 +109,24 @@ truncate table t1; check table t1 extended; drop table t1; +# +# Test for BUG#887051; Failure in recovery with delete +# + +let $mvr_restore_old_snapshot=0; +let $mms_compare_physically=0; +let $mvr_debug_option="+d,maria_flush_whole_log,maria_crash"; +let $mvr_crash_statement= set global aria_checkpoint_interval=1; +CREATE TABLE t1 ( word VARCHAR(255) PRIMARY KEY ) ENGINE=Aria; +LOAD DATA INFILE '../../std_data/bug887051.txt' INTO TABLE t1; +SET AUTOCOMMIT=0; +DELETE FROM t1; +LOAD DATA INFILE '../../std_data/bug887051.txt' INTO TABLE t1 IGNORE 1 LINES; +COMMIT; +-- source include/maria_verify_recovery.inc +select * from t1; +drop table t1; + # clean up everything let $mms_purpose=feeding_recovery; eval drop database mysqltest_for_$mms_purpose; diff --git a/mysql-test/suite/maria/t/maria-ucs2.test b/mysql-test/suite/maria/t/maria-ucs2.test new file mode 100644 index 00000000000..fed67d780e9 --- /dev/null +++ b/mysql-test/suite/maria/t/maria-ucs2.test @@ -0,0 +1,51 @@ +-- source include/have_maria.inc +-- source include/have_ucs2.inc + +select * from INFORMATION_SCHEMA.ENGINES where ENGINE="ARIA"; + +let $default_engine=`select @@global.storage_engine`; +set global storage_engine=aria; +set session storage_engine=aria; + +# Initialise +--disable_warnings +drop table if exists t1; +--enable_warnings +SET SQL_WARNINGS=1; + +# +# bug#905716: Assertion `page->size <= share->max_index_block_size' +# + +CREATE TABLE t1 ( a VARCHAR(800),KEY(a) ) + ENGINE=Aria DEFAULT CHARACTER SET latin1; +INSERT INTO t1 VALUES + (REPEAT('abc ',200)), (REPEAT('def ',200)), + (REPEAT('ghi ',200)), (REPEAT('jkl ',200)); +INSERT INTO t1 SELECT * FROM t1; +# check table is not needed to reproduce the problem, +# but shows that by this time the table appears to be okay. +CHECK TABLE t1; +ALTER TABLE t1 MODIFY a VARCHAR(800) CHARSET `ucs2`; +CHECK TABLE t1; +SHOW CREATE table t1; +DROP TABLE t1; + +# +# BUG#905782 Assertion `pageno < ((1ULL) << 40)' failed at ma_pagecache.c +# Issue was too long key +# + +CREATE TABLE t1 (a VARCHAR(800),KEY(a)) ENGINE=Aria CHARACTER SET ucs2; +INSERT INTO t1 VALUES (REPEAT('abc ',200)); +CHECK TABLE t1; +DROP TABLE t1; + +--echo # End of 5.2 tests + + +--disable_result_log +--disable_query_log +eval set global storage_engine=$default_engine; +--enable_result_log +--enable_query_log diff --git a/mysql-test/suite/maria/t/maria.test b/mysql-test/suite/maria/t/maria.test index 8a370fbd25a..e23821b8be9 100644 --- a/mysql-test/suite/maria/t/maria.test +++ b/mysql-test/suite/maria/t/maria.test @@ -1,20 +1,20 @@ # -# Testing of potential problems in Maria +# Testing of potential problems in Aria # This code was initially taken from myisam.test # -- source include/have_maria.inc -- source include/have_partition.inc -select * from INFORMATION_SCHEMA.ENGINES where ENGINE="MARIA"; +select * from INFORMATION_SCHEMA.ENGINES where ENGINE="ARIA"; let $default_engine=`select @@global.storage_engine`; -let $default_checksum=`select @@global.maria_page_checksum`; -set global storage_engine=maria; -set session storage_engine=maria; -set global maria_page_checksum=0; -let $default_log_file_size=`select @@global.maria_log_file_size`; -set global maria_log_file_size=4294967295; +let $default_checksum=`select @@global.aria_page_checksum`; +set global storage_engine=aria; +set session storage_engine=aria; +set global aria_page_checksum=0; +let $default_log_file_size=`select @@global.aria_log_file_size`; +set global aria_log_file_size=4294967295; # Initialise --disable_warnings @@ -116,7 +116,7 @@ DROP TABLE t1; # # Test of optimize, when only mi_sort_index (but not mi_repair*) is done -# in ha_maria::repair, and index size is changed (decreased). +# in ha_aria::repair, and index size is changed (decreased). # create table t1 ( t1 char(255), key(t1(250))); @@ -154,7 +154,7 @@ check table t1; drop table t1; # -# test of maria with huge number of packed fields +# test of aria with huge number of packed fields # create table t1 (i1 int, i2 int, i3 int, i4 int, i5 int, i6 int, i7 int, i8 @@ -533,7 +533,7 @@ drop table t1; # # Test join that could miss concurrently inserted row -# Note that for the moment Maria only supports multiple writers if we have +# Note that for the moment Aria only supports multiple writers if we have # static or dynamic row format # # Partial key. @@ -664,10 +664,10 @@ checksum table t1; drop table t1; # -# maria_stats_method variable. +# aria_stats_method variable. # -show variables like 'maria_stats_method'; +show variables like 'aria_stats_method'; create table t1 (a int, key(a)); insert into t1 values (0),(1),(2),(3),(4); @@ -682,8 +682,8 @@ check table t1; show index from t1; # Set nulls to be equal: -set maria_stats_method=nulls_equal; -show variables like 'maria_stats_method'; +set aria_stats_method=nulls_equal; +show variables like 'aria_stats_method'; insert into t1 values (11); delete from t1 where a=11; @@ -697,8 +697,8 @@ check table t1; show index from t1; # Set nulls back to be equal -set maria_stats_method=DEFAULT; -show variables like 'maria_stats_method'; +set aria_stats_method=DEFAULT; +show variables like 'aria_stats_method'; insert into t1 values (11); delete from t1 where a=11; @@ -713,9 +713,9 @@ show index from t1; drop table t1; -# WL#2609, CSC#XXXX: MARIA -set maria_stats_method=nulls_ignored; -show variables like 'maria_stats_method'; +# WL#2609, CSC#XXXX: ARIA +set aria_stats_method=nulls_ignored; +show variables like 'aria_stats_method'; create table t1 ( a char(3), b char(4), c char(5), d char(6), @@ -735,7 +735,7 @@ delete from t1; analyze table t1; show index from t1; -set maria_stats_method=DEFAULT; +set aria_stats_method=DEFAULT; drop table t1; @@ -768,7 +768,7 @@ create table t1 ( t text not null, primary key (id1), key x (id2, t(32)) -) engine=maria; # engine clause is redundant but it's to test its parsing +) engine=aria; # engine clause is redundant but it's to test its parsing insert into t1 (id2, t) values (10, 'abc'), (10, 'abc'), (10, 'abc'), (20, 'abc'), (20, 'abc'), (20, 'def'), @@ -801,8 +801,8 @@ DROP TABLE t1; # # OPTIMIZE TABLE with multiple threads # -SET @@maria_repair_threads=2; -SHOW VARIABLES LIKE 'maria_repair%'; +SET @@aria_repair_threads=2; +SHOW VARIABLES LIKE 'aria_repair%'; # # Test OPTIMIZE. This creates a new data file. CREATE TABLE t1 ( @@ -888,8 +888,8 @@ SHOW TABLE STATUS LIKE 't1'; SELECT _id FROM t1; DROP TABLE t1; # -SET @@maria_repair_threads=1; -SHOW VARIABLES LIKE 'maria_repair%'; +SET @@aria_repair_threads=1; +SHOW VARIABLES LIKE 'aria_repair%'; # # Test varchar @@ -910,7 +910,7 @@ create table t1 (v varchar(65530) character set utf8); show create table t1; drop table t1; -# MARIA specific varchar tests +# ARIA specific varchar tests --error 1118 create table t1 (v varchar(65535)); @@ -1040,7 +1040,7 @@ create table t4 (c1 int) pack_keys=2; drop table t1, t2, t3; # -# Bug#28476: force index on a disabled maria index gives error 124 +# Bug#28476: force index on a disabled aria index gives error 124 # CREATE TABLE t1(a INT, b INT, KEY inx (a), UNIQUE KEY uinx (b)); @@ -1078,13 +1078,13 @@ ALTER TABLE t1 ENABLE KEYS; --replace_column 6 # 7 # 8 # 10 # 11 # 12 # 13 # 14 # 15 # 16 # SHOW TABLE STATUS LIKE 't1'; #--exec ls -log var/mysqld.1/data/test/t1 -#--exec maria_chk -dvv var/mysqld.1/data/test/t1 -#--exec maria_chk -iev var/mysqld.1/data/test/t1 +#--exec aria_chk -dvv var/mysqld.1/data/test/t1 +#--exec aria_chk -iev var/mysqld.1/data/test/t1 --echo # Enable keys with parallel repair -SET @@maria_repair_threads=2; +SET @@aria_repair_threads=2; ALTER TABLE t1 DISABLE KEYS; ALTER TABLE t1 ENABLE KEYS; -SET @@maria_repair_threads=1; +SET @@aria_repair_threads=1; CHECK TABLE t1 EXTENDED; DROP TABLE t1; @@ -1108,7 +1108,7 @@ DROP TABLE t1, t2; # # Bug#37310: 'on update CURRENT_TIMESTAMP' option crashes the table # -CREATE TABLE t1 (a INT) ENGINE=MARIA CHECKSUM=1 ROW_FORMAT=DYNAMIC; +CREATE TABLE t1 (a INT) ENGINE=ARIA CHECKSUM=1 ROW_FORMAT=DYNAMIC; INSERT INTO t1 VALUES (0); UPDATE t1 SET a=1; SELECT a FROM t1; @@ -1237,7 +1237,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(130), c2 VARCHAR(1) -) ENGINE=maria; +) ENGINE=aria; INSERT INTO t1 VALUES(REPEAT("a",128), 'b'); SELECT COUNT(*) FROM t1; CHECK TABLE t1; @@ -1252,7 +1252,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(130), c2 VARCHAR(1) -) ENGINE=maria; +) ENGINE=aria; INSERT INTO t1 VALUES(REPEAT("a",128), 'b'); SELECT COUNT(*) FROM t1; CHECK TABLE t1 EXTENDED; @@ -1267,7 +1267,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(130), c2 VARCHAR(1) -) ENGINE=maria; +) ENGINE=aria; INSERT INTO t1 VALUES(REPEAT("a",128), 'b'); # Insert more rows and delete one in the middle to force optimize. INSERT INTO t1 VALUES('b', 'b'); @@ -1286,7 +1286,7 @@ CREATE TABLE t1 ( c1 CHAR(130), c2 VARCHAR(1), KEY (c1) -) ENGINE=maria; +) ENGINE=aria; # # Insert 100 rows. This turns bulk insert on during the copy phase of # ALTER TABLE. Bulk insert disables keys before the insert and re-enables @@ -1304,7 +1304,7 @@ while ($count) # Change most of the rows into long character values with > 127 characters. UPDATE t1 SET c1=REPEAT("a",128) LIMIT 90; SELECT COUNT(*) FROM t1; -ALTER TABLE t1 ENGINE=maria; +ALTER TABLE t1 ENGINE=aria; # # With bug present, this shows that all long rows are gone. SELECT COUNT(*) FROM t1; @@ -1318,7 +1318,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(50), c2 VARCHAR(1) -) ENGINE=maria DEFAULT CHARSET UTF8; +) ENGINE=aria DEFAULT CHARSET UTF8; # Using Tamil Letter A, Unicode U+0B85 INSERT INTO t1 VALUES(REPEAT(_utf8 x'e0ae85',43), 'b'); SELECT COUNT(*) FROM t1; @@ -1334,7 +1334,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(50), c2 VARCHAR(1) -) ENGINE=maria DEFAULT CHARSET UTF8; +) ENGINE=aria DEFAULT CHARSET UTF8; # Using Tamil Letter A, Unicode U+0B85 INSERT INTO t1 VALUES(REPEAT(_utf8 x'e0ae85',43), 'b'); SELECT COUNT(*) FROM t1; @@ -1350,7 +1350,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 CHAR(50), c2 VARCHAR(1) -) ENGINE=maria DEFAULT CHARSET UTF8; +) ENGINE=aria DEFAULT CHARSET UTF8; # Using Tamil Letter A, Unicode U+0B85 INSERT INTO t1 VALUES(REPEAT(_utf8 x'e0ae85',43), 'b'); # Insert more rows and delete one in the middle to force optimize. @@ -1370,7 +1370,7 @@ CREATE TABLE t1 ( c1 CHAR(50), c2 VARCHAR(1), KEY (c1) -) ENGINE=maria DEFAULT CHARSET UTF8; +) ENGINE=aria DEFAULT CHARSET UTF8; # # Insert 100 rows. This turns bulk insert on during the copy phase of # ALTER TABLE. Bulk insert disables keys before the insert and re-enables @@ -1389,7 +1389,7 @@ while ($count) # Using Tamil Letter A, Unicode U+0B85 UPDATE t1 SET c1=REPEAT(_utf8 x'e0ae85',43) LIMIT 90; SELECT COUNT(*) FROM t1; -ALTER TABLE t1 ENGINE=maria; +ALTER TABLE t1 ENGINE=aria; # # With bug present, this shows that all long rows are gone. SELECT COUNT(*) FROM t1; @@ -1406,7 +1406,7 @@ CREATE TABLE t1 ( c3 VARCHAR(10) NOT NULL, KEY (c1), KEY (c2) -) ENGINE=maria DEFAULT CHARSET=utf8 PACK_KEYS=0; +) ENGINE=aria DEFAULT CHARSET=utf8 PACK_KEYS=0; let $MYSQLD_DATADIR= `select @@datadir`; --replace_result $MYSQLD_DATADIR MYSQLD_DATADIR --exec $MARIA_CHK -d $MYSQLD_DATADIR/test/t1 @@ -1423,10 +1423,10 @@ drop table t1; # (same content / differen checksum) # -CREATE TABLE t1 (line LINESTRING NOT NULL) engine=maria; +CREATE TABLE t1 (line LINESTRING NOT NULL) engine=aria; INSERT INTO t1 VALUES (GeomFromText("POINT(0 0)")); checksum table t1; -CREATE TABLE t2 (line LINESTRING NOT NULL) engine=maria; +CREATE TABLE t2 (line LINESTRING NOT NULL) engine=aria; INSERT INTO t2 VALUES (GeomFromText("POINT(0 0)")); checksum table t2; CREATE TABLE t3 select * from t1; @@ -1437,7 +1437,7 @@ drop table t1,t2,t3; # # from bug37276_reduced_corruption.sql # -create table t2(a varchar(255),key(a))engine=maria row_format=dynamic transactional=0; +create table t2(a varchar(255),key(a))engine=aria row_format=dynamic transactional=0; insert into t2 values (repeat('o',124)), (repeat('h',226)), (repeat('i',236)), (repeat('l',234)), (repeat('b',13)), (repeat('g',236)), (repeat('y',205)), (repeat('c',99)), (repeat('g',145)), (repeat('o',131)), (repeat('e',63)), @@ -1649,7 +1649,7 @@ col172 tinyint(1) DEFAULT NULL, col173 tinytext, col174 decimal(10,0) DEFAULT NULL, col175 double DEFAULT NULL -) engine=maria; +) engine=aria; insert ignore into t1 set col10=abs(28449) % 2, @@ -1766,10 +1766,10 @@ check table t1; drop table t1; # -# Bug#38466 maria: range query returns no data +# Bug#38466 aria: range query returns no data # -create table t1 (a char(200) primary key, b int default 12345) engine=maria; +create table t1 (a char(200) primary key, b int default 12345) engine=aria; insert t1 (a) values (repeat('0', 200)); insert t1 (a) values (repeat('1', 200)), (repeat('2', 200)), (repeat('3', 200)), (repeat('4', 200)), (repeat('5', 200)), (repeat('6', 200)), (repeat('7', 200)), @@ -1787,7 +1787,7 @@ drop table t1; # # BUG#38606 test suite # -create table t1 (a int) engine=maria transactional=1; +create table t1 (a int) engine=aria transactional=1; insert into t1 values (1); lock table t1 write concurrent; # should be fixed with fully implemented versioning @@ -1801,7 +1801,7 @@ drop table t1; # create table t1 (p int primary key, i int, a char(10), key k1(i), key k2(a)) -engine maria; +engine aria; insert into t1 values (1, 1, 'qqqq'), (2, 1, 'pppp'), (3, 1, 'yyyy'), (4, 3, 'zzzz'); insert into t1 values (5, 3, 'yyyy'), (6, 3, 'yyyy'), (7, 0, NULL), @@ -1819,8 +1819,8 @@ drop table t1; # --mysqld=--binlog-format=row --ps-protocol # -create table t1 (f1 int unique, f2 int) engine=maria; -create table t2 (f3 int, f4 int) engine=maria; +create table t1 (f1 int unique, f2 int) engine=aria; +create table t2 (f3 int, f4 int) engine=aria; create view v1 as select * from t1, t2 where f1= f3; insert into t1 values (1,11), (2,22); --error 1393 @@ -1834,7 +1834,7 @@ drop view v1; # BUG#39399 ALTER TABLE renaming column: affected_rows > 0 # -CREATE TABLE t1 (id int, c varchar(10)) engine=maria; +CREATE TABLE t1 (id int, c varchar(10)) engine=aria; INSERT INTO t1 VALUES (1,"1"); --enable_info ALTER TABLE t1 CHANGE c d varchar(10); @@ -1842,7 +1842,7 @@ ALTER TABLE t1 CHANGE c d varchar(10); drop table t1; # -# Bug #39227 Maria: crash with ALTER TABLE PARTITION +# Bug #39227 Aria: crash with ALTER TABLE PARTITION # create table t1 (s1 int); @@ -1852,7 +1852,7 @@ alter table t1 partition by list (s1) (partition p1 values in (2)); drop table t1; # -# Bug #39226 Maria: crash with FLUSH TABLES WITH READ LOCK after LOCK TABLES +# Bug #39226 Aria: crash with FLUSH TABLES WITH READ LOCK after LOCK TABLES create table t1 (c1 int); create table t2 (c1 int); @@ -1866,7 +1866,7 @@ drop table t1, t2; # Crash when aborting inserting of row with 2 blobs where first is short # -create table t1(a int primary key, b blob, c blob) engine=maria; +create table t1(a int primary key, b blob, c blob) engine=aria; insert into t1 values(1,repeat('a',100), repeat('b',657860)); --error ER_DUP_ENTRY insert into t1 values(1,repeat('a',100), repeat('b',657860)); @@ -1903,7 +1903,7 @@ CREATE TABLE t1 ( f2 CHAR(255) BINARY NOT NULL DEFAULT '0', f3 CHAR(255) BINARY NOT NULL , f4 CHAR(255) BINARY NOT NULL DEFAULT '0' , - v3 CHAR(255) BINARY NOT NULL DEFAULT '0' , + v3 CHAR(255) BINARY AS ( ( f1 NOT LIKE '%' ) ) PERSISTENT, KEY (v3) ) ENGINE=Maria; INSERT INTO t1 ( f1 , f2 , f3 , f4 ) SELECT f1 , f4 , f1 , f4 FROM t1; @@ -1962,7 +1962,7 @@ drop table t1; --disable_result_log --disable_query_log eval set global storage_engine=$default_engine, -maria_page_checksum=$default_checksum, -maria_log_file_size=$default_log_file_size; +aria_page_checksum=$default_checksum, +aria_log_file_size=$default_log_file_size; --enable_result_log --enable_query_log diff --git a/mysql-test/suite/maria/t/maria2.test b/mysql-test/suite/maria/t/maria2.test index 45155ab9cae..00bbea165ee 100644 --- a/mysql-test/suite/maria/t/maria2.test +++ b/mysql-test/suite/maria/t/maria2.test @@ -6,13 +6,13 @@ drop table if exists t1,t2; --enable_warnings # Test for BUG#36319 -# "Maria: table is not empty but DELETE and SELECT find no rows" +# "Aria: table is not empty but DELETE and SELECT find no rows" CREATE TABLE t1 ( line BLOB, kind ENUM('po', 'pp', 'rr', 'dr', 'rd', 'ts', 'cl') NOT NULL DEFAULT 'po', name VARCHAR(32) -) transactional=0 row_format=page engine=maria; +) transactional=0 row_format=page engine=aria; let $query= INSERT INTO t1 (name, kind, line) VALUES ("Aadaouane", "pp", GeomFromText("POINT(32.816667 35.983333)")), @@ -74,8 +74,8 @@ drop table t1; # Testing of ALTER TABLE under lock tables # -create table t1 (i int) engine=maria; -create table t2 (j int) engine=maria; +create table t1 (i int) engine=aria; +create table t2 (j int) engine=aria; lock table t1 write, t2 read; alter table t1 modify i int default 1; insert into t1 values (2); @@ -89,7 +89,7 @@ drop table t1,t2; # test INSERT ON DUPLICATE KEY UPDATE # -create table t1(id int, s char(1), unique(s)) engine=maria; +create table t1(id int, s char(1), unique(s)) engine=aria; insert into t1 values(1,"a") on duplicate key update t1.id=t1.id+1; insert into t1 values(1,"a") on duplicate key update t1.id=t1.id+1; insert into t1 select 1,"a" on duplicate key update t1.id=t1.id+1; @@ -101,7 +101,7 @@ select * from t1; drop table t1; # test LOAD DATA INFILE REPLACE -create table t1 (pk int primary key, apk int unique, data int) engine=maria; +create table t1 (pk int primary key, apk int unique, data int) engine=aria; insert into t1 values (1, 1, 1), (4, 4, 4), (6, 6, 6); load data concurrent infile '../../std_data/loaddata5.dat' replace into table t1 fields terminated by '' enclosed by '' ignore 1 lines (pk, apk); select * from t1 order by pk; diff --git a/mysql-test/suite/maria/t/maria3.test b/mysql-test/suite/maria/t/maria3.test index 37417ae3c18..868a21d6bfb 100644 --- a/mysql-test/suite/maria/t/maria3.test +++ b/mysql-test/suite/maria/t/maria3.test @@ -1,14 +1,14 @@ -- source include/have_maria.inc -select * from INFORMATION_SCHEMA.ENGINES where ENGINE="MARIA"; +select * from INFORMATION_SCHEMA.ENGINES where ENGINE="ARIA"; let $default_engine=`select @@global.storage_engine`; -let $default_checksum=`select @@global.maria_page_checksum`; -set global storage_engine=maria; -set session storage_engine=maria; -set global maria_page_checksum=0; -let $default_log_file_size=`select @@global.maria_log_file_size`; -set global maria_log_file_size=4294967295; +let $default_checksum=`select @@global.aria_page_checksum`; +set global storage_engine=aria; +set session storage_engine=aria; +set global aria_page_checksum=0; +let $default_log_file_size=`select @@global.aria_log_file_size`; +set global aria_log_file_size=4294967295; # Initialise --disable_warnings @@ -142,7 +142,7 @@ create table `t1` ( t1_id int(10) unsigned not null auto_increment, key (t1_name), primary key (t1_id) -) engine=maria auto_increment = 1000 default charset=latin1; +) engine=aria auto_increment = 1000 default charset=latin1; lock tables t1 write; INSERT INTO `t1` VALUES ('bla',1000),('bla',1001),('bla',1002); check table t1; @@ -190,7 +190,7 @@ drop table t1; # Test where we shrink varchar # -CREATE TABLE t1 (a int, b int, v varchar(60000)) checksum=1 engine=maria; +CREATE TABLE t1 (a int, b int, v varchar(60000)) checksum=1 engine=aria; insert into t1 values (1,1,"aaa"),(1,2,null); checksum table t1; lock table t1 write; @@ -241,13 +241,13 @@ CREATE TABLE t1 ( KEY (ulong), KEY (ulonglong,ulong), KEY (options,flags) -) engine=maria; +) engine=aria; insert into t1 values (10,1,1,1,1,1,1,1,1,1,1,1,1,1,NULL,0,0,0,1,1,1,1,'one','one'); -create table t2 (primary key (auto)) engine=maria row_format=page select auto+1 as auto,1 as t1, 'a' as t2, repeat('a',256) as t3, binary repeat('b',256) as t4, repeat('a',4096) as t5, binary repeat('b',4096) as t6, '' as t7, binary '' as t8 from t1; +create table t2 (primary key (auto)) engine=aria row_format=page select auto+1 as auto,1 as t1, 'a' as t2, repeat('a',256) as t3, binary repeat('b',256) as t4, repeat('a',4096) as t5, binary repeat('b',4096) as t6, '' as t7, binary '' as t8 from t1; check table t1,t2; select t1,t2,length(t3),length(t4),length(t5),length(t6),t7,t8 from t2; drop table t2; -create table t2 (primary key (auto)) engine=maria row_format=dynamic select auto+1 as auto,1 as t1, 'a' as t2, repeat('a',256) as t3, binary repeat('b',256) as t4, repeat('a',4096) as t5, binary repeat('b',4096) as t6, '' as t7, binary '' as t8 from t1; +create table t2 (primary key (auto)) engine=aria row_format=dynamic select auto+1 as auto,1 as t1, 'a' as t2, repeat('a',256) as t3, binary repeat('b',256) as t4, repeat('a',4096) as t5, binary repeat('b',4096) as t6, '' as t7, binary '' as t8 from t1; check table t2; drop table t1,t2; @@ -261,9 +261,9 @@ drop table t1; # Fix if we are using safemalloc --replace_result 8388572 8388600 -select lower(variable_name) as Variable_name, Variable_value as Value from information_schema.session_variables where variable_name like "maria%" and variable_name not like "maria_used_for_temp_tables" order by 1; +select lower(variable_name) as Variable_name, Variable_value as Value from information_schema.session_variables where variable_name like "aria%" and variable_name not like "aria_used_for_temp_tables" order by 1; --replace_column 2 # -show status like 'maria%'; +show status like 'aria%'; # # Test creating table with no field data and index on zero length columns @@ -302,9 +302,10 @@ drop table t1; # # Show that page_checksum is remembered # -set global maria_page_checksum=1; +set global aria_page_checksum=1; create table t1 (a int); show create table t1; +set global aria_page_checksum=0; drop table t1; # @@ -312,7 +313,7 @@ drop table t1; # --enable_warnings -set global maria_log_file_size=4294967296; +set global aria_log_file_size=4294967296; # # Test delete of all rows in autocommit and not autocommit @@ -340,10 +341,10 @@ create table t3 select * from t1, t2; # Should give an error create table t3 select t1.c AS c1, t2.c AS c2,1 as "const" from t1, t2; drop table t1, t2, t3; -# Test for bug "maria_repair() (OPTIMIZE) leaves wrong +# Test for bug "aria_repair() (OPTIMIZE) leaves wrong # data_file_length" (originally from type_datetime.test) -create table t1 (t datetime) engine=maria; +create table t1 (t datetime) engine=aria; insert into t1 values (101),(691231),(700101),(991231),(10000101),(99991231),(101000000),(691231000000),(700101000000),(991231235959),(10000101000000),(99991231235959),(20030100000000),(20030000000000); select * from t1; optimize table t1; @@ -396,18 +397,18 @@ drop table t1; # Test warnings with transactional=1 with MyISAM # -create table t1 (n int not null, c char(1)) engine=maria; +create table t1 (n int not null, c char(1)) engine=aria; alter table t1 engine=myisam; -alter table t1 engine=maria; +alter table t1 engine=aria; show create table t1; drop table t1; -create table t1 (n int not null, c char(1)) engine=maria transactional=1; +create table t1 (n int not null, c char(1)) engine=aria transactional=1; alter table t1 engine=myisam; -alter table t1 engine=maria; +alter table t1 engine=aria; show create table t1; drop table t1; create table t1 (n int not null, c char(1)) engine=myisam transactional=1; -alter table t1 engine=maria; +alter table t1 engine=aria; show create table t1; drop table t1; @@ -455,7 +456,7 @@ drop table t1, t2; # # Test problems with small rows and row_type=page -# Bug 35048 "maria table corruption reported when transactional=0" +# Bug 35048 "aria table corruption reported when transactional=0" # create table t1 (i int auto_increment not null primary key) transactional=0; @@ -501,19 +502,19 @@ DROP TABLE t1; # BUG#36104 - INFORMATION_SCHEMA.TABLES shows TRANSACTIONAL=1 twice in # CREATE_OPTIONS # -create table t1(a int) engine=maria transactional=1; +create table t1(a int) engine=aria transactional=1; select CREATE_OPTIONS from information_schema.TABLES where TABLE_SCHEMA='test' and TABLE_NAME='t1'; drop table t1; # -# BUG#39697 - Maria: hang when failing to insert due to UNIQUE +# BUG#39697 - Aria: hang when failing to insert due to UNIQUE # -create table t1 (a int, unique(a)) engine=maria transactional=1; +create table t1 (a int, unique(a)) engine=aria transactional=1; insert into t1 values(1); --error 1062 insert into t1 values(2),(2); -create table t2 (a int, unique(a)) engine=maria transactional=0 row_format=dynamic; +create table t2 (a int, unique(a)) engine=aria transactional=0 row_format=dynamic; insert into t2 values(1); --error 1062 insert into t2 values(2),(2); @@ -554,13 +555,12 @@ INSERT INTO t2 VALUES (1,'M','','H'), SELECT * FROM t1, t2 WHERE a = g ORDER BY b; drop table t1,t2; - -# End of 5.1 tests +--echo # End of 5.1 tests --disable_result_log --disable_query_log eval set global storage_engine=$default_engine, -maria_page_checksum=$default_checksum, -maria_log_file_size=$default_log_file_size; +aria_page_checksum=$default_checksum, +aria_log_file_size=$default_log_file_size; --enable_result_log --enable_query_log diff --git a/mysql-test/suite/maria/t/maria_notembedded.test b/mysql-test/suite/maria/t/maria_notembedded.test index 0f27802de27..f1d71e90354 100644 --- a/mysql-test/suite/maria/t/maria_notembedded.test +++ b/mysql-test/suite/maria/t/maria_notembedded.test @@ -4,7 +4,7 @@ -- source include/have_maria.inc let $default_engine=`select @@session.storage_engine`; -set session storage_engine=maria; +set session storage_engine=aria; # Verify that INSERT DELAYED is disabled only for transactional tables # ("embedded" server translates them to plain INSERT) diff --git a/mysql-test/suite/maria/t/maria_partition.test b/mysql-test/suite/maria/t/maria_partition.test index ced87903c21..47571c7a4be 100644 --- a/mysql-test/suite/maria/t/maria_partition.test +++ b/mysql-test/suite/maria/t/maria_partition.test @@ -1,13 +1,13 @@ -# Maria tests which require partitioning enabled +# Aria tests which require partitioning enabled --source include/have_partition.inc -- source include/have_maria.inc let $default_engine=`select @@global.storage_engine`; -let $default_checksum=`select @@global.maria_page_checksum`; -set global storage_engine=maria; -set session storage_engine=maria; -set global maria_page_checksum=0; +let $default_checksum=`select @@global.aria_page_checksum`; +set global storage_engine=aria; +set session storage_engine=aria; +set global aria_page_checksum=0; # Initialise --disable_warnings @@ -17,7 +17,7 @@ drop view if exists v1; SET SQL_WARNINGS=1; # -# Bug #39227 Maria: crash with ALTER TABLE PARTITION +# Bug #39227 Aria: crash with ALTER TABLE PARTITION # create table t1 (s1 int); @@ -29,8 +29,8 @@ drop table t1; # # Test outer join const propagation # -create table t2(a blob) engine=maria; -create table t1(a int primary key) engine=maria; +create table t2(a blob) engine=aria; +create table t1(a int primary key) engine=aria; insert into t2 values ('foo'),('bar'); select * from t2 left join t1 on (t2.a=t1.a) where t2.a='bbb'; insert into t1 values (1); @@ -52,7 +52,7 @@ drop table t1,t2; # Set defaults back --disable_result_log --disable_query_log -eval set global storage_engine=$default_engine, maria_page_checksum=$default_checksum; -set global maria_log_file_size=default; +eval set global storage_engine=$default_engine, aria_page_checksum=$default_checksum; +set global aria_log_file_size=default; --enable_result_log --enable_query_log diff --git a/mysql-test/suite/maria/t/maria_showlog_error.test b/mysql-test/suite/maria/t/maria_showlog_error.test index 9c4d5b8ef2c..d6c59c5a0a6 100644 --- a/mysql-test/suite/maria/t/maria_showlog_error.test +++ b/mysql-test/suite/maria/t/maria_showlog_error.test @@ -19,9 +19,9 @@ connection default; connection default; let MYSQLD_DATADIR= `select @@datadir`; -remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000001; ---replace_regex /Size unknown ; .*maria_log.00000001/Size unknown ; maria_log.00000001/ -show engine maria logs; +remove_file $MYSQLD_DATADIR/$MARIA_LOG/aria_log.00000001; +--replace_regex /Size unknown ; .*aria_log.00000001/Size unknown ; aria_log.00000001/ +show engine aria logs; # cleunup after this test -- source include/maria_empty_logs.inc diff --git a/mysql-test/suite/maria/t/optimize.test b/mysql-test/suite/maria/t/optimize.test index 9f38a68edeb..6b310b1d1a6 100644 --- a/mysql-test/suite/maria/t/optimize.test +++ b/mysql-test/suite/maria/t/optimize.test @@ -5,14 +5,13 @@ drop table if exists t1; --enable_warnings # -# Test for LP#603026: RQG: pagecache_read: Assertion `pageno < ((1ULL) << 40)' on OPTIMIZE TABLE of a Maria table +# Test for LP#603026: RQG: pagecache_read: Assertion `pageno < ((1ULL) << 40)' on OPTIMIZE TABLE of a Aria table # --disable_query_log set autocommit=1; --disable_warnings -CREATE TABLE t1 ( `col_varchar_1024_utf8_not_null_key` varchar(1024) CHARACTER SET utf8 not null, `col_varchar_1024_utf8_key` varchar(1024) CHARACTER SET utf8, `col_varchar_1024_utf8_not_null` varchar(1024) CHARACTER SET utf8 not null, `col_varchar_1024_utf8` varchar(1024) CHARACTER SET utf8, pk varchar(1024) not null, `col_varchar_1024_latin1` varchar(1024) CHARACTER SET latin1, `col_varchar_1024_latin1_not_null_key` varchar(1024) CHARACTER SET latin1 not null, `col_varchar_1024_latin1_not_null` varchar(1024) CHARACTER SET latin1 not null, `col_varchar_1024_latin1_key` varchar(1024) CHARACTER SET latin1, /*Indices*/ key (`col_varchar_1024_utf8_not_null_key` ), key (`col_varchar_1024_utf8_key` ), primary key (pk), key (`col_varchar_1024_latin1_not_null_key` ), key (`col_varchar_1024_latin1_key` )) ENGINE=maria; ---enable_warnings +CREATE TABLE t1 ( `col_varchar_1000_utf8_not_null_key` varchar(1000) CHARACTER SET utf8 not null, `col_varchar_1000_utf8_key` varchar(1000) CHARACTER SET utf8, `col_varchar_1000_utf8_not_null` varchar(1000) CHARACTER SET utf8 not null, `col_varchar_1000_utf8` varchar(1000) CHARACTER SET utf8, pk varchar(1000) not null, `col_varchar_1000_latin1` varchar(1000) CHARACTER SET latin1, `col_varchar_1000_latin1_not_null_key` varchar(1000) CHARACTER SET latin1 not null, `col_varchar_1000_latin1_not_null` varchar(1000) CHARACTER SET latin1 not null, `col_varchar_1000_latin1_key` varchar(1000) CHARACTER SET latin1, /*Indices*/ key (`col_varchar_1000_utf8_not_null_key` ), key (`col_varchar_1000_utf8_key` ), primary key (pk), key (`col_varchar_1000_latin1_not_null_key` ), key (`col_varchar_1000_latin1_key` )) ENGINE=aria; INSERT /*! IGNORE */ INTO t1 VALUES ('dbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzb', 'wdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwby', 'something', 'pwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfa', 1, 'dpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjr', 'can', 'hdpwdbhfatqokbosjofmpdxvhq', 'rhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdubbjdznrxsrrmahxsxurpkqkedeznqccfidiazhmmasxemcshyvhqcxvmhqqvzowtbnjpxxw') , ('urhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxci', 'turhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidl', 'to', 'rturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftka', 2, 'grturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmh', 'ygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdubbjdznrxsrrmahxsxurpkqkedeznqccfidiazhmmasxemcshyvh', 'rygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdubbjdznrxsrrmahxsxurpkqkedeznqccfidiazhmmasxemcshyvhqcxvmhqqvzowtbnjpxxwmabsoaiqscbnfwvhwdjgrhlfusfplamodraqbpgtdgviqngjtlykclmdokwpttsicss', 'vrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizw') , ('c', 'wvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbld', 'had', 'twvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxw', 3, 'htwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdubbjd', 'q', 'z', 'phtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfi') , ('vphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapn', 'jvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjv', 'ejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgq', 'vejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqyt', 4, 't', 'why', 'your', 'cvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxrey') , ('v', 'rcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambx', 'frcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilx', 'p', 5, 'kfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdubbjdznrxsrrmahxsxurpkqkedeznqccfidiazhmmasxemcshyvhqcxvmhqqvzowtbnjpxxwmabsoaiqscbnfwvhwdjgrhlfusfplamodr', 'i', 'ikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmy', 'jikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmu'); INSERT /*! IGNORE */ INTO t1 VALUES ('wjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcq', 'uwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnng', 'zuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajy', 'i', 6, 'u', 'q', 'd', 'izuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkq') , ('bizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdub', 'd', 'lbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdubbjdznrxsrrmahxsxurpkqkedeznqccfidiazhmmasxemcshyvhqcxvmhqqvzowtbnjpxxwmabsoaiqscbn', 'llbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfz', 7, 'bllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutf', 'rbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmf', 'really', 'yrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnngh') , ('tyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwp', 'xtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmsw', 'kxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgkne', 'mkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjv', 8, 'zmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgx', 'ezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdubbjdznrxsrrmahxsxurpkqkedeznqccfidiazhmmasxemcshyvhqcxvmhqqvzowtbnjpxxwmabsoaiqscbnfwvhwdjgrhlfusfplamodraqbpgtdgviqngjtlykclm', 'no', 'eezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczs') , ('m', 'keezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfep', 'tkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqh', 'ztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdubbjdznrxsrrmahxsxurpkqkedeznqccfidiazhmmasxemcshyvhqcxvmhqqvzowtbnjpxxwmabsoaiqscbnfwvhwdjgrhlf', 9, 'n', 'hey', 'hztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxw', 'shztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveamb') , ('bshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvf', 'on', 'look', 'I', 10, 'xbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxz', 'lxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjr', 'what', 'ilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnrolj'); INSERT /*! IGNORE */ INTO t1 VALUES ('he', 'hilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkj', 'khilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecf', 'o', 11, 'i', 'okhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygr', 'hokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpd', 'khokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveamb') , ('kkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphuni', 'about', 'ckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeq', 'sckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdubbjdznrxsrrmahxsxurpkqkedeznqccfidiazhmmasxemcshyvhqcxvmhqqvzowtb', 12, 'xsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwn', 'at', 'pxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpaj', 'kpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfuomwlcdytimiwybmtuheejeitapnjnestutftmutidlvdubbjdznrxsrrmahxsxurpkqkedeznqccfidiazhmmasxemcshyvhqcxvmhqqvzowtbnjpx') , ('in', 'see', 'ikpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyi', 'say', 13, 'you', 'x', 'wikpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhit', 'why') , ('mean', 'a', 'now', 'm', 14, 'cwikpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqo', 'acwikpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaaht', 'racwikpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswv', 'hracwikpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoa') , ('v', 'l', 'shracwikpxsckkhokhilx', 'gshracwikpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwyto', 15, 'fgshracwikpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsv', 'say', 'nfgshracwikpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpajyalhsygtjrhjxreywihgnxlevtsvfzsztftgvgzkqhwpnbztbcpoqdmhgjffokjvoaejwgqpnhemopbmrkfnkwngdjiawsiarcbkgoudqpkecymujxlwfzdeqnrumctcfmndgknecfzkndoohlpkgksukysorfgkvvkreijhlyhznczsxfdezymeqjpdeydhvhrxolrlxmxxdmajqwizwmyvustnzbrbopxmspxnazyxzmuysgonfckdeurqnroljslhdnjmdetcftzsrkjzmhimfmsbhnsgriqkaejakxzbldvftdcaugaahtcwtnujxmwqvkfepcswvrvqhibmuutnuhmvcnctfzmswcmtsrpmyedqxpoluufzbhwbrmcdiwytofotjitmaijfpfbpdwickgvibccphunilmnxvdsykirhgxvyehxyhixejfktoptnpveambxrovrpulkkjqccekfbfamsuiwhofodwrlsvwmxtvaoazfufeehwftkaugjsnebabzsscqhnafqodwrvohesokjrzhnkjhqowroirjsmofgfvfu', 'onfgshracwikpxsckkhokhilxbshztkeezmkxtyrbllbizuwjikfrcvejvphtwvrygrturhdpwdbhfatqokbosjofmpdxvhqvfnyxowgqqxermmjkovqnoqhpubzfjxwqacdiwyekwemegyaluzytnccflbvqnqnmfvvlhitckzgppyilihmleccmmxqxcilxqvfikqseftdkgtlqzbwpucapktdeqxndcqytizhxaaiyashfuwbyynvenjcsmasklnxxtbzrqxmoupppjcctptgoksleizxkrbednzzwgvlnnghjvvtlpaj'); @@ -155,6 +154,7 @@ INSERT /*! IGNORE */ INTO t1 VALUES ('doeoynuevifnwbjkchuxoaflreoetapkynriylynp INSERT /*! IGNORE */ INTO t1 VALUES ('her', 'don\'t', 'all', 'mfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkujrdjvqfimeefwyehibfsjptaqiuznnpyowjzzmkqzswalbzhtefijzpybwusrbcnriyiijianfdvcgoamkbzgtchdzvwkuxfowykrrfghjvmz', 986, 'm', 'ymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtn', 'g', 'zymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkujrdjvqfimeefwyehibfsjptaqiuznnpyowjzzmkqzswalbzhtefijzpybwusrbcn') , ('nzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkujrdjvqfimeefwyehibfsjptaqiuznnpyowjzzmkqzswalbzhtefijzpybwusrbcnriyiijianfdvcgoamkbzgtchdzvwkuxfowykrrfghjvmzyudarthdlmr', 'a', 'pnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpaclt', 'w', 987, 'don\'t', 'upnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpe', 'eupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfyd', 'w') , ('leupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncu', 'vleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkujrdjvqfimeefwyehibfsjptaqiuznnpyowjzzmkqzswalbzhtefijzpybwusrbcnriyiijianfdvcgoamkbzgtchdzvwkuxfowykrrfghjvmzyudarthdlmrpvvacmukvrl', 'x', 'ivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeao', 988, 'g', 'sivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucc', 'you\'re', 'nsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufc') , ('znsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqc', 'c', 'oznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfoda', 'hoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkujrdjvqfimeefwyehibfsjptaqiuznnpyowjzzmkqzswalbzhtefijzpybwusrbc', 989, 'uhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujk', 'cuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfzi', 'bcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkujrdjvqfimeefwyehibfsjptaqiuznnpyowjzzmkqzswalbzhtefijzpybwusrbcnriyiijianfdvcgoamk', 'dbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparyt') , ('adbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsd', 'uadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkuj', 'huadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbec', 'hhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyy', 990, 'uhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoe', 'iuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvt', 'qiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqex', 'eqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjw'); INSERT /*! IGNORE */ INTO t1 VALUES ('keqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyi', 'f', 'jkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwo', 'xjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyop', 991, 'pxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofne', 'f', 'f', 'dpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdio') , ('xdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzc', 's', 'got', 'on', 992, 'bxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkujrdjvqfimeefwyehibfsjptaqiuznnpyowjzzmkqzswalbzhtef', 'xbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfp', 'p', 'x') , ('xxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwas', 'exxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzp', 'vexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowh', 'gvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialk', 993, 'ugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsx', 'pugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgyc', 'kpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyy', 'her') , ('d', 'ikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckz', 'who', 'bikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialk', 994, 'abikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaot', 'were', 'wabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznb', 'y') , ('vwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxh', 'to', 'qvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphcc', 'xqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkujrdjvqfimeefwyehibfsjp', 995, 'jxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxc', 'o', 'xjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbj', 'rxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqic'); INSERT /*! IGNORE */ INTO t1 VALUES ('urxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoz', 'curxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzew', 'acurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamax', 'with', 996, 'was', 'uacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkujrdjvqfimeefwyehibfsjptaqiuznnpyowjzzmkqzswalbzhtefijzpybwusrbcnriyiijianfdvcgoamkbzgtchdzvwkuxfowykrrfghjvmzyudarthdlm', 'duacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiut', 'nduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokz') , ('had', 'gnduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfck', 'ognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvn', 'oognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctu', 997, 'toognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshoz', 'ytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyopr', 'bytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpef', 'jbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokz') , ('ujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutv', 'dujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuev', 'are', 'i', 998, 'bdujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcos', 'y', 'w', 'b') , ('ybdujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriyl', 'go', 'zybdujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahl', 'ok', 999, 'fzybdujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczy', 'l', 'bfzybdujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxctuimpkdcjtaxqflvqvisxmpoywtwzntcrgmfkujrdjvqfimeefwyehibfsjptaqiuznnpyowjzzmkqzswalbzhtefijzpybwus', 'nbfzybdujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbiahlemtcoskaafhqdonuvfakxhrrljevcruxbcnrdoznxnpoiwtycgycyefjmhotkmhogrvoqavbzayrfniickzwbmsaxdbyobeqqxparytdosykjqexwykghbeqndfbgfydxshozxoioadrgolfvnorvljclibamxbcoklfodagontokzcjloncuyoprcuftivejpacltphccnksfneuyevpefbipyzmbgsmbtwknvcnitwmsfsfirtxct') , ('nnbfzybdujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnr', 'ynnbfzybdujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiu', 'b', 'o', 1000, 'fynnbfzybdujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyewsfyenmcxdvddqdvjzdmcxycpinvyxdspwajhwpdtzpelbfpteijeisukfgurzqicgvhmvbkhzfziauialkyolxxpwirxkpzawchzbvnrmmzqbdrvorvfbgbecicohkxaevsoapogbwzbjifuboxagzmlfjkazdvpvnghijvamaxjnrfkakkfbtotujswtanfdknssrfmkpqbowhdduqsdypbxsxtysyewyplhughdfnpahtbnzewsqggozswjeaotpesrujknsosizbwqvgwzcfjvdccjwysttpvvhlnyikususboyudkfewhmbmvjtnwnbxojqdgkbia', 'f', 'r', 'ifynnbfzybdujbytoognduacurxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoznsivleupnzymfhieibzvolxmwokzgntahmadoeoynuevifnwbjkchuxoaflreoetapkynriylynprdflglhfazkqtnahvvuthwuprbgmsofnedkykwozxiutvjlihiezrimymgtjfelrowywwwwasriclgihuyytjlntqfxypodnlqcvplkfpvtdiouucczyrnjwbhezsureyaebufctbjfckznbydnjuomgyvasucvdeyew'); +--enable_warnings --enable_query_log check table t1; diff --git a/mysql-test/suite/maria/t/ps_maria.test b/mysql-test/suite/maria/t/ps_maria.test index 34960d90f8f..d3623314631 100644 --- a/mysql-test/suite/maria/t/ps_maria.test +++ b/mysql-test/suite/maria/t/ps_maria.test @@ -1,6 +1,6 @@ ############################################### # # -# Prepared Statements test on MARIA tables # +# Prepared Statements test on ARIA tables # # # ############################################### @@ -12,7 +12,7 @@ use test; -let $type= 'MARIA' ; +let $type= 'ARIA' ; -- source include/ps_create.inc -- source include/ps_renew.inc @@ -47,6 +47,6 @@ drop table t1, t9; --disable_result_log --disable_query_log -set global maria_log_file_size=default; +set global aria_log_file_size=default; --enable_result_log --enable_query_log diff --git a/mysql-test/suite/maria/t/small_blocksize-master.opt b/mysql-test/suite/maria/t/small_blocksize-master.opt new file mode 100644 index 00000000000..59fd35a7846 --- /dev/null +++ b/mysql-test/suite/maria/t/small_blocksize-master.opt @@ -0,0 +1 @@ +--aria-block-size=1024 diff --git a/mysql-test/suite/maria/t/small_blocksize.test b/mysql-test/suite/maria/t/small_blocksize.test new file mode 100644 index 00000000000..0acf8df6e66 --- /dev/null +++ b/mysql-test/suite/maria/t/small_blocksize.test @@ -0,0 +1,34 @@ +DROP TABLE if exists t1; + +# +# Test of extending updated rows. +# This caused failures in lp:815022 +# +CREATE TABLE t1 (col_longtext_ucs2 longtext, col_longtext_utf8 longtext, col_varchar_255_ucs2_key varchar(255), col_set_utf8 set ('a','b'), col_char_255_ucs2 char(255), col_char_255_ucs2_key char(255), col_enum_ucs2 enum ('a','b'), col_varchar_255_ucs2 varchar(255), col_longtext_ucs2_key longtext, col_longtext_utf8_key longtext, col_enum_utf8 enum ('a','b'), col_varchar_255_utf8_key varchar(1024), col_varchar_255_utf8 varchar(255), col_enum_ucs2_key enum ('a','b'), col_enum_utf8_key enum ('a','b'), col_set_utf8_key set ('a','b'), col_char_255_utf8 char(255), pk integer auto_increment, col_set_ucs2_key set ('a','b'), col_char_255_utf8_key char(255), col_set_ucs2 set ('a','b'), primary key (pk)) ENGINE=aria; +INSERT INTO t1 ( col_char_255_utf8, col_varchar_255_utf8_key, col_longtext_utf8_key ) VALUES ( 'lggnqojgqectqlkvskffihliqcwoakzzzjvhkqlwjybkngdbubskflpmzegdrk', REPEAT( 'a', 627 ), 'mlggnqojgqectqlkvskffihliqcwoakzzzjvhkqlwjybkngdbubskflpmzegdrklnipcmzbtwdqfnyinqfohgtiwmvfpbuslgobjhslxnaybcyebhsrlipnuvalhmvhlwbwujtvjsdrbyapfzprnxfgtrukwhywtkaoupsaogxsjxhqjkidvnpeytjgndtnrrbm' ); +UPDATE t1 SET col_varchar_255_utf8 = REPEAT('a', 197 ); +UPDATE t1 SET col_char_255_utf8 = 'bmjihzjtxegprqfvmczyzbavjuozkyxrlxvqyzcfvsjrhcccqnecyohzhzbgsbqkqvzmtlhtlcgzheirkyfwczoolilkrfimfnuoapyylbghdhdgfebjjajfoigagozypqtrflrvdiwfgqalsqbmlllsanvtuuutiaastqtbzeoaawl'; +check table t1; +drop table t1; + +create table t1 (a int primary key auto_increment, e1 enum('a','b'), e2 enum('a','b'), vl int, bl int, c char(10), v1 varchar(10000), v2 varchar(10000), b1 blob, b2 blob) engine=aria; + +insert into t1 (vl,bl) values (10,10),(100,100),(1000,1000),(5000,5000),(8000,12000); +update t1 set c="test", v1=repeat('a',vl),v2=repeat('b',vl/2),b1=repeat('c',bl),b2=repeat('d',bl); +insert into t1 (vl,bl) values (10,10),(100,100),(1000,1000),(1000,5000); +update t1 set c="test", v1=repeat('a',vl/4),v2=repeat('b',vl/5),b1=repeat('c',bl*2),b2=repeat('d',bl/2); +insert into t1 (vl,bl) values (100,100); +update t1 set c="test", v1=repeat('a',vl),v2=repeat('b',vl),b1=repeat('c',bl*2),b2=repeat('d',bl/2); +update t1 set c="test", v1=repeat('a',vl/2),v2=repeat('b',vl/2),b1=repeat('c',bl/2),b2=repeat('d',bl/2); +update t1 set c="test", v1=repeat('a',vl/4),v2=repeat('b',vl/4),b1=repeat('c',bl/4),b2=repeat('d',bl/4); +update t1 set c="test", v1=repeat('a',vl/20),v2=repeat('b',vl),b1=repeat('c',bl/20),b2=repeat('d',bl/20); +insert into t1 (vl,bl) values (100,100); +update t1 set c="test", v1=repeat('a',vl/100),b1=repeat('c',bl/100); +insert into t1 (vl,bl) values (100,100); +update t1 set c="test", v1=repeat('a',vl),b1=repeat('c',bl); +insert into t1 (vl,bl) values (100,100); +update t1 set c="test", v1=repeat('a',10),v2=repeat('b',10); +insert into t1 (vl,bl) values (100,100); +update t1 set c="test", v1=repeat('a',2000),v2=repeat('b',2000); +check table t1; +drop table t1; diff --git a/mysql-test/suite/oqgraph/r/basic.result b/mysql-test/suite/oqgraph/r/basic.result new file mode 100644 index 00000000000..e90659c0986 --- /dev/null +++ b/mysql-test/suite/oqgraph/r/basic.result @@ -0,0 +1,63 @@ +drop table if exists graph; +Warnings: +Note 1051 Unknown table 'graph' +CREATE TABLE graph ( +latch SMALLINT UNSIGNED NULL, +origid BIGINT UNSIGNED NULL, +destid BIGINT UNSIGNED NULL, +weight DOUBLE NULL, +seq BIGINT UNSIGNED NULL, +linkid BIGINT UNSIGNED NULL, +KEY (latch, origid, destid) USING HASH, +KEY (latch, destid, origid) USING HASH +) ENGINE=OQGRAPH; +delete from graph; +insert into graph(origid, destid) values (1,2), (2,1); +insert into graph(origid, destid) values (1,3), (3,1); +insert into graph(origid, destid) values (3,4), (4,3); +insert into graph(origid, destid) values (3,5), (5,3); +insert into graph(origid, destid) values (5,6), (6,5); +select * from graph where latch = 2 and origid = 1 and weight = 1; +latch origid destid weight seq linkid +2 1 NULL 1 3 3 +2 1 NULL 1 2 2 +select * from graph where latch = 2 and origid = 1 and weight = 2; +latch origid destid weight seq linkid +2 1 NULL 2 5 5 +2 1 NULL 2 4 4 +select * from graph +where latch = 2 and origid = 1 and (weight = 1 or weight = 2); +latch origid destid weight seq linkid +2 1 NULL 2 5 5 +2 1 NULL 2 4 4 +2 1 NULL 1 3 3 +2 1 NULL 1 2 2 +select * from graph where latch=1 and origid=1 and destid=6; +latch origid destid weight seq linkid +1 1 6 NULL 0 1 +1 1 6 1 1 3 +1 1 6 1 2 5 +1 1 6 1 3 6 +select * from graph where latch=1 and origid=1 and destid=4; +latch origid destid weight seq linkid +1 1 4 NULL 0 1 +1 1 4 1 1 3 +1 1 4 1 2 4 +select * from graph where latch=1 and origid=4 and destid=1; +latch origid destid weight seq linkid +1 4 1 NULL 0 4 +1 4 1 1 1 3 +1 4 1 1 2 1 +insert into graph (origid,destid) values (4,6); +delete from graph where origid=5; +delete from graph where origid=3 and destid=5; +select * from graph where latch=1 and origid=1 and destid=6; +latch origid destid weight seq linkid +1 1 6 NULL 0 1 +1 1 6 1 1 3 +1 1 6 1 2 4 +1 1 6 1 3 6 +select * from graph where latch=1 and origid=6 and destid=1; +latch origid destid weight seq linkid +truncate table graph; +drop table graph; diff --git a/mysql-test/suite/oqgraph/r/binlog.result b/mysql-test/suite/oqgraph/r/binlog.result new file mode 100644 index 00000000000..ee0a8c081f4 --- /dev/null +++ b/mysql-test/suite/oqgraph/r/binlog.result @@ -0,0 +1,18 @@ +drop table if exists graph; +CREATE TABLE graph ( +latch SMALLINT UNSIGNED NULL, +origid BIGINT UNSIGNED NULL, +destid BIGINT UNSIGNED NULL, +weight DOUBLE NULL, +seq BIGINT UNSIGNED NULL, +linkid BIGINT UNSIGNED NULL, +KEY (latch, origid, destid) USING HASH, +KEY (latch, destid, origid) USING HASH +) ENGINE=OQGRAPH; +SET binlog_format = row; +insert into graph(origid, destid) values (1,3), (3,1); +SET binlog_format = statement; +insert into graph(origid, destid) values (3,4), (4,3); +SET binlog_format = mixed; +insert into graph(origid, destid) values (3,5), (5,3); +drop table graph; diff --git a/mysql-test/suite/oqgraph/suite.opt b/mysql-test/suite/oqgraph/suite.opt new file mode 100644 index 00000000000..bc7ccfc1414 --- /dev/null +++ b/mysql-test/suite/oqgraph/suite.opt @@ -0,0 +1 @@ +--plugin-load=$HA_OQGRAPH_SO diff --git a/mysql-test/suite/oqgraph/suite.pm b/mysql-test/suite/oqgraph/suite.pm new file mode 100644 index 00000000000..5066d4e9f8a --- /dev/null +++ b/mysql-test/suite/oqgraph/suite.pm @@ -0,0 +1,8 @@ +package My::Suite::OQGraph; + +@ISA = qw(My::Suite); + +return "No OQGraph" unless $ENV{HA_OQGRAPH_SO}; + +bless { }; + diff --git a/mysql-test/suite/oqgraph/t/basic.test b/mysql-test/suite/oqgraph/t/basic.test new file mode 100644 index 00000000000..731f07c0eeb --- /dev/null +++ b/mysql-test/suite/oqgraph/t/basic.test @@ -0,0 +1,43 @@ +drop table if exists graph; + +CREATE TABLE graph ( + latch SMALLINT UNSIGNED NULL, + origid BIGINT UNSIGNED NULL, + destid BIGINT UNSIGNED NULL, + weight DOUBLE NULL, + seq BIGINT UNSIGNED NULL, + linkid BIGINT UNSIGNED NULL, + KEY (latch, origid, destid) USING HASH, + KEY (latch, destid, origid) USING HASH + ) ENGINE=OQGRAPH; + +delete from graph; + +insert into graph(origid, destid) values (1,2), (2,1); +insert into graph(origid, destid) values (1,3), (3,1); +insert into graph(origid, destid) values (3,4), (4,3); +insert into graph(origid, destid) values (3,5), (5,3); +insert into graph(origid, destid) values (5,6), (6,5); + +select * from graph where latch = 2 and origid = 1 and weight = 1; + +select * from graph where latch = 2 and origid = 1 and weight = 2; + +select * from graph +where latch = 2 and origid = 1 and (weight = 1 or weight = 2); + +select * from graph where latch=1 and origid=1 and destid=6; +select * from graph where latch=1 and origid=1 and destid=4; +select * from graph where latch=1 and origid=4 and destid=1; + +insert into graph (origid,destid) values (4,6); + +delete from graph where origid=5; +delete from graph where origid=3 and destid=5; + +select * from graph where latch=1 and origid=1 and destid=6; +select * from graph where latch=1 and origid=6 and destid=1; + +truncate table graph; + +drop table graph; diff --git a/mysql-test/suite/oqgraph/t/binlog.test b/mysql-test/suite/oqgraph/t/binlog.test new file mode 100644 index 00000000000..7b3b6bdb8a9 --- /dev/null +++ b/mysql-test/suite/oqgraph/t/binlog.test @@ -0,0 +1,27 @@ +-- source include/have_log_bin.inc + +--disable_warnings +drop table if exists graph; +--enable_warnings + +CREATE TABLE graph ( + latch SMALLINT UNSIGNED NULL, + origid BIGINT UNSIGNED NULL, + destid BIGINT UNSIGNED NULL, + weight DOUBLE NULL, + seq BIGINT UNSIGNED NULL, + linkid BIGINT UNSIGNED NULL, + KEY (latch, origid, destid) USING HASH, + KEY (latch, destid, origid) USING HASH + ) ENGINE=OQGRAPH; + +# MBug#524625: OQGraph error with binary logging enabled +# Test that OQGraph works with different binlogging modes. +SET binlog_format = row; +insert into graph(origid, destid) values (1,3), (3,1); +SET binlog_format = statement; +insert into graph(origid, destid) values (3,4), (4,3); +SET binlog_format = mixed; +insert into graph(origid, destid) values (3,5), (5,3); + +drop table graph; diff --git a/mysql-test/suite/parts/r/partition_alter2_1_maria.result b/mysql-test/suite/parts/r/partition_alter2_1_maria.result index 3d4553e8d0f..4f52cb3c131 100644 --- a/mysql-test/suite/parts/r/partition_alter2_1_maria.result +++ b/mysql-test/suite/parts/r/partition_alter2_1_maria.result @@ -1,5 +1,5 @@ SET @max_row = 20; -SET @@session.storage_engine = 'MARIA'; +SET @@session.storage_engine = 'Aria'; #------------------------------------------------------------------------ # 0. Setting of auxiliary variables + Creation of an auxiliary tables @@ -73,7 +73,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -538,7 +538,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -1017,16 +1017,16 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -1507,14 +1507,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -1987,14 +1987,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -2477,21 +2477,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -2972,21 +2972,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -3465,13 +3465,13 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -3951,7 +3951,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -4468,7 +4468,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -4999,16 +4999,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -5541,14 +5541,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -6073,14 +6073,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -6615,21 +6615,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -7162,21 +7162,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -7707,13 +7707,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -8243,7 +8243,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -8760,7 +8760,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -9291,16 +9291,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -9833,14 +9833,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -10365,14 +10365,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -10907,21 +10907,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -11454,21 +11454,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -11999,13 +11999,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -12539,7 +12539,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -13004,7 +13004,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -13483,16 +13483,16 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -13973,14 +13973,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -14453,14 +14453,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -14943,21 +14943,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -15438,21 +15438,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -15931,13 +15931,13 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -16415,7 +16415,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1 + f_int2) PARTITIONS 2 */ @@ -16880,7 +16880,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1,f_int2) PARTITIONS 5 */ @@ -17359,16 +17359,16 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1 + f_int2,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -17849,14 +17849,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE ((f_int1 + f_int2) DIV 2) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -18329,14 +18329,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY HASH (f_int2) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -18817,21 +18817,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int2) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -19312,21 +19312,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int2 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -19805,13 +19805,13 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int2) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -20291,7 +20291,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -20808,7 +20808,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -21339,16 +21339,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -21881,14 +21881,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -22413,14 +22413,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -22955,21 +22955,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -23502,21 +23502,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -24047,13 +24047,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -24583,7 +24583,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1 + f_int2) PARTITIONS 2 */ @@ -25100,7 +25100,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1,f_int2) PARTITIONS 5 */ @@ -25631,16 +25631,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1 + f_int2,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -26173,14 +26173,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE ((f_int1 + f_int2) DIV 2) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -26705,14 +26705,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY HASH (f_int2) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -27245,21 +27245,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int2) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -27792,21 +27792,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int2 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -28337,13 +28337,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int2) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -28873,7 +28873,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -29390,7 +29390,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -29921,16 +29921,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -30463,14 +30463,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -30995,14 +30995,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -31537,21 +31537,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -32084,21 +32084,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -32629,13 +32629,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -33165,7 +33165,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1 + f_int2) PARTITIONS 2 */ @@ -33682,7 +33682,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1,f_int2) PARTITIONS 5 */ @@ -34213,16 +34213,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1 + f_int2,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -34755,14 +34755,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE ((f_int1 + f_int2) DIV 2) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -35287,14 +35287,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY HASH (f_int2) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -35827,21 +35827,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int2) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -36374,21 +36374,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int2 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -36919,13 +36919,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int2) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD diff --git a/mysql-test/suite/parts/r/partition_alter2_2_maria.result b/mysql-test/suite/parts/r/partition_alter2_2_maria.result index 2dc7023100c..f310169fb6e 100644 --- a/mysql-test/suite/parts/r/partition_alter2_2_maria.result +++ b/mysql-test/suite/parts/r/partition_alter2_2_maria.result @@ -1,5 +1,5 @@ SET @max_row = 20; -SET @@session.storage_engine = 'MARIA'; +SET @@session.storage_engine = 'Aria'; #------------------------------------------------------------------------ # 0. Setting of auxiliary variables + Creation of an auxiliary tables @@ -73,7 +73,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -540,7 +540,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -1021,16 +1021,16 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -1513,14 +1513,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -1993,14 +1993,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -2485,21 +2485,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -2980,21 +2980,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -3475,13 +3475,13 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -3963,7 +3963,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -4482,7 +4482,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -5015,16 +5015,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -5559,14 +5559,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -6091,14 +6091,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -6635,21 +6635,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -7182,21 +7182,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -7729,13 +7729,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -8267,7 +8267,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -8786,7 +8786,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -9319,16 +9319,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -9863,14 +9863,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -10395,14 +10395,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -10939,21 +10939,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -11486,21 +11486,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -12033,13 +12033,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx1` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -12574,7 +12574,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -13042,7 +13042,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -13524,16 +13524,16 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -14017,14 +14017,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -14502,14 +14502,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -14995,21 +14995,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -15495,21 +15495,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -15991,13 +15991,13 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -16478,7 +16478,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1 + f_int2) PARTITIONS 2 */ @@ -16946,7 +16946,7 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1,f_int2) PARTITIONS 5 */ @@ -17428,16 +17428,16 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1 + f_int2,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -17921,14 +17921,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE ((f_int1 + f_int2) DIV 2) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -18406,14 +18406,14 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY HASH (f_int2) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -18899,21 +18899,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int2) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -19399,21 +19399,21 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int2 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -19895,13 +19895,13 @@ t1 CREATE TABLE `t1` ( `f_char1` char(20) DEFAULT NULL, `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int2) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -20384,7 +20384,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -20904,7 +20904,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -21438,16 +21438,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -21983,14 +21983,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -22520,14 +22520,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -23065,21 +23065,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -23617,21 +23617,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -24165,13 +24165,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -24704,7 +24704,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1 + f_int2) PARTITIONS 2 */ @@ -25224,7 +25224,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1,f_int2) PARTITIONS 5 */ @@ -25758,16 +25758,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1 + f_int2,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -26303,14 +26303,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE ((f_int1 + f_int2) DIV 2) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -26840,14 +26840,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY HASH (f_int2) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -27385,21 +27385,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int2) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -27937,21 +27937,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int2 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -28485,13 +28485,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int1`,`f_int2`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int2) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -29024,7 +29024,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1) PARTITIONS 2 */ @@ -29544,7 +29544,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1) PARTITIONS 5 */ @@ -30078,16 +30078,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -30623,14 +30623,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -31160,14 +31160,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1 DIV 2) SUBPARTITION BY HASH (f_int1) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -31705,21 +31705,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int1) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -32257,21 +32257,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int1 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -32805,13 +32805,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int1) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD @@ -33344,7 +33344,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (f_int1 + f_int2) PARTITIONS 2 */ @@ -33864,7 +33864,7 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY KEY (f_int1,f_int2) PARTITIONS 5 */ @@ -34398,16 +34398,16 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (MOD(f_int1 + f_int2,4)) -(PARTITION part_3 VALUES IN (-3) ENGINE = MARIA, - PARTITION part_2 VALUES IN (-2) ENGINE = MARIA, - PARTITION part_1 VALUES IN (-1) ENGINE = MARIA, - PARTITION part_N VALUES IN (NULL) ENGINE = MARIA, - PARTITION part0 VALUES IN (0) ENGINE = MARIA, - PARTITION part1 VALUES IN (1) ENGINE = MARIA, - PARTITION part2 VALUES IN (2) ENGINE = MARIA, - PARTITION part3 VALUES IN (3) ENGINE = MARIA) */ +(PARTITION part_3 VALUES IN (-3) ENGINE = Aria, + PARTITION part_2 VALUES IN (-2) ENGINE = Aria, + PARTITION part_1 VALUES IN (-1) ENGINE = Aria, + PARTITION part_N VALUES IN (NULL) ENGINE = Aria, + PARTITION part0 VALUES IN (0) ENGINE = Aria, + PARTITION part1 VALUES IN (1) ENGINE = Aria, + PARTITION part2 VALUES IN (2) ENGINE = Aria, + PARTITION part3 VALUES IN (3) ENGINE = Aria) */ unified filelist t1#P#part0.MAD @@ -34943,14 +34943,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE ((f_int1 + f_int2) DIV 2) -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (15) ENGINE = MARIA, - PARTITION parte VALUES LESS THAN (20) ENGINE = MARIA, - PARTITION partf VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (15) ENGINE = Aria, + PARTITION parte VALUES LESS THAN (20) ENGINE = Aria, + PARTITION partf VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta.MAD @@ -35480,14 +35480,14 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY HASH (f_int2) SUBPARTITIONS 2 -(PARTITION parta VALUES LESS THAN (0) ENGINE = MARIA, - PARTITION partb VALUES LESS THAN (5) ENGINE = MARIA, - PARTITION partc VALUES LESS THAN (10) ENGINE = MARIA, - PARTITION partd VALUES LESS THAN (2147483646) ENGINE = MARIA) */ +(PARTITION parta VALUES LESS THAN (0) ENGINE = Aria, + PARTITION partb VALUES LESS THAN (5) ENGINE = Aria, + PARTITION partc VALUES LESS THAN (10) ENGINE = Aria, + PARTITION partd VALUES LESS THAN (2147483646) ENGINE = Aria) */ unified filelist t1#P#parta#SP#partasp0.MAD @@ -36025,21 +36025,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (f_int1) SUBPARTITION BY KEY (f_int2) (PARTITION part1 VALUES LESS THAN (0) - (SUBPARTITION subpart11 ENGINE = MARIA, - SUBPARTITION subpart12 ENGINE = MARIA), + (SUBPARTITION subpart11 ENGINE = Aria, + SUBPARTITION subpart12 ENGINE = Aria), PARTITION part2 VALUES LESS THAN (5) - (SUBPARTITION subpart21 ENGINE = MARIA, - SUBPARTITION subpart22 ENGINE = MARIA), + (SUBPARTITION subpart21 ENGINE = Aria, + SUBPARTITION subpart22 ENGINE = Aria), PARTITION part3 VALUES LESS THAN (10) - (SUBPARTITION subpart31 ENGINE = MARIA, - SUBPARTITION subpart32 ENGINE = MARIA), + (SUBPARTITION subpart31 ENGINE = Aria, + SUBPARTITION subpart32 ENGINE = Aria), PARTITION part4 VALUES LESS THAN (2147483646) - (SUBPARTITION subpart41 ENGINE = MARIA, - SUBPARTITION subpart42 ENGINE = MARIA)) */ + (SUBPARTITION subpart41 ENGINE = Aria, + SUBPARTITION subpart42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#subpart11.MAD @@ -36577,21 +36577,21 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,3))) SUBPARTITION BY HASH (f_int2 + 1) (PARTITION part1 VALUES IN (0) - (SUBPARTITION sp11 ENGINE = MARIA, - SUBPARTITION sp12 ENGINE = MARIA), + (SUBPARTITION sp11 ENGINE = Aria, + SUBPARTITION sp12 ENGINE = Aria), PARTITION part2 VALUES IN (1) - (SUBPARTITION sp21 ENGINE = MARIA, - SUBPARTITION sp22 ENGINE = MARIA), + (SUBPARTITION sp21 ENGINE = Aria, + SUBPARTITION sp22 ENGINE = Aria), PARTITION part3 VALUES IN (2) - (SUBPARTITION sp31 ENGINE = MARIA, - SUBPARTITION sp32 ENGINE = MARIA), + (SUBPARTITION sp31 ENGINE = Aria, + SUBPARTITION sp32 ENGINE = Aria), PARTITION part4 VALUES IN (NULL) - (SUBPARTITION sp41 ENGINE = MARIA, - SUBPARTITION sp42 ENGINE = MARIA)) */ + (SUBPARTITION sp41 ENGINE = Aria, + SUBPARTITION sp42 ENGINE = Aria)) */ unified filelist t1#P#part1#SP#sp11.MAD @@ -37125,13 +37125,13 @@ t1 CREATE TABLE `t1` ( `f_char2` char(20) DEFAULT NULL, `f_charbig` varchar(1000) DEFAULT NULL, UNIQUE KEY `uidx` (`f_int2`,`f_int1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY LIST (ABS(MOD(f_int1,2))) SUBPARTITION BY KEY (f_int2) SUBPARTITIONS 3 -(PARTITION part1 VALUES IN (0) ENGINE = MARIA, - PARTITION part2 VALUES IN (1) ENGINE = MARIA, - PARTITION part3 VALUES IN (NULL) ENGINE = MARIA) */ +(PARTITION part1 VALUES IN (0) ENGINE = Aria, + PARTITION part2 VALUES IN (1) ENGINE = Aria, + PARTITION part3 VALUES IN (NULL) ENGINE = Aria) */ unified filelist t1#P#part1#SP#part1sp0.MAD diff --git a/mysql-test/suite/parts/r/partition_auto_increment_maria.result b/mysql-test/suite/parts/r/partition_auto_increment_maria.result index 228f93196f2..b9310a2a314 100644 --- a/mysql-test/suite/parts/r/partition_auto_increment_maria.result +++ b/mysql-test/suite/parts/r/partition_auto_increment_maria.result @@ -3,13 +3,13 @@ DROP TABLE IF EXISTS t1; CREATE TABLE t1 ( c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE='MARIA'; +ENGINE='Aria'; SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1'; AUTO_INCREMENT @@ -71,20 +71,20 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE='MARIA'; +ENGINE='Aria'; SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 FLUSH TABLE; SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 INSERT INTO t1 VALUES (4); FLUSH TABLE; SHOW CREATE TABLE t1; @@ -92,7 +92,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 INSERT INTO t1 VALUES (NULL); FLUSH TABLE; SHOW CREATE TABLE t1; @@ -100,7 +100,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=6 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria AUTO_INCREMENT=6 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 DELETE FROM t1; INSERT INTO t1 VALUES (NULL); SHOW CREATE TABLE t1; @@ -108,7 +108,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=7 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria AUTO_INCREMENT=7 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 SELECT * FROM t1 ORDER BY c1; c1 6 @@ -119,7 +119,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 SELECT * FROM t1 ORDER BY c1; c1 1 @@ -134,12 +134,12 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=102 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 +) ENGINE=Aria AUTO_INCREMENT=102 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 DROP TABLE t1; CREATE TABLE t1 (a INT NULL AUTO_INCREMENT, UNIQUE KEY (a)) -ENGINE='MARIA'; +ENGINE='Aria'; SET LAST_INSERT_ID = 999; SET INSERT_ID = 0; INSERT INTO t1 SET a = 1 ON DUPLICATE KEY UPDATE a = NULL; @@ -176,7 +176,7 @@ SET INSERT_ID = 1; CREATE TABLE t1 ( c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE='MARIA' +ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 2; INSERT INTO t1 VALUES (NULL); @@ -185,7 +185,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ SELECT * FROM t1; @@ -197,7 +197,7 @@ CREATE TABLE t1 ( c1 INT, c2 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c2)) -ENGINE='MARIA' +ENGINE='Aria' PARTITION BY HASH(c2) PARTITIONS 2; INSERT INTO t1 VALUES (1, NULL); @@ -215,7 +215,7 @@ CREATE TABLE t1 ( c1 INT, c2 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c2)) -ENGINE='MARIA' +ENGINE='Aria' PARTITION BY HASH(c2) PARTITIONS 2; INSERT INTO t1 VALUES (1, 0); @@ -236,7 +236,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE='MARIA' +ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 2; INSERT INTO t1 VALUES (2), (4), (NULL); @@ -287,7 +287,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE='MARIA' +ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 2; SET @@session.auto_increment_increment = 10; @@ -335,7 +335,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE='MARIA' +ENGINE='Aria' PARTITION BY HASH (c1) PARTITIONS 2; SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' @@ -409,7 +409,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=27 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=27 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ SELECT * FROM t1 ORDER BY c1; @@ -422,7 +422,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=28 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=28 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ SELECT * FROM t1 ORDER BY c1; @@ -439,14 +439,14 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=102 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=102 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ DROP TABLE t1; # Test with two threads # con default CREATE TABLE t1 (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE = 'MARIA' +ENGINE = 'Aria' PARTITION BY HASH(c1) PARTITIONS 2; INSERT INTO t1 (c1) VALUES (2); @@ -485,7 +485,7 @@ DROP TABLE t1; # Test with two threads + start transaction NO PARTITIONING # con default CREATE TABLE t1 (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE = 'MARIA'; +ENGINE = 'Aria'; START TRANSACTION; INSERT INTO t1 (c1) VALUES (2); INSERT INTO t1 (c1) VALUES (4); @@ -566,7 +566,7 @@ DROP TABLE t1; # Test with two threads + start transaction # con default CREATE TABLE t1 (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE = 'MARIA' +ENGINE = 'Aria' PARTITION BY HASH(c1) PARTITIONS 2; START TRANSACTION; @@ -648,7 +648,7 @@ CREATE TABLE t1 ( c1 INT NOT NULL AUTO_INCREMENT, c2 INT, PRIMARY KEY (c1,c2)) -ENGINE = 'MARIA' +ENGINE = 'Aria' PARTITION BY HASH(c2) PARTITIONS 2; INSERT INTO t1 VALUES (1, 0); @@ -678,7 +678,7 @@ CREATE TABLE t1 ( c1 INT, c2 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c2)) -ENGINE = 'MARIA' +ENGINE = 'Aria' PARTITION BY HASH(c2) PARTITIONS 2; INSERT INTO t1 VALUES (1, 0); @@ -706,7 +706,7 @@ CREATE TABLE t1 ( c1 INT, c2 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1,c2)) -ENGINE = 'MARIA' +ENGINE = 'Aria' PARTITION BY HASH(c2) PARTITIONS 2; INSERT INTO t1 VALUES (1, 0); @@ -731,7 +731,7 @@ c1 c2 DROP TABLE t1; # Test AUTO_INCREMENT in CREATE CREATE TABLE t1 (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE = 'MARIA' +ENGINE = 'Aria' AUTO_INCREMENT = 15 PARTITION BY HASH(c1) PARTITIONS 2; @@ -740,7 +740,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=15 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=15 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ INSERT INTO t1 (c1) VALUES (4); @@ -749,7 +749,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=15 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=15 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ INSERT INTO t1 (c1) VALUES (0); @@ -758,7 +758,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=16 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=16 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ INSERT INTO t1 (c1) VALUES (NULL); @@ -767,7 +767,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=17 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=17 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ SELECT * FROM t1 ORDER BY c1; @@ -783,7 +783,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=301 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=301 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ INSERT INTO t1 (c1) VALUES (0); @@ -792,7 +792,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=301 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=301 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ INSERT INTO t1 (c1) VALUES (NULL); @@ -801,7 +801,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=302 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=302 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ SELECT * FROM t1 ORDER BY c1; @@ -816,7 +816,7 @@ SET @@session.sql_mode = ''; DROP TABLE t1; # Test SET INSERT_ID CREATE TABLE t1 (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE = 'MARIA' +ENGINE = 'Aria' PARTITION BY HASH(c1) PARTITIONS 2; SHOW CREATE TABLE t1; @@ -824,7 +824,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ INSERT INTO t1 (c1) VALUES (NULL); @@ -833,7 +833,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ SELECT * FROM t1; @@ -845,7 +845,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ INSERT INTO t1 (c1) VALUES (NULL); @@ -854,7 +854,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=24 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=24 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ SET INSERT_ID = 22; @@ -871,7 +871,7 @@ DROP TABLE t1; CREATE TABLE t1 ( c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (c1)) -ENGINE='MARIA' +ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 2; SHOW CREATE TABLE t1; @@ -879,7 +879,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ FLUSH TABLE; @@ -888,7 +888,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA DEFAULT CHARSET=latin1 +) ENGINE=Aria DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ INSERT INTO t1 VALUES (4); @@ -898,7 +898,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ INSERT INTO t1 VALUES (NULL); @@ -908,7 +908,7 @@ Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) -) ENGINE=MARIA AUTO_INCREMENT=6 DEFAULT CHARSET=latin1 +) ENGINE=Aria AUTO_INCREMENT=6 DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ SELECT * FROM t1 ORDER BY c1; @@ -922,7 +922,7 @@ DROP TABLE t1; ############################################################################## # Inserting negative autoincrement values into a partition table (partitions >= 4) CREATE TABLE t (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(c1), -c2 INT) ENGINE='MARIA' PARTITION BY HASH(c1) PARTITIONS 4; +c2 INT) ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 4; INSERT INTO t(c2) VALUES (10); INSERT INTO t(c2) VALUES (20); INSERT INTO t VALUES (-1,-10); @@ -939,7 +939,7 @@ DROP TABLE t; # Reading from a partition table (partitions >= 2 ) after inserting a negative # value into the auto increment column CREATE TABLE t (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(c1), -c2 INT) ENGINE='MARIA' PARTITION BY HASH(c1) PARTITIONS 2; +c2 INT) ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 2; INSERT INTO t VALUES (-2,-20); INSERT INTO t(c2) VALUES (30); SELECT * FROM t ORDER BY c1 ASC; @@ -950,7 +950,7 @@ DROP TABLE t; # Inserting negative auto increment value into a partition table (partitions >= 2) # auto increment value > 2. CREATE TABLE t (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(c1), -c2 INT) ENGINE='MARIA' PARTITION BY HASH(c1) PARTITIONS 2; +c2 INT) ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 2; INSERT INTO t VALUES (-4,-20); INSERT INTO t(c2) VALUES (30); INSERT INTO t(c2) VALUES (40); @@ -962,7 +962,7 @@ c1 c2 DROP TABLE t; # Inserting -1 into autoincrement column of a partition table (partition >= 4) CREATE TABLE t (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(c1), -c2 INT) ENGINE='MARIA' PARTITION BY HASH(c1) PARTITIONS 4; +c2 INT) ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 4; INSERT INTO t(c2) VALUES (10); INSERT INTO t(c2) VALUES (20); INSERT INTO t VALUES (-1,-10); @@ -981,7 +981,7 @@ c1 c2 DROP TABLE t; # Deleting from an auto increment table after inserting negative values CREATE TABLE t (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(c1), -c2 INT) ENGINE='MARIA' PARTITION BY HASH(c1) PARTITIONS 4; +c2 INT) ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 4; INSERT INTO t(c2) VALUES (10); INSERT INTO t(c2) VALUES (20); INSERT INTO t VALUES (-1,-10); @@ -1006,7 +1006,7 @@ DROP TABLE t; # Inserting a positive value that exceeds maximum allowed value for an # Auto Increment column (positive maximum) CREATE TABLE t (c1 TINYINT NOT NULL AUTO_INCREMENT, PRIMARY KEY(c1), -c2 INT) ENGINE='MARIA' PARTITION BY HASH(c1) PARTITIONS 4; +c2 INT) ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 4; INSERT INTO t(c2) VALUES (10); INSERT INTO t(c2) VALUES (20); INSERT INTO t VALUES (126,30); @@ -1025,7 +1025,7 @@ DROP TABLE t; # Inserting a negative value that goes below minimum allowed value for an # Auto Increment column (negative minimum) CREATE TABLE t (c1 TINYINT NOT NULL AUTO_INCREMENT, PRIMARY KEY(c1), -c2 INT) ENGINE='MARIA' PARTITION BY HASH(c1) PARTITIONS 4; +c2 INT) ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 4; INSERT INTO t(c2) VALUES (10); INSERT INTO t(c2) VALUES (20); INSERT INTO t VALUES (-127,30); @@ -1043,7 +1043,7 @@ c1 c2 DROP TABLE t; # Updating the partition table with a negative Auto Increment value CREATE TABLE t (c1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(c1), -c2 INT) ENGINE='MARIA' PARTITION BY HASH(c1) PARTITIONS 4; +c2 INT) ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 4; INSERT INTO t(c2) VALUES (10); INSERT INTO t(c2) VALUES (20); INSERT INTO t VALUES (-1,-10); @@ -1076,7 +1076,7 @@ DROP TABLE t; # Updating the partition table with a value that crosses the upper limits # on both the positive and the negative side. CREATE TABLE t (c1 TINYINT NOT NULL AUTO_INCREMENT, PRIMARY KEY(c1), -c2 INT) ENGINE='MARIA' PARTITION BY HASH(c1) PARTITIONS 4; +c2 INT) ENGINE='Aria' PARTITION BY HASH(c1) PARTITIONS 4; INSERT INTO t(c2) VALUES (10); INSERT INTO t(c2) VALUES (20); INSERT INTO t VALUES (126,30); @@ -1109,7 +1109,7 @@ DROP TABLE t; CREATE TABLE t1 (a INT NULL AUTO_INCREMENT, UNIQUE KEY (a)) -ENGINE='MARIA' +ENGINE='Aria' PARTITION BY KEY(a) PARTITIONS 2; SET LAST_INSERT_ID = 999; SET INSERT_ID = 0; diff --git a/mysql-test/suite/parts/r/partition_repair_myisam.result b/mysql-test/suite/parts/r/partition_repair_myisam.result index 4af00ddcc6d..058aff4ea4d 100644 --- a/mysql-test/suite/parts/r/partition_repair_myisam.result +++ b/mysql-test/suite/parts/r/partition_repair_myisam.result @@ -264,6 +264,7 @@ Table Op Msg_type Msg_text test.t1_will_crash analyze status OK OPTIMIZE TABLE t1_will_crash; Table Op Msg_type Msg_text +test.t1_will_crash optimize info Found row block followed by deleted block test.t1_will_crash optimize warning Number of rows changed from 8 to 7 test.t1_will_crash optimize status OK CHECK TABLE t1_will_crash; diff --git a/mysql-test/suite/parts/t/partition_alter2_1_maria.test b/mysql-test/suite/parts/t/partition_alter2_1_maria.test index 88be2fb785f..47f6c4cb302 100644 --- a/mysql-test/suite/parts/t/partition_alter2_1_maria.test +++ b/mysql-test/suite/parts/t/partition_alter2_1_maria.test @@ -3,7 +3,7 @@ # # # Purpose: # # Tests around Alter column used in partitioning function # -# MARIA branch # +# Aria branch # # # #------------------------------------------------------------------------------# # Original Author: mleich # @@ -14,7 +14,7 @@ ################################################################################ # -# NOTE: PLEASE DO NOT ADD NOT MARIA SPECIFIC TESTCASES HERE ! +# NOTE: PLEASE DO NOT ADD NOT Aria SPECIFIC TESTCASES HERE ! # TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN # THE SOURCED FILES ONLY. # @@ -54,14 +54,14 @@ let $more_pk_ui_tests= 0; ##### Storage engine to be tested --source include/have_maria.inc -let $engine= 'MARIA'; +let $engine= 'Aria'; ##### Execute the test of "table" files -# MARIA has files per PK, UI, ... +# Aria has files per PK, UI, ... let $do_file_tests= 1; ##### Execute PRIMARY KEY tests ##### -# AFAIK MARIA treats PRIMARY KEYs like UNIQUE INDEXes +# AFAIK Aria treats PRIMARY KEYs like UNIQUE INDEXes let $do_pk_tests= 0; ##### Assign a big number smaller than the maximum value for partitions ##### diff --git a/mysql-test/suite/parts/t/partition_alter2_2_maria.test b/mysql-test/suite/parts/t/partition_alter2_2_maria.test index 5e8b9b7d9f2..e8172de3fb4 100644 --- a/mysql-test/suite/parts/t/partition_alter2_2_maria.test +++ b/mysql-test/suite/parts/t/partition_alter2_2_maria.test @@ -3,7 +3,7 @@ # # # Purpose: # # Tests around Alter column used in partitioning function # -# MARIA branch # +# Aria branch # # # #------------------------------------------------------------------------------# # Original Author: mleich # @@ -14,7 +14,7 @@ ################################################################################ # -# NOTE: PLEASE DO NOT ADD NOT MARIA SPECIFIC TESTCASES HERE ! +# NOTE: PLEASE DO NOT ADD NOT Aria SPECIFIC TESTCASES HERE ! # TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN # THE SOURCED FILES ONLY. # @@ -54,14 +54,14 @@ let $more_pk_ui_tests= 0; ##### Storage engine to be tested --source include/have_maria.inc -let $engine= 'MARIA'; +let $engine= 'Aria'; ##### Execute the test of "table" files # MAARIA has files per PK, UI, ... let $do_file_tests= 1; ##### Execute PRIMARY KEY tests ##### -# AFAIK MARIA treats PRIMARY KEYs like UNIQUE INDEXes +# AFAIK Aria treats PRIMARY KEYs like UNIQUE INDEXes let $do_pk_tests= 0; ##### Assign a big number smaller than the maximum value for partitions ##### diff --git a/mysql-test/suite/parts/t/partition_auto_increment_maria.test b/mysql-test/suite/parts/t/partition_auto_increment_maria.test index 5f1515ec929..2a77a9e4b61 100644 --- a/mysql-test/suite/parts/t/partition_auto_increment_maria.test +++ b/mysql-test/suite/parts/t/partition_auto_increment_maria.test @@ -27,7 +27,7 @@ ##### Storage engine to be tested --source include/have_maria.inc -let $engine= 'MARIA'; +let $engine= 'Aria'; #------------------------------------------------------------------------------# # Execute the tests to be applied to all storage engines diff --git a/mysql-test/suite/pbxt/r/grant.result b/mysql-test/suite/pbxt/r/grant.result index 74cac3ea4f0..68395661db3 100644 --- a/mysql-test/suite/pbxt/r/grant.result +++ b/mysql-test/suite/pbxt/r/grant.result @@ -11,8 +11,8 @@ GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3 GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost' grant delete on mysqltest.* to mysqltest_1@localhost; select * from mysql.user where user="mysqltest_1"; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N SPECIFIED EDH-RSA-DES-CBC3-SHA 0 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N SPECIFIED EDH-RSA-DES-CBC3-SHA 0 0 0 0 show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA' @@ -42,15 +42,15 @@ delete from mysql.user where user='mysqltest_1'; flush privileges; grant usage on *.* to mysqltest_1@localhost with max_queries_per_hour 10; select * from mysql.user where user="mysqltest_1"; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 10 0 0 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 10 0 0 0 show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 grant usage on *.* to mysqltest_1@localhost with max_updates_per_hour 20 max_connections_per_hour 30; select * from mysql.user where user="mysqltest_1"; -Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections -localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 10 20 30 0 +Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv Event_priv Trigger_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections plugin auth_string +localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N N N 10 20 30 0 show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30 @@ -162,6 +162,7 @@ Warnings: Warning 1364 Field 'ssl_cipher' doesn't have a default value Warning 1364 Field 'x509_issuer' doesn't have a default value Warning 1364 Field 'x509_subject' doesn't have a default value +Warning 1364 Field 'auth_string' doesn't have a default value insert into mysql.db (host, db, user, select_priv) values ('localhost', 'a%', 'test11', 'Y'), ('localhost', 'ab%', 'test11', 'Y'); alter table mysql.db order by db asc; diff --git a/mysql-test/suite/pbxt/r/group_min_max.result b/mysql-test/suite/pbxt/r/group_min_max.result index 0694a408f55..a591832bc0d 100644 --- a/mysql-test/suite/pbxt/r/group_min_max.result +++ b/mysql-test/suite/pbxt/r/group_min_max.result @@ -2199,7 +2199,7 @@ max(b) a SHOW STATUS LIKE 'handler_read__e%'; Variable_name Value Handler_read_key 0 -Handler_read_next 0 +Handler_read_next 15 EXPLAIN SELECT max(b), a FROM t1 GROUP BY a; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 index NULL a 10 NULL 15 Using index @@ -2208,7 +2208,7 @@ CREATE TABLE t2 SELECT max(b), a FROM t1 GROUP BY a; SHOW STATUS LIKE 'handler_read__e%'; Variable_name Value Handler_read_key 0 -Handler_read_next 0 +Handler_read_next 15 FLUSH STATUS; SELECT * FROM (SELECT max(b), a FROM t1 GROUP BY a) b; max(b) a @@ -2219,7 +2219,7 @@ max(b) a SHOW STATUS LIKE 'handler_read__e%'; Variable_name Value Handler_read_key 0 -Handler_read_next 0 +Handler_read_next 15 FLUSH STATUS; (SELECT max(b), a FROM t1 GROUP BY a) UNION (SELECT max(b), a FROM t1 GROUP BY a); @@ -2231,7 +2231,7 @@ max(b) a SHOW STATUS LIKE 'handler_read__e%'; Variable_name Value Handler_read_key 0 -Handler_read_next 0 +Handler_read_next 30 EXPLAIN (SELECT max(b), a FROM t1 GROUP BY a) UNION (SELECT max(b), a FROM t1 GROUP BY a); id select_type table type possible_keys key key_len ref rows Extra @@ -2282,7 +2282,7 @@ INSERT INTO t3 SELECT a,MAX(b) FROM t1 GROUP BY a; SHOW STATUS LIKE 'handler_read__e%'; Variable_name Value Handler_read_key 0 -Handler_read_next 0 +Handler_read_next 15 DELETE FROM t3; FLUSH STATUS; INSERT INTO t3 SELECT 1, (SELECT MAX(b) FROM t1 GROUP BY a HAVING a < 2) @@ -2290,13 +2290,13 @@ FROM t1 LIMIT 1; SHOW STATUS LIKE 'handler_read__e%'; Variable_name Value Handler_read_key 0 -Handler_read_next 0 +Handler_read_next 15 FLUSH STATUS; DELETE FROM t3 WHERE (SELECT MAX(b) FROM t1 GROUP BY a HAVING a < 2) > 10000; SHOW STATUS LIKE 'handler_read__e%'; Variable_name Value Handler_read_key 0 -Handler_read_next 0 +Handler_read_next 15 FLUSH STATUS; DELETE FROM t3 WHERE (SELECT (SELECT MAX(b) FROM t1 GROUP BY a HAVING a < 2) x FROM t1) > 10000; @@ -2304,7 +2304,7 @@ ERROR 21000: Subquery returns more than 1 row SHOW STATUS LIKE 'handler_read__e%'; Variable_name Value Handler_read_key 0 -Handler_read_next 0 +Handler_read_next 16 DROP TABLE t1,t2,t3; CREATE TABLE t1 (a int, INDEX idx(a)); INSERT INTO t1 VALUES diff --git a/mysql-test/suite/pbxt/r/limit.result b/mysql-test/suite/pbxt/r/limit.result index 9bbf54fcfe9..dd53cb7deec 100644 --- a/mysql-test/suite/pbxt/r/limit.result +++ b/mysql-test/suite/pbxt/r/limit.result @@ -23,7 +23,7 @@ a b 2 2 3 2 4 4 -delete from t1 where b=2 limit 1; +delete from t1 where b=2 order by a limit 1; select * from t1 order by a; a b 0 0 diff --git a/mysql-test/suite/pbxt/r/mysqlshow.result b/mysql-test/suite/pbxt/r/mysqlshow.result index 1957e00daef..674ec1a7cda 100644 --- a/mysql-test/suite/pbxt/r/mysqlshow.result +++ b/mysql-test/suite/pbxt/r/mysqlshow.result @@ -80,6 +80,7 @@ Database: information_schema | Tables | +---------------------------------------+ | CHARACTER_SETS | +| CLIENT_STATISTICS | | COLLATIONS | | COLLATION_CHARACTER_SET_APPLICABILITY | | COLUMNS | @@ -89,6 +90,8 @@ Database: information_schema | FILES | | GLOBAL_STATUS | | GLOBAL_VARIABLES | +| INDEX_STATISTICS | +| KEY_CACHES | | KEY_COLUMN_USAGE | | PARTITIONS | | PLUGINS | @@ -104,8 +107,10 @@ Database: information_schema | TABLES | | TABLE_CONSTRAINTS | | TABLE_PRIVILEGES | +| TABLE_STATISTICS | | TRIGGERS | | USER_PRIVILEGES | +| USER_STATISTICS | | VIEWS | | INNODB_BUFFER_POOL_PAGES | | PBXT_STATISTICS | @@ -132,6 +137,7 @@ Database: INFORMATION_SCHEMA | Tables | +---------------------------------------+ | CHARACTER_SETS | +| CLIENT_STATISTICS | | COLLATIONS | | COLLATION_CHARACTER_SET_APPLICABILITY | | COLUMNS | @@ -141,6 +147,8 @@ Database: INFORMATION_SCHEMA | FILES | | GLOBAL_STATUS | | GLOBAL_VARIABLES | +| INDEX_STATISTICS | +| KEY_CACHES | | KEY_COLUMN_USAGE | | PARTITIONS | | PLUGINS | @@ -156,8 +164,10 @@ Database: INFORMATION_SCHEMA | TABLES | | TABLE_CONSTRAINTS | | TABLE_PRIVILEGES | +| TABLE_STATISTICS | | TRIGGERS | | USER_PRIVILEGES | +| USER_STATISTICS | | VIEWS | | INNODB_BUFFER_POOL_PAGES | | PBXT_STATISTICS | diff --git a/mysql-test/suite/pbxt/r/null_key.result b/mysql-test/suite/pbxt/r/null_key.result index 753ebf31f1c..8a440284c53 100644 --- a/mysql-test/suite/pbxt/r/null_key.result +++ b/mysql-test/suite/pbxt/r/null_key.result @@ -423,9 +423,9 @@ FOUND_ROWS() SHOW STATUS LIKE "handler_read%"; Variable_name Value Handler_read_first 0 -Handler_read_key 0 -Handler_read_next 0 +Handler_read_key 6 +Handler_read_next 2 Handler_read_prev 0 Handler_read_rnd 0 -Handler_read_rnd_next 0 +Handler_read_rnd_next 5 DROP TABLE t1,t2,t3,t4; diff --git a/mysql-test/suite/pbxt/r/partition_pruning.result b/mysql-test/suite/pbxt/r/partition_pruning.result index 64f2283fa3a..6adc79ce1ff 100644 --- a/mysql-test/suite/pbxt/r/partition_pruning.result +++ b/mysql-test/suite/pbxt/r/partition_pruning.result @@ -390,7 +390,7 @@ flush status; update t1 set a=100 where a+1=5+1; show status like 'Handler_read_rnd_next'; Variable_name Value -Handler_read_rnd_next 0 +Handler_read_rnd_next 10 flush status; delete from t1 where a=5; show status like 'Handler_read_rnd_next'; @@ -400,7 +400,7 @@ flush status; delete from t1 where a+1=5+1; show status like 'Handler_read_rnd_next'; Variable_name Value -Handler_read_rnd_next 0 +Handler_read_rnd_next 10 create table t2 like t1; insert into t2 select * from t2; flush status; @@ -468,7 +468,7 @@ flush status; update t2 set b = 100 where b = 6; show status like 'Handler_read_rnd_next'; Variable_name Value -Handler_read_rnd_next 0 +Handler_read_rnd_next 1015 flush status; update t2 set a = 1002 where a = 1001; show status like 'Handler_read_rnd_next'; @@ -478,17 +478,17 @@ flush status; update t2 set b = 6 where a = 600; show status like 'Handler_read_rnd_next'; Variable_name Value -Handler_read_rnd_next 0 +Handler_read_rnd_next 201 flush status; update t2 set b = 6 where a > 600 and a < 800; show status like 'Handler_read_rnd_next'; Variable_name Value -Handler_read_rnd_next 0 +Handler_read_rnd_next 201 flush status; delete from t2 where a > 600; show status like 'Handler_read_rnd_next'; Variable_name Value -Handler_read_rnd_next 0 +Handler_read_rnd_next 402 drop table t2; CREATE TABLE `t2` ( `a` int(11) default NULL, @@ -605,7 +605,7 @@ Variable_name Value Handler_read_rnd_next 0 show status like 'Handler_read_key'; Variable_name Value -Handler_read_key 0 +Handler_read_key 5 flush status; update t2 set a = 111 where b in (5,6); show status like 'Handler_read_rnd_next'; @@ -613,7 +613,7 @@ Variable_name Value Handler_read_rnd_next 0 show status like 'Handler_read_key'; Variable_name Value -Handler_read_key 0 +Handler_read_key 10 flush status; update t2 set a = 222 where b = 7; show status like 'Handler_read_rnd_next'; @@ -621,7 +621,7 @@ Variable_name Value Handler_read_rnd_next 0 show status like 'Handler_read_key'; Variable_name Value -Handler_read_key 0 +Handler_read_key 5 flush status; delete from t2 where b = 7; show status like 'Handler_read_rnd_next'; @@ -629,7 +629,7 @@ Variable_name Value Handler_read_rnd_next 0 show status like 'Handler_read_key'; Variable_name Value -Handler_read_key 0 +Handler_read_key 5 flush status; delete from t2 where b > 5; show status like 'Handler_read_rnd_next'; @@ -637,13 +637,13 @@ Variable_name Value Handler_read_rnd_next 0 show status like 'Handler_read_key'; Variable_name Value -Handler_read_key 0 +Handler_read_key 5 show status like 'Handler_read_prev'; Variable_name Value Handler_read_prev 0 show status like 'Handler_read_next'; Variable_name Value -Handler_read_next 0 +Handler_read_next 300 flush status; delete from t2 where b < 5 or b > 3; show status like 'Handler_read_rnd_next'; @@ -651,13 +651,13 @@ Variable_name Value Handler_read_rnd_next 0 show status like 'Handler_read_key'; Variable_name Value -Handler_read_key 0 +Handler_read_key 10 show status like 'Handler_read_prev'; Variable_name Value Handler_read_prev 0 show status like 'Handler_read_next'; Variable_name Value -Handler_read_next 0 +Handler_read_next 510 drop table t1, t2; create table t1 ( f_int1 mediumint, f_int2 integer) partition by list(mod(f_int1,4)) ( diff --git a/mysql-test/suite/pbxt/r/ps_11bugs.result b/mysql-test/suite/pbxt/r/ps_11bugs.result index fad35b97b24..0be781bca27 100644 --- a/mysql-test/suite/pbxt/r/ps_11bugs.result +++ b/mysql-test/suite/pbxt/r/ps_11bugs.result @@ -120,9 +120,9 @@ create table t1 (a int primary key); insert into t1 values (1); explain select * from t1 where 3 in (select (1+1) union select 1); id select_type table type possible_keys key key_len ref rows Extra -1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables -2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible HAVING -3 DEPENDENT UNION NULL NULL NULL NULL NULL NULL NULL Impossible HAVING +1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE +2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible HAVING +3 UNION NULL NULL NULL NULL NULL NULL NULL Impossible HAVING NULL UNION RESULT <union2,3> ALL NULL NULL NULL NULL NULL select * from t1 where 3 in (select (1+1) union select 1); a diff --git a/mysql-test/suite/pbxt/r/select.result b/mysql-test/suite/pbxt/r/select.result index 7ba4e3e5ed8..36bf4ea82ad 100644 --- a/mysql-test/suite/pbxt/r/select.result +++ b/mysql-test/suite/pbxt/r/select.result @@ -2786,10 +2786,10 @@ id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away explain select max(key1) from t1 where key1 <= 0.6158 and rand() + 0.5 >= 0.5; id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away +1 SIMPLE t1 index key1 key1 5 NULL 4 Using where; Using index explain select min(key1) from t1 where key1 >= 0.3762 and rand() + 0.5 >= 0.5; id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away +1 SIMPLE t1 index key1 key1 5 NULL 4 Using where; Using index select max(key1) from t1 where key1 <= 0.6158; max(key1) 0.615800023078918 @@ -2808,10 +2808,10 @@ max(key1) min(key2) 0.615800023078918 1.37619996070862 select max(key1) from t1 where key1 <= 0.6158 and rand() + 0.5 >= 0.5; max(key1) -0.615800023078918 +0.384499996900558 select min(key1) from t1 where key1 >= 0.3762 and rand() + 0.5 >= 0.5; min(key1) -0.376199990510941 +0.384499996900558 DROP TABLE t1,t2; CREATE TABLE t1 (i BIGINT UNSIGNED NOT NULL); INSERT INTO t1 VALUES (10); diff --git a/mysql-test/suite/pbxt/r/subselect.result b/mysql-test/suite/pbxt/r/subselect.result index ebe74e442a2..0b5c98324f4 100644 --- a/mysql-test/suite/pbxt/r/subselect.result +++ b/mysql-test/suite/pbxt/r/subselect.result @@ -270,7 +270,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where 2 SUBQUERY t2 ALL NULL NULL NULL NULL 3 100.00 Warnings: -Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <nop>((`test`.`t3`.`a` >= (select min(`test`.`t2`.`b`) from `test`.`t2`))) +Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <nop>(((select min(`test`.`t2`.`b`) from `test`.`t2`) <= `test`.`t3`.`a`)) select * from t3 where a >= all (select b from t2); a 7 @@ -363,9 +363,9 @@ INSERT INTO t8 (pseudo,email) VALUES ('2joce1','2test1'); EXPLAIN EXTENDED SELECT pseudo,(SELECT email FROM t8 WHERE pseudo=(SELECT pseudo FROM t8 WHERE pseudo='joce')) FROM t8 WHERE pseudo=(SELECT pseudo FROM t8 WHERE pseudo='joce'); id select_type table type possible_keys key key_len ref rows filtered Extra 1 PRIMARY t8 const PRIMARY PRIMARY 37 const 1 100.00 Using index -4 SUBQUERY t8 const PRIMARY PRIMARY 37 1 100.00 Using index +4 SUBQUERY t8 const PRIMARY PRIMARY 37 const 1 100.00 Using index 2 SUBQUERY t8 const PRIMARY PRIMARY 37 const 1 100.00 -3 SUBQUERY t8 const PRIMARY PRIMARY 37 1 100.00 Using index +3 SUBQUERY t8 const PRIMARY PRIMARY 37 const 1 100.00 Using index Warnings: Note 1003 select 'joce' AS `pseudo`,(select 'test' from `test`.`t8` where 1) AS `(SELECT email FROM t8 WHERE pseudo=(SELECT pseudo FROM t8 WHERE pseudo='joce'))` from `test`.`t8` where 1 SELECT pseudo FROM t8 WHERE pseudo=(SELECT pseudo,email FROM @@ -1177,7 +1177,7 @@ SELECT 0 IN (SELECT 1 FROM t1 a); EXPLAIN EXTENDED SELECT 0 IN (SELECT 1 FROM t1 a); id select_type table type possible_keys key key_len ref rows filtered Extra 1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL No tables used -2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE +2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE Warnings: Note 1003 select <in_optimizer>(0,<exists>(select 1 from `test`.`t1` `a` where 0)) AS `0 IN (SELECT 1 FROM t1 a)` INSERT INTO t1 (pseudo) VALUES ('test1'); @@ -1187,7 +1187,7 @@ SELECT 0 IN (SELECT 1 FROM t1 a); EXPLAIN EXTENDED SELECT 0 IN (SELECT 1 FROM t1 a); id select_type table type possible_keys key key_len ref rows filtered Extra 1 PRIMARY NULL NULL NULL NULL NULL NULL NULL NULL No tables used -2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE +2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE Warnings: Note 1003 select <in_optimizer>(0,<exists>(select 1 from `test`.`t1` `a` where 0)) AS `0 IN (SELECT 1 FROM t1 a)` drop table t1; @@ -1407,7 +1407,7 @@ INSERT INTO t1 VALUES ('z','?'); select * from t1 where s1 > (select max(s2) from t1); ERROR HY000: Illegal mix of collations (latin1_german1_ci,IMPLICIT) and (latin1_swedish_ci,IMPLICIT) for operation '>' select * from t1 where s1 > any (select max(s2) from t1); -ERROR HY000: Illegal mix of collations (latin1_german1_ci,IMPLICIT) and (latin1_swedish_ci,IMPLICIT) for operation '>' +ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (latin1_german1_ci,IMPLICIT) for operation '<' drop table t1; create table t1(toid int,rd int); create table t2(userid int,pmnew int,pmtotal int); @@ -1483,7 +1483,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra Warnings: Note 1003 select `test`.`t1`.`s1` AS `s1`,(not(<in_optimizer>(`test`.`t1`.`s1`,<exists>(<index_lookup>(<cache>(`test`.`t1`.`s1`) in t2 on s1 checking NULL where (`test`.`t2`.`s1` < 'a2') having trigcond(<is_not_null_test>(`test`.`t2`.`s1`))))))) AS `s1 NOT IN (SELECT s1 FROM t2 WHERE s1 < 'a2')` from `test`.`t1` drop table t1,t2; -create table t2 (a int, b int); +create table t2 (a int, b int not null); create table t3 (a int); insert into t3 values (6),(7),(3); select * from t3 where a >= all (select b from t2); @@ -1496,7 +1496,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where 2 SUBQUERY t2 ALL NULL NULL NULL NULL 0 0.00 Warnings: -Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <not>((`test`.`t3`.`a` < (select max(`test`.`t2`.`b`) from `test`.`t2`))) +Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <not>(((select max(`test`.`t2`.`b`) from `test`.`t2`) > `test`.`t3`.`a`)) select * from t3 where a >= some (select b from t2); a explain extended select * from t3 where a >= some (select b from t2); @@ -1504,7 +1504,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where 2 SUBQUERY t2 ALL NULL NULL NULL NULL 0 0.00 Warnings: -Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <nop>((`test`.`t3`.`a` >= (select min(`test`.`t2`.`b`) from `test`.`t2`))) +Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <nop>(((select min(`test`.`t2`.`b`) from `test`.`t2`) <= `test`.`t3`.`a`)) select * from t3 where a >= all (select b from t2 group by 1); a 6 @@ -1515,7 +1515,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where 2 SUBQUERY t2 ALL NULL NULL NULL NULL 0 0.00 Using temporary; Using filesort Warnings: -Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <not>((`test`.`t3`.`a` < <max>(select `test`.`t2`.`b` from `test`.`t2` group by 1))) +Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <not>((<max>(select `test`.`t2`.`b` from `test`.`t2` group by 1) > `test`.`t3`.`a`)) select * from t3 where a >= some (select b from t2 group by 1); a explain extended select * from t3 where a >= some (select b from t2 group by 1); @@ -1523,7 +1523,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where 2 SUBQUERY t2 ALL NULL NULL NULL NULL 0 0.00 Using temporary; Using filesort Warnings: -Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <nop>((`test`.`t3`.`a` >= <min>(select `test`.`t2`.`b` from `test`.`t2` group by 1))) +Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <nop>((<min>(select `test`.`t2`.`b` from `test`.`t2` group by 1) <= `test`.`t3`.`a`)) select * from t3 where NULL >= any (select b from t2); a explain extended select * from t3 where NULL >= any (select b from t2); @@ -1566,7 +1566,7 @@ id select_type table type possible_keys key key_len ref rows filtered Extra 1 PRIMARY t3 ALL NULL NULL NULL NULL 3 100.00 Using where 2 SUBQUERY t2 ALL NULL NULL NULL NULL 4 100.00 Using temporary; Using filesort Warnings: -Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <not>((`test`.`t3`.`a` <= <max>(select max(`test`.`t2`.`b`) from `test`.`t2` group by `test`.`t2`.`a`))) +Note 1003 select `test`.`t3`.`a` AS `a` from `test`.`t3` where <not>((<max>(select max(`test`.`t2`.`b`) from `test`.`t2` group by `test`.`t2`.`a`) >= `test`.`t3`.`a`)) drop table t2, t3; CREATE TABLE `t1` ( `id` mediumint(9) NOT NULL auto_increment, `taskid` bigint(20) NOT NULL default '0', `dbid` int(11) NOT NULL default '0', `create_date` datetime NOT NULL default '0000-00-00 00:00:00', `last_update` datetime NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARSET=latin1 AUTO_INCREMENT=3 ; INSERT INTO `t1` (`id`, `taskid`, `dbid`, `create_date`,`last_update`) VALUES (1, 1, 15, '2003-09-29 10:31:36', '2003-09-29 10:31:36'), (2, 1, 21, now(), now()); diff --git a/mysql-test/suite/pbxt/r/update.result b/mysql-test/suite/pbxt/r/update.result index 3a690709c28..9154583fa81 100644 --- a/mysql-test/suite/pbxt/r/update.result +++ b/mysql-test/suite/pbxt/r/update.result @@ -271,7 +271,7 @@ a 0 show status like 'handler_read%'; Variable_name Value -Handler_read_first 0 +Handler_read_first 1 Handler_read_key 0 Handler_read_next 0 Handler_read_prev 0 @@ -289,8 +289,8 @@ Handler_read_first 0 Handler_read_key 0 Handler_read_next 0 Handler_read_prev 0 -Handler_read_rnd 0 -Handler_read_rnd_next 0 +Handler_read_rnd 2 +Handler_read_rnd_next 18 flush status; delete from t1 order by a limit 1; show status like 'handler_read%'; @@ -299,8 +299,8 @@ Handler_read_first 0 Handler_read_key 0 Handler_read_next 0 Handler_read_prev 0 -Handler_read_rnd 0 -Handler_read_rnd_next 0 +Handler_read_rnd 1 +Handler_read_rnd_next 9 flush status; delete from t1 order by a desc limit 1; show status like 'handler_read%'; @@ -309,8 +309,8 @@ Handler_read_first 0 Handler_read_key 0 Handler_read_next 0 Handler_read_prev 0 -Handler_read_rnd 0 -Handler_read_rnd_next 0 +Handler_read_rnd 1 +Handler_read_rnd_next 8 alter table t1 disable keys; Warnings: Note 1031 Table storage engine for 't1' doesn't have this option @@ -322,8 +322,8 @@ Handler_read_first 0 Handler_read_key 0 Handler_read_next 0 Handler_read_prev 0 -Handler_read_rnd 0 -Handler_read_rnd_next 0 +Handler_read_rnd 1 +Handler_read_rnd_next 7 select * from t1; a b 0 0 @@ -372,10 +372,10 @@ update t2 set a=3 where a=2; show status like 'handler_read%'; Variable_name Value Handler_read_first 0 -Handler_read_key 0 -Handler_read_next 0 +Handler_read_key 1 +Handler_read_next 1 Handler_read_prev 0 -Handler_read_rnd 0 +Handler_read_rnd 1 Handler_read_rnd_next 0 drop table t1, t2; create table t1(f1 int, `*f2` int); diff --git a/mysql-test/suite/pbxt/t/limit.test b/mysql-test/suite/pbxt/t/limit.test index 0844af8705d..a65d5060e4d 100644 --- a/mysql-test/suite/pbxt/t/limit.test +++ b/mysql-test/suite/pbxt/t/limit.test @@ -15,7 +15,7 @@ update t1 set b=2 where b=1 limit 2; select * from t1 order by a; # PBXT: required for consistent result update t1 set b=4 where b=1; select * from t1 order by a; # PBXT: required for consistent result -delete from t1 where b=2 limit 1; +delete from t1 where b=2 order by a limit 1; select * from t1 order by a; # PBXT: required for consistent result delete from t1 limit 1; select * from t1 order by a; # PBXT: required for consistent result diff --git a/mysql-test/suite/pbxt/t/multi_update.test b/mysql-test/suite/pbxt/t/multi_update.test index 12e91c79f22..1acd59ea626 100644 --- a/mysql-test/suite/pbxt/t/multi_update.test +++ b/mysql-test/suite/pbxt/t/multi_update.test @@ -20,6 +20,7 @@ create table t1(id1 int not null auto_increment primary key, t char(12)); create table t2(id2 int not null, t char(12)); create table t3(id3 int not null, t char(12), index(id3)); disable_query_log; +begin; let $1 = 100; while ($1) { @@ -38,6 +39,7 @@ while ($1) } dec $1; } +commit; enable_query_log; select count(*) from t1 where id1 > 95; @@ -75,6 +77,7 @@ drop table t1,t2,t3; create table t1(id1 int not null primary key, t varchar(100)) pack_keys = 1; create table t2(id2 int not null, t varchar(100), index(id2)) pack_keys = 1; disable_query_log; +begin; let $1 = 1000; while ($1) { @@ -87,6 +90,7 @@ while ($1) } dec $1; } +commit; enable_query_log; delete t1 from t1,t2 where t1.id1 = t2.id2 and t1.id1 > 500; drop table t1,t2; @@ -328,6 +332,7 @@ drop table t1,t2; create table t1 ( a int not null, b int not null) ; --disable_query_log +begin; insert into t1 values (1,1),(2,2),(3,3),(4,4); let $1=19; set @d=4; @@ -337,7 +342,7 @@ while ($1) eval set @d=@d*2; dec $1; } - +commit; --enable_query_log alter table t1 add index i1(a); delete from t1 where a > 2000000; diff --git a/mysql-test/suite/pbxt/t/subselect.test b/mysql-test/suite/pbxt/t/subselect.test index 15ccef0e025..154e8d1e627 100644 --- a/mysql-test/suite/pbxt/t/subselect.test +++ b/mysql-test/suite/pbxt/t/subselect.test @@ -925,7 +925,7 @@ drop table t1,t2; # # correct ALL optimisation # -create table t2 (a int, b int); +create table t2 (a int, b int not null); create table t3 (a int); insert into t3 values (6),(7),(3); select * from t3 where a >= all (select b from t2); diff --git a/mysql-test/suite/percona/innodb_sys_index.result b/mysql-test/suite/percona/innodb_sys_index.result new file mode 100644 index 00000000000..8bf4fa745ba --- /dev/null +++ b/mysql-test/suite/percona/innodb_sys_index.result @@ -0,0 +1,17 @@ +drop table if exists t1; +Warnings: +Note 1051 Unknown table 't1' +select @@version_comment limit 1 ; +@@version_comment +Source distribution +SELECT COUNT(*) FROM `information_schema`.`INNODB_SYS_INDEXES` ; +CREATE TABLE test.t1 ( `a` SERIAL NOT NULL , `b` VARCHAR( 255 ) NOT NULL , INDEX ( `b` ) ) ENGINE = InnoDB ; +SHOW TABLE STATUS FROM `information_schema` LIKE 'INNODB\_SYS\_INDEXES%' ; +drop table test.t1; +SHOW TABLE STATUS FROM `information_schema` LIKE 'INNODB\_SYS\_INDEXES%' ; +SELECT COUNT(*) FROM `information_schema`.`INNODB_SYS_INDEXES` ; +CREATE TABLE test.t1 ( `a` SERIAL NOT NULL , `b` VARCHAR( 255 ) NOT NULL , INDEX ( `b` ) ) ENGINE = InnoDB ; +SHOW TABLE STATUS FROM `information_schema` LIKE 'INNODB\_SYS\_INDEXES%' ; +SELECT COUNT(*) FROM `information_schema`.`INNODB_SYS_INDEXES` ; +drop table test.t1; +SHOW TABLE STATUS FROM `information_schema` LIKE 'INNODB\_SYS\_INDEXES%' ; diff --git a/mysql-test/suite/percona/innodb_sys_index.test b/mysql-test/suite/percona/innodb_sys_index.test new file mode 100644 index 00000000000..9b1ac4c87e8 --- /dev/null +++ b/mysql-test/suite/percona/innodb_sys_index.test @@ -0,0 +1,21 @@ +--source include/big_test.inc +--source include/have_innodb.inc + +drop table if exists t1; +# +# test for bug LP#875797 "Using 'innodb_sys_indexes' causes core dump" +# +select @@version_comment limit 1 ; +--disable_result_log +SELECT COUNT(*) FROM `information_schema`.`INNODB_SYS_INDEXES` ; +CREATE TABLE test.t1 ( `a` SERIAL NOT NULL , `b` VARCHAR( 255 ) NOT NULL , INDEX ( `b` ) ) ENGINE = InnoDB ; +SHOW TABLE STATUS FROM `information_schema` LIKE 'INNODB\_SYS\_INDEXES%' ; +drop table test.t1; +SHOW TABLE STATUS FROM `information_schema` LIKE 'INNODB\_SYS\_INDEXES%' ; +SELECT COUNT(*) FROM `information_schema`.`INNODB_SYS_INDEXES` ; +CREATE TABLE test.t1 ( `a` SERIAL NOT NULL , `b` VARCHAR( 255 ) NOT NULL , INDEX ( `b` ) ) ENGINE = InnoDB ; +SHOW TABLE STATUS FROM `information_schema` LIKE 'INNODB\_SYS\_INDEXES%' ; +SELECT COUNT(*) FROM `information_schema`.`INNODB_SYS_INDEXES` ; +drop table test.t1; +SHOW TABLE STATUS FROM `information_schema` LIKE 'INNODB\_SYS\_INDEXES%' ; +--enable_result_log diff --git a/mysql-test/suite/plugins/r/dialog.result b/mysql-test/suite/plugins/r/dialog.result new file mode 100644 index 00000000000..da3117fd491 --- /dev/null +++ b/mysql-test/suite/plugins/r/dialog.result @@ -0,0 +1,26 @@ +install plugin three_attempts soname 'dialog.so'; +create user test_dialog identified via three_attempts using 'SECRET'; +# +# -pSECRET is picked up, no questions asked. +# +select user(), current_user(); +user() current_user() +test_dialog@localhost test_dialog@% +# +# without -p. up to three questions are asked on the stdin. +# athentication is successful, the correct pasword is on the third line +# +Password, please: *** +Password, please: **** +Password, please: ****** +select user(), current_user(); +user() current_user() +test_dialog@localhost test_dialog@% +# +# athentication is unsuccessful, first three lines are all wrong +# +Password, please: *** +Password, please: **** +Password, please: ***** +drop user test_dialog; +uninstall plugin three_attempts; diff --git a/mysql-test/suite/plugins/r/feedback_plugin_install.result b/mysql-test/suite/plugins/r/feedback_plugin_install.result new file mode 100644 index 00000000000..b1b35072a08 --- /dev/null +++ b/mysql-test/suite/plugins/r/feedback_plugin_install.result @@ -0,0 +1,13 @@ +install plugin feedback soname 'feedback.so'; +select plugin_status from information_schema.plugins where plugin_name='feedback'; +plugin_status +ACTIVE +select * from information_schema.feedback where variable_name like 'feed%' + and variable_name not like '%_uid'; +VARIABLE_NAME VARIABLE_VALUE +FEEDBACK 1.1 +FEEDBACK_SEND_RETRY_WAIT 60 +FEEDBACK_SEND_TIMEOUT 60 +FEEDBACK_URL http://mariadb.org/feedback_plugin/post +FEEDBACK_USER_INFO mysql-test +uninstall plugin feedback; diff --git a/mysql-test/suite/plugins/r/feedback_plugin_load.result b/mysql-test/suite/plugins/r/feedback_plugin_load.result new file mode 100644 index 00000000000..d434d1282c5 --- /dev/null +++ b/mysql-test/suite/plugins/r/feedback_plugin_load.result @@ -0,0 +1,11 @@ +select plugin_status from information_schema.plugins where plugin_name='feedback'; +plugin_status +ACTIVE +select * from information_schema.feedback where variable_name like 'feed%' + and variable_name not like '%_uid'; +VARIABLE_NAME VARIABLE_VALUE +FEEDBACK 1.1 +FEEDBACK_SEND_RETRY_WAIT 60 +FEEDBACK_SEND_TIMEOUT 60 +FEEDBACK_URL http://mariadb.org/feedback_plugin/post +FEEDBACK_USER_INFO mysql-test diff --git a/mysql-test/suite/plugins/r/feedback_plugin_send.result b/mysql-test/suite/plugins/r/feedback_plugin_send.result new file mode 100644 index 00000000000..db622cb3f97 --- /dev/null +++ b/mysql-test/suite/plugins/r/feedback_plugin_send.result @@ -0,0 +1,15 @@ +select plugin_status from information_schema.plugins where plugin_name='feedback'; +plugin_status +ACTIVE +select * from information_schema.feedback where variable_name like 'feed%' + and variable_name not like '%_uid'; +VARIABLE_NAME VARIABLE_VALUE +FEEDBACK 1.1 +FEEDBACK_SEND_RETRY_WAIT 60 +FEEDBACK_SEND_TIMEOUT 60 +FEEDBACK_URL http://mariadb.org/feedback_plugin/post +FEEDBACK_USER_INFO mysql-test +feedback plugin: report to 'http://mariadb.org/feedback_plugin/post' was sent +feedback plugin: server replied 'ok' +feedback plugin: report to 'http://mariadb.org/feedback_plugin/post' was sent +feedback plugin: server replied 'ok' diff --git a/mysql-test/suite/plugins/r/fulltext_plugin.result b/mysql-test/suite/plugins/r/fulltext_plugin.result new file mode 100644 index 00000000000..69ebbe07e9e --- /dev/null +++ b/mysql-test/suite/plugins/r/fulltext_plugin.result @@ -0,0 +1,5 @@ +INSTALL PLUGIN simple_parser SONAME 'mypluglib.so'; +CREATE TABLE t1(a TEXT, b TEXT, FULLTEXT(a) WITH PARSER simple_parser); +ALTER TABLE t1 ADD FULLTEXT(b) WITH PARSER simple_parser; +DROP TABLE t1; +UNINSTALL PLUGIN simple_parser; diff --git a/mysql-test/suite/plugins/r/pam.result b/mysql-test/suite/plugins/r/pam.result new file mode 100644 index 00000000000..1c9036c317e --- /dev/null +++ b/mysql-test/suite/plugins/r/pam.result @@ -0,0 +1,22 @@ +install plugin pam soname 'auth_pam.so'; +create user test_pam identified via pam using 'mariadb_mtr'; +# +# athentication is successful, challenge/pin are ok +# note that current_user() differts from user() +# +Challenge input first. +Enter: not very secret challenge +Now, the magic number! +PIN: **** +select user(), current_user(), database(); +user() current_user() database() +test_pam@localhost pam_test@% test +# +# athentication is unsuccessful +# +Challenge input first. +Enter: not very secret challenge +Now, the magic number! +PIN: **** +drop user test_pam; +uninstall plugin pam; diff --git a/mysql-test/suite/plugins/r/unix_socket.result b/mysql-test/suite/plugins/r/unix_socket.result new file mode 100644 index 00000000000..45bf608cc93 --- /dev/null +++ b/mysql-test/suite/plugins/r/unix_socket.result @@ -0,0 +1,30 @@ +install plugin unix_socket soname 'auth_socket.so'; +# +# with named user +# +create user USER identified via unix_socket; +# +# name match = ok +# +select user(), current_user(), database(); +user() current_user() database() +USER@localhost USER@% test +# +# name does not match = failure +# +drop user USER; +# +# and now with anonymous user +# +grant SELECT ON test.* TO '' identified via unix_socket; +# +# name match = ok +# +select user(), current_user(), database(); +user() current_user() database() +USER@localhost @% test +# +# name does not match = failure +# +delete from mysql.user where user=''; +uninstall plugin unix_socket; diff --git a/mysql-test/suite/plugins/suite.pm b/mysql-test/suite/plugins/suite.pm new file mode 100644 index 00000000000..f8f78086c15 --- /dev/null +++ b/mysql-test/suite/plugins/suite.pm @@ -0,0 +1,8 @@ +package My::Suite::Plugins; + +@ISA = qw(My::Suite); + +$ENV{PAM_SETUP_FOR_MTR}=1 if -e '/etc/pam.d/mariadb_mtr'; + +bless { }; + diff --git a/mysql-test/suite/plugins/t/dialog.test b/mysql-test/suite/plugins/t/dialog.test new file mode 100644 index 00000000000..47452643609 --- /dev/null +++ b/mysql-test/suite/plugins/t/dialog.test @@ -0,0 +1,51 @@ +# +# test for the client "dialog" plugin +# + +--source include/not_embedded.inc + +if (!$DIALOG_SO) { + skip No dialog auth plugin; +} + +--replace_result .dll .so +eval install plugin three_attempts soname '$DIALOG_SO'; +create user test_dialog identified via three_attempts using 'SECRET'; + +let $plugindir=`SELECT @@global.plugin_dir`; + +--write_file $MYSQLTEST_VARDIR/tmp/dialog_good.txt +foo +1234 +SECRET +select user(), current_user(); +EOF + +--write_file $MYSQLTEST_VARDIR/tmp/dialog_bad.txt +foo +1234 +wrong +SECRET +EOF + +--echo # +--echo # -pSECRET is picked up, no questions asked. +--echo # +--exec echo "select user(), current_user();"|$MYSQL_TEST -u test_dialog -pSECRET --plugin-dir=$plugindir + +--echo # +--echo # without -p. up to three questions are asked on the stdin. +--echo # athentication is successful, the correct pasword is on the third line +--echo # +--exec $MYSQL_TEST -u test_dialog --plugin-dir=$plugindir < $MYSQLTEST_VARDIR/tmp/dialog_good.txt + +--echo # +--echo # athentication is unsuccessful, first three lines are all wrong +--echo # +--error 1 +--exec $MYSQL_TEST -u test_dialog --plugin-dir=$plugindir < $MYSQLTEST_VARDIR/tmp/dialog_bad.txt + +--remove_file $MYSQLTEST_VARDIR/tmp/dialog_good.txt +--remove_file $MYSQLTEST_VARDIR/tmp/dialog_bad.txt +drop user test_dialog; +uninstall plugin three_attempts; diff --git a/mysql-test/suite/plugins/t/feedback_plugin_install.opt b/mysql-test/suite/plugins/t/feedback_plugin_install.opt new file mode 100644 index 00000000000..a711ae94e69 --- /dev/null +++ b/mysql-test/suite/plugins/t/feedback_plugin_install.opt @@ -0,0 +1 @@ +--loose-feedback diff --git a/mysql-test/suite/plugins/t/feedback_plugin_install.test b/mysql-test/suite/plugins/t/feedback_plugin_install.test new file mode 100644 index 00000000000..81343c436c3 --- /dev/null +++ b/mysql-test/suite/plugins/t/feedback_plugin_install.test @@ -0,0 +1,15 @@ +--source include/not_embedded.inc + +if (`select length('$FEEDBACK_SO') = 0`) { + skip No feedback plugin; +} + +--replace_regex /\.dll/.so/ +eval install plugin feedback soname '$FEEDBACK_SO'; +select plugin_status from information_schema.plugins where plugin_name='feedback'; +--replace_result https http +--sorted_result +select * from information_schema.feedback where variable_name like 'feed%' + and variable_name not like '%_uid'; +uninstall plugin feedback; + diff --git a/mysql-test/suite/plugins/t/feedback_plugin_load.opt b/mysql-test/suite/plugins/t/feedback_plugin_load.opt new file mode 100644 index 00000000000..5fbb2f83954 --- /dev/null +++ b/mysql-test/suite/plugins/t/feedback_plugin_load.opt @@ -0,0 +1,2 @@ +--loose-feedback +--plugin-load=$FEEDBACK_SO diff --git a/mysql-test/suite/plugins/t/feedback_plugin_load.test b/mysql-test/suite/plugins/t/feedback_plugin_load.test new file mode 100644 index 00000000000..5ad301667b4 --- /dev/null +++ b/mysql-test/suite/plugins/t/feedback_plugin_load.test @@ -0,0 +1,10 @@ +if (`select count(*) = 0 from information_schema.plugins where plugin_name = 'feedback' and plugin_status='active'`) +{ + --skip Feedback plugin is not active +} + +select plugin_status from information_schema.plugins where plugin_name='feedback'; +--replace_result https http +--sorted_result +select * from information_schema.feedback where variable_name like 'feed%' + and variable_name not like '%_uid'; diff --git a/mysql-test/suite/plugins/t/feedback_plugin_send.test b/mysql-test/suite/plugins/t/feedback_plugin_send.test new file mode 100644 index 00000000000..3324ef469fe --- /dev/null +++ b/mysql-test/suite/plugins/t/feedback_plugin_send.test @@ -0,0 +1,32 @@ +source feedback_plugin_load.test; + +if (!$MTR_FEEDBACK_PLUGIN) { + skip MTR_FEEDBACK_PLUGIN is not set; +} + +# +# Yep. The plugin waits 5 minutes before sending anything, +# and there's no way to force it to send anything sooner. +# Let's wait, and hope that mtr is started with --parallel and +# is doing some work in other workers. +# +sleep 310; +source include/restart_mysqld.inc; + +replace_result https http; +perl; + $log_error= $ENV{'MYSQLTEST_VARDIR'} . '/log/mysqld.1.err'; + open(LOG, '<', $log_error) or die "open(< $log_error): $!"; + + # Get the first few rows (as there may be different number rows in the log) + $i= 0; + while ($_=<LOG>) + { + if (/feedback plugin:.*/) + { + print "$&\n"; + break if ($i++ >= 3); + } + } + close LOG; +EOF diff --git a/mysql-test/suite/plugins/t/fulltext_plugin.test b/mysql-test/suite/plugins/t/fulltext_plugin.test new file mode 100644 index 00000000000..0e2f53d5b15 --- /dev/null +++ b/mysql-test/suite/plugins/t/fulltext_plugin.test @@ -0,0 +1,11 @@ +--source include/have_simple_parser.inc + +# +# BUG#39746 - Debug flag breaks struct definition (server crash) +# +--replace_result .dll .so +eval INSTALL PLUGIN simple_parser SONAME '$MYPLUGLIB_SO'; +CREATE TABLE t1(a TEXT, b TEXT, FULLTEXT(a) WITH PARSER simple_parser); +ALTER TABLE t1 ADD FULLTEXT(b) WITH PARSER simple_parser; +DROP TABLE t1; +UNINSTALL PLUGIN simple_parser; diff --git a/mysql-test/suite/plugins/t/pam.test b/mysql-test/suite/plugins/t/pam.test new file mode 100644 index 00000000000..3f4c563d8dc --- /dev/null +++ b/mysql-test/suite/plugins/t/pam.test @@ -0,0 +1,46 @@ + +--source include/not_embedded.inc + +if (!$AUTH_PAM_SO) { + skip No pam auth plugin; +} + +if (!$PAM_SETUP_FOR_MTR) { + skip No pam setup for mtr; +} + +--replace_result .dll .so +eval install plugin pam soname '$AUTH_PAM_SO'; +create user test_pam identified via pam using 'mariadb_mtr'; + +let $plugindir=`SELECT @@global.plugin_dir`; + +--write_file $MYSQLTEST_VARDIR/tmp/pam_good.txt +not very secret challenge +9225 +select user(), current_user(), database(); +EOF + +--write_file $MYSQLTEST_VARDIR/tmp/pam_bad.txt +not very secret challenge +9224 +select user(), current_user(), database(); +EOF + +--echo # +--echo # athentication is successful, challenge/pin are ok +--echo # note that current_user() differts from user() +--echo # +--exec $MYSQL_TEST -u test_pam --plugin-dir=$plugindir < $MYSQLTEST_VARDIR/tmp/pam_good.txt + +--echo # +--echo # athentication is unsuccessful +--echo # +--error 1 +--exec $MYSQL_TEST -u test_pam --plugin-dir=$plugindir < $MYSQLTEST_VARDIR/tmp/pam_bad.txt + +--remove_file $MYSQLTEST_VARDIR/tmp/pam_good.txt +--remove_file $MYSQLTEST_VARDIR/tmp/pam_bad.txt +drop user test_pam; +uninstall plugin pam; + diff --git a/mysql-test/suite/plugins/t/unix_socket.test b/mysql-test/suite/plugins/t/unix_socket.test new file mode 100644 index 00000000000..fc2e6c5b3c6 --- /dev/null +++ b/mysql-test/suite/plugins/t/unix_socket.test @@ -0,0 +1,56 @@ +--source include/not_embedded.inc + +if (!$AUTH_SOCKET_SO) { + skip No auth_socket plugin; +} + +let $plugindir=`SELECT @@global.plugin_dir`; + +eval install plugin unix_socket soname '$AUTH_SOCKET_SO'; + +--echo # +--echo # with named user +--echo # + +--replace_result $USER USER +eval create user $USER identified via unix_socket; + +--write_file $MYSQLTEST_VARDIR/tmp/peercred_test.txt +--replace_result $USER USER +select user(), current_user(), database(); +EOF + +--echo # +--echo # name match = ok +--echo # +--exec $MYSQL_TEST -u $USER --plugin-dir=$plugindir < $MYSQLTEST_VARDIR/tmp/peercred_test.txt + +--echo # +--echo # name does not match = failure +--echo # +--error 1 +--exec $MYSQL_TEST -u foobar --plugin-dir=$plugindir < $MYSQLTEST_VARDIR/tmp/peercred_test.txt + +--replace_result $USER USER +eval drop user $USER; + +--echo # +--echo # and now with anonymous user +--echo # +grant SELECT ON test.* TO '' identified via unix_socket; +--echo # +--echo # name match = ok +--echo # +--exec $MYSQL_TEST -u $USER --plugin-dir=$plugindir < $MYSQLTEST_VARDIR/tmp/peercred_test.txt + +--echo # +--echo # name does not match = failure +--echo # +--error 1 +--exec $MYSQL_TEST -u foobar --plugin-dir=$plugindir < $MYSQLTEST_VARDIR/tmp/peercred_test.txt + +# restoring mysql.user to the original state. +delete from mysql.user where user=''; +uninstall plugin unix_socket; +--remove_file $MYSQLTEST_VARDIR/tmp/peercred_test.txt + diff --git a/mysql-test/suite/rpl/r/rpl_do_grant.result b/mysql-test/suite/rpl/r/rpl_do_grant.result index e48d8b36fab..52bcb90f357 100644 --- a/mysql-test/suite/rpl/r/rpl_do_grant.result +++ b/mysql-test/suite/rpl/r/rpl_do_grant.result @@ -158,9 +158,9 @@ SELECT * FROM mysql.procs_priv; Host Db User Routine_name Routine_type Grantor Proc_priv Timestamp SELECT upgrade_alter_func(); ERROR HY000: The user specified as a definer ('create_rout_db'@'localhost') does not exist -USE bug42217_db; -DROP FUNCTION upgrade_del_func; -DROP FUNCTION upgrade_alter_func; +USE test; +DROP FUNCTION bug42217_db.upgrade_del_func; +DROP FUNCTION bug42217_db.upgrade_alter_func; DROP DATABASE bug42217_db; stop slave; SET SQL_LOG_BIN= 0; diff --git a/mysql-test/suite/rpl/r/rpl_flushlog_loop.result b/mysql-test/suite/rpl/r/rpl_flushlog_loop.result index 26b7640ccbc..d53d057b470 100644 --- a/mysql-test/suite/rpl/r/rpl_flushlog_loop.result +++ b/mysql-test/suite/rpl/r/rpl_flushlog_loop.result @@ -2,7 +2,7 @@ include/rpl_init.inc [topology=1->2->1] show variables like 'relay_log%'; Variable_name Value relay_log master-relay-bin -relay_log_index +relay_log_index master-relay-bin.index relay_log_info_file relay-log.info relay_log_purge ON relay_log_space_limit 0 diff --git a/mysql-test/suite/rpl/r/rpl_idempotency.result b/mysql-test/suite/rpl/r/rpl_idempotency.result index 76abd0f64c0..ed04335d5f0 100644 --- a/mysql-test/suite/rpl/r/rpl_idempotency.result +++ b/mysql-test/suite/rpl/r/rpl_idempotency.result @@ -1,6 +1,6 @@ include/master-slave.inc [connection master] -call mtr.add_suppression("Can.t find record in .t[12].* Error_code: 1032"); +call mtr.add_suppression("Can.t find record in .t[12].*"); call mtr.add_suppression("Slave: Cannot delete or update a parent row: a foreign key constraint fails .* Error_code: 1451"); call mtr.add_suppression("Slave: Cannot add or update a child row: a foreign key constraint fails .* Error_code: 1452"); call mtr.add_suppression("Slave SQL.*Could not execute Write_rows event on table test.* Duplicate entry .1. for key .PRIMARY.* Error_code: 1062"); diff --git a/mysql-test/suite/rpl/r/rpl_ignore_table.result b/mysql-test/suite/rpl/r/rpl_ignore_table.result index 3025f1f10fa..20d51b72f96 100644 --- a/mysql-test/suite/rpl/r/rpl_ignore_table.result +++ b/mysql-test/suite/rpl/r/rpl_ignore_table.result @@ -33,6 +33,7 @@ Warnings: Warning 1364 Field 'ssl_cipher' doesn't have a default value Warning 1364 Field 'x509_issuer' doesn't have a default value Warning 1364 Field 'x509_subject' doesn't have a default value +Warning 1364 Field 'auth_string' doesn't have a default value GRANT SELECT ON *.* TO mysqltest6@localhost; GRANT INSERT ON *.* TO mysqltest6@localhost; GRANT INSERT ON test.* TO mysqltest6@localhost; diff --git a/mysql-test/suite/rpl/r/rpl_stm_000001.result b/mysql-test/suite/rpl/r/rpl_stm_000001.result index d4290331b8c..3a67772d11a 100644 --- a/mysql-test/suite/rpl/r/rpl_stm_000001.result +++ b/mysql-test/suite/rpl/r/rpl_stm_000001.result @@ -61,6 +61,7 @@ Warnings: Warning 1364 Field 'ssl_cipher' doesn't have a default value Warning 1364 Field 'x509_issuer' doesn't have a default value Warning 1364 Field 'x509_subject' doesn't have a default value +Warning 1364 Field 'auth_string' doesn't have a default value select select_priv,user from mysql.user where user = _binary'blafasel2'; select_priv user N blafasel2 diff --git a/mysql-test/suite/rpl/r/rpl_table_options.result b/mysql-test/suite/rpl/r/rpl_table_options.result new file mode 100644 index 00000000000..423a2b65583 --- /dev/null +++ b/mysql-test/suite/rpl/r/rpl_table_options.result @@ -0,0 +1,22 @@ +include/master-slave.inc +[connection master] +install plugin example soname 'ha_example.so'; +set storage_engine=example; +create table t1 (a int not null) ull=12340; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) NOT NULL +) ENGINE=EXAMPLE DEFAULT CHARSET=latin1 `ull`=12340 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) NOT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 `ull`=12340 +drop table t1; +set storage_engine=default; +select 1; +1 +1 +uninstall plugin example; +include/rpl_end.inc diff --git a/mysql-test/suite/rpl/rpl_1slave_base.cnf b/mysql-test/suite/rpl/rpl_1slave_base.cnf index 2e2ae79888e..e1d2d026acb 100644 --- a/mysql-test/suite/rpl/rpl_1slave_base.cnf +++ b/mysql-test/suite/rpl/rpl_1slave_base.cnf @@ -6,8 +6,9 @@ # Run the master.sh script before starting this process #!run-master-sh -log-bin= master-bin -relay-log= master-relay-bin +log-basename= master +# log-bin= master-bin +# relay-log= master-relay-bin [mysqld.2] # Run the slave.sh script before starting this process @@ -17,7 +18,8 @@ relay-log= master-relay-bin # starting the mysqld #!use-slave-opt -relay-log= slave-relay-bin +log-basename= slave +# relay-log= slave-relay-bin init-rpl-role= slave log-slave-updates diff --git a/mysql-test/suite/rpl/t/rpl_do_grant.test b/mysql-test/suite/rpl/t/rpl_do_grant.test index 6965dfc9047..54d9a076245 100644 --- a/mysql-test/suite/rpl/t/rpl_do_grant.test +++ b/mysql-test/suite/rpl/t/rpl_do_grant.test @@ -208,9 +208,9 @@ SELECT upgrade_alter_func(); disconnect create_rout_db_master; disconnect create_rout_db_slave; connection master; -USE bug42217_db; -DROP FUNCTION upgrade_del_func; -DROP FUNCTION upgrade_alter_func; +USE test; +DROP FUNCTION bug42217_db.upgrade_del_func; +DROP FUNCTION bug42217_db.upgrade_alter_func; DROP DATABASE bug42217_db; -- sync_slave_with_master diff --git a/mysql-test/suite/rpl/t/rpl_idempotency.test b/mysql-test/suite/rpl/t/rpl_idempotency.test index aa63ac47d81..1b02795dfc6 100644 --- a/mysql-test/suite/rpl/t/rpl_idempotency.test +++ b/mysql-test/suite/rpl/t/rpl_idempotency.test @@ -9,7 +9,7 @@ source include/have_innodb.inc; # Add suppression for expected warning(s) in slaves error log -call mtr.add_suppression("Can.t find record in .t[12].* Error_code: 1032"); +call mtr.add_suppression("Can.t find record in .t[12].*"); call mtr.add_suppression("Slave: Cannot delete or update a parent row: a foreign key constraint fails .* Error_code: 1451"); call mtr.add_suppression("Slave: Cannot add or update a child row: a foreign key constraint fails .* Error_code: 1452"); call mtr.add_suppression("Slave SQL.*Could not execute Write_rows event on table test.* Duplicate entry .1. for key .PRIMARY.* Error_code: 1062"); diff --git a/mysql-test/suite/rpl/t/rpl_table_options.test b/mysql-test/suite/rpl/t/rpl_table_options.test new file mode 100644 index 00000000000..2252192adeb --- /dev/null +++ b/mysql-test/suite/rpl/t/rpl_table_options.test @@ -0,0 +1,34 @@ +--source include/not_windows_embedded.inc +--source include/have_example_plugin.inc +--source include/master-slave.inc + +--replace_regex /\.dll/.so/ +eval install plugin example soname '$HA_EXAMPLE_SO'; +set storage_engine=example; + +sync_slave_with_master; +connection master; + +# +# only master has example engine installed, +# the slave will have the table created in myisam, +# that does not have ULL table option. +# but because the table was created by the replication +# slave thread, the table will be created anyway, even if +# the option is unknown. +# +create table t1 (a int not null) ull=12340; +show create table t1; + +sync_slave_with_master; +connection slave; +show create table t1; + +connection master; +drop table t1; +set storage_engine=default; +select 1; + +# Cleanup +uninstall plugin example; +--source include/rpl_end.inc diff --git a/mysql-test/suite/sphinx/my.cnf b/mysql-test/suite/sphinx/my.cnf new file mode 100644 index 00000000000..ba5dd7578e8 --- /dev/null +++ b/mysql-test/suite/sphinx/my.cnf @@ -0,0 +1,30 @@ +!include include/default_my.cnf + +[source src1] +type = xmlpipe2 +xmlpipe_command = cat suite/sphinx/testdata.xml + +[index test1] +source = src1 +docinfo = extern +charset_type = utf-8 +path = @OPT.vardir/searchd/test1 + +[indexer] +mem_limit = 32M + +[searchd] +read_timeout = 5 +max_children = 30 +max_matches = 1000 +seamless_rotate = 1 +preopen_indexes = 0 +unlink_old = 1 +log = @OPT.vardir/searchd/sphinx-searchd.log +query_log = @OPT.vardir/searchd/sphinx-query.log +#log-error = @OPT.vardir/searchd/sphinx.log +pid_file = @OPT.vardir/run/searchd.pid +port = @ENV.SPHINXSEARCH_PORT + +[ENV] +SPHINXSEARCH_PORT = @OPT.port diff --git a/mysql-test/suite/sphinx/sphinx.result b/mysql-test/suite/sphinx/sphinx.result new file mode 100644 index 00000000000..46fefc6f8ae --- /dev/null +++ b/mysql-test/suite/sphinx/sphinx.result @@ -0,0 +1,39 @@ +create table ts ( id bigint unsigned not null, w int not null, q varchar(255) not null, index(q) ) engine=sphinx connection="sphinx://127.0.0.1:SPHINXSEARCH_PORT/*"; +select * from ts where q='test'; +id w q +1 2 test +2 2 test +4 1 test +drop table ts; +create table ts ( id bigint unsigned not null, w int not null, q varchar(255) not null, index(q) ) engine=sphinx connection="sphinx://127.0.0.1:SPHINXSEARCH_PORT/*"; +select * from ts where q='test;filter=gid,1;mode=extended'; +id w q +1 2421 test;filter=gid,1;mode=extended +2 2421 test;filter=gid,1;mode=extended +select * from ts where q='test|one;mode=extended'; +id w q +1 3595 test|one;mode=extended +2 2460 test|one;mode=extended +4 1471 test|one;mode=extended +select * from ts where q='test;offset=1;limit=1'; +id w q +2 2 test;offset=1;limit=1 +alter table ts connection="sphinx://127.0.0.1:SPHINXSEARCH_PORT/test1"; +select id, w from ts where q='one'; +id w +1 2 +drop table ts; +create table ts ( id bigint unsigned not null, w int not null, q varchar(255) not null, gid int not null, _sph_count int not null, index(q) ) engine=sphinx connection="sphinx://127.0.0.1:SPHINXSEARCH_PORT/test1"; +select * from ts; +id w q gid _sph_count +select * from ts where q=''; +id w q gid _sph_count +1 1 1 0 +2 1 1 0 +3 1 2 0 +4 1 2 0 +select * from ts where q=';groupby=attr:gid'; +id w q gid _sph_count +3 1 ;groupby=attr:gid 2 2 +1 1 ;groupby=attr:gid 1 2 +drop table ts; diff --git a/mysql-test/suite/sphinx/sphinx.test b/mysql-test/suite/sphinx/sphinx.test new file mode 100644 index 00000000000..f6d2c7ac709 --- /dev/null +++ b/mysql-test/suite/sphinx/sphinx.test @@ -0,0 +1,23 @@ + +--replace_result $SPHINXSEARCH_PORT SPHINXSEARCH_PORT +eval create table ts ( id bigint unsigned not null, w int not null, q varchar(255) not null, index(q) ) engine=sphinx connection="sphinx://127.0.0.1:$SPHINXSEARCH_PORT/*"; +select * from ts where q='test'; +drop table ts; + +--replace_result $SPHINXSEARCH_PORT SPHINXSEARCH_PORT +eval create table ts ( id bigint unsigned not null, w int not null, q varchar(255) not null, index(q) ) engine=sphinx connection="sphinx://127.0.0.1:$SPHINXSEARCH_PORT/*"; +select * from ts where q='test;filter=gid,1;mode=extended'; +select * from ts where q='test|one;mode=extended'; +select * from ts where q='test;offset=1;limit=1'; +--replace_result $SPHINXSEARCH_PORT SPHINXSEARCH_PORT +eval alter table ts connection="sphinx://127.0.0.1:$SPHINXSEARCH_PORT/test1"; +select id, w from ts where q='one'; +drop table ts; + +--replace_result $SPHINXSEARCH_PORT SPHINXSEARCH_PORT +eval create table ts ( id bigint unsigned not null, w int not null, q varchar(255) not null, gid int not null, _sph_count int not null, index(q) ) engine=sphinx connection="sphinx://127.0.0.1:$SPHINXSEARCH_PORT/test1"; +select * from ts; +select * from ts where q=''; +select * from ts where q=';groupby=attr:gid'; +drop table ts; + diff --git a/mysql-test/suite/sphinx/suite.opt b/mysql-test/suite/sphinx/suite.opt new file mode 100644 index 00000000000..b8964ecd9e9 --- /dev/null +++ b/mysql-test/suite/sphinx/suite.opt @@ -0,0 +1 @@ +--plugin-load=$HA_SPHINX_SO diff --git a/mysql-test/suite/sphinx/suite.pm b/mysql-test/suite/sphinx/suite.pm new file mode 100644 index 00000000000..e708b12faea --- /dev/null +++ b/mysql-test/suite/sphinx/suite.pm @@ -0,0 +1,129 @@ +package My::Suite::Sphinx; + +use My::SafeProcess; +use My::File::Path; +use mtr_report; + +@ISA = qw(My::Suite); + +use Carp; +$Carp::Verbose=1; + +############# initialization ###################### +sub locate_sphinx_binary { + my ($name)= @_; + my $res; + my @list= map "$_/$name", split /:/, $ENV{PATH}; + my $env_override= $ENV{"SPHINXSEARCH_\U$name"}; + @list= ($env_override) if $env_override; + for (@list) { return $_ if -x $_; } +} + +# Look for Sphinx binaries. +my $exe_sphinx_indexer = &locate_sphinx_binary('indexer'); +my $exe_sphinx_searchd = &locate_sphinx_binary('searchd'); + +return "No Sphinx" unless $exe_sphinx_indexer and $exe_sphinx_searchd; +return "No SphinxSE" unless $ENV{HA_SPHINX_SO} or + $::mysqld_variables{'sphinx'} eq "ON"; + +{ + local $_ = `"$exe_sphinx_searchd" --help`; + mtr_verbose("tool: $exe_sphinx_searchd\n$_"); + my $ver = sprintf "%04d.%04d.%04d", (/([0-9]+)\.([0-9]+)\.([0-9]+)/); + if ($ver eq "0000.0000.0000") + { + $ver = sprintf "%04d.%04d", (/([0-9]+)\.([0-9]+)-(alpha|beta|gamma|RC)/); + return "Sphinx 0.9.9 or later is needed" unless $ver ge '0001.0010'; + } + else + { + return "Sphinx 0.9.9 or later is needed" unless $ver ge '0000.0009.0009'; + } +} + +############# action methods ###################### + +sub write_sphinx_conf { + my ($config) = @_; # My::Config + my $res; + + foreach my $group ($config->groups()) { + my $name= $group->{name}; + # Only the ones relevant to Sphinx search. + next unless ($name eq 'indexer' or $name eq 'searchd' or + $name =~ /^(source|index) \w+$/); + $res .= "$name\n{\n"; + foreach my $option ($group->options()) { + $res .= $option->name(); + my $value= $option->value(); + if (defined $value) { + $res .= "=$value"; + } + $res .= "\n"; + } + $res .= "}\n\n"; + } + $res; +} + +sub searchd_start { + my ($sphinx, $test) = @_; # My::Config::Group, My::Test + + return unless $exe_sphinx_indexer and $exe_sphinx_searchd; + + # First we must run the indexer to create the data. + my $sphinx_data_dir= "$::opt_vardir/" . $sphinx->name(); + mkpath($sphinx_data_dir); + my $sphinx_log= $sphinx->value('#log-error'); + my $sphinx_config= "$::opt_vardir/my_sphinx.conf"; + my $cmd= "\"$exe_sphinx_indexer\" --config \"$sphinx_config\" test1 > \"$sphinx_log\" 2>&1"; + &::mtr_verbose("cmd: $cmd"); + system $cmd; + + # Then start the searchd daemon. + my $args; + &::mtr_init_args(\$args); + &::mtr_add_arg($args, "--config"); + &::mtr_add_arg($args, $sphinx_config); + &::mtr_add_arg($args, "--console"); + &::mtr_add_arg($args, "--pidfile"); + + $sphinx->{'proc'}= My::SafeProcess->new + ( + name => 'sphinx-' . $sphinx->name(), + path => $exe_sphinx_searchd, + args => \$args, + output => $sphinx_log, + error => $sphinx_log, + append => 1, + nocore => 1, + ); + &::mtr_verbose("Started $sphinx->{proc}"); +} + +sub searchd_wait { + my ($sphinx) = @_; # My::Config::Group + + return not &::sleep_until_file_created($sphinx->value('pid_file'), 20, + $sphinx->{'proc'}) +} + +############# declaration methods ###################### + +sub config_files() { + ( 'my_sphinx.conf' => \&write_sphinx_conf ) +} + +sub servers { + ( qr/^searchd$/ => { + SORT => 400, + START => \&searchd_start, + WAIT => \&searchd_wait, + } + ) +} + +############# return an object ###################### +bless { }; + diff --git a/mysql-test/suite/sphinx/testdata.xml b/mysql-test/suite/sphinx/testdata.xml new file mode 100644 index 00000000000..e0d7394190f --- /dev/null +++ b/mysql-test/suite/sphinx/testdata.xml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="utf-8"?> +<sphinx:docset> + +<sphinx:schema> +<sphinx:field name="title"/> +<sphinx:field name="content"/> +<sphinx:attr name="gid" type="int"/> +</sphinx:schema> + +<sphinx:document id="1"> +<title>test one</title> +<content>this is my test document number one. also checking search within phrases.</content> +<gid>1</gid> +</sphinx:document> + +<sphinx:document id="2"> +<title>test two</title> +<content>this is my test document number two</content> +<gid>1</gid> +</sphinx:document> + +<sphinx:document id="3"> +<title>another doc</title> +<content>this is another group</content> +<gid>2</gid> +</sphinx:document> + +<sphinx:document id="4"> +<title>doc number four</title> +<content>this is to test groups</content> +<gid>2</gid> +</sphinx:document> + +</sphinx:docset> + diff --git a/mysql-test/suite/vcol/inc/vcol_blocked_sql_funcs_main.inc b/mysql-test/suite/vcol/inc/vcol_blocked_sql_funcs_main.inc new file mode 100644 index 00000000000..01f939337ed --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_blocked_sql_funcs_main.inc @@ -0,0 +1,344 @@ +################################################################################ +# inc/vcol_blocked_sql_funcs_main.inc # +# # +# Purpose: # +# Tests around sql functions # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-08-31 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +# +# NOTE: All SQL functions should be rejected, otherwise BUG. +# + +--echo # RAND() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (b double as (rand())); + +--echo # LOAD_FILE() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(64), b varchar(1024) as (load_file(a))); + +--echo # CURDATE() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime as (curdate())); + +--echo # CURRENT_DATE(), CURRENT_DATE +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime as (current_date)); +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime as (current_date())); + +--echo # CURRENT_TIME(), CURRENT_TIME +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime as (current_time)); +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime as (current_time())); + +--echo # CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime as (current_timestamp())); +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime as (current_timestamp)); + +--echo # CURTIME() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime as (curtime())); + +--echo # LOCALTIME(), LOCALTIME +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime, b varchar(10) as (localtime())); +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime, b varchar(10) as (localtime)); + +--echo # LOCALTIMESTAMP, LOCALTIMESTAMP()(v4.0.6) +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime, b varchar(10) as (localtimestamp())); +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime, b varchar(10) as (localtimestamp)); + +--echo # NOW() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime, b varchar(10) as (now())); + +--echo # SYSDATE() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b varchar(10) as (sysdate())); + +--echo # UNIX_TIMESTAMP() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime, b datetime as (unix_timestamp())); + +--echo # UTC_DATE() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime, b datetime as (utc_date())); + +--echo # UTC_TIME() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime, b datetime as (utc_time())); + +--echo # UTC_TIMESTAMP() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a datetime, b datetime as (utc_timestamp())); + +--echo # MATCH() +if (!$skip_full_text_checks) +{ + -- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED + create table t1 (a varchar(32), b bool as (match a against ('sample text'))); +} + +--echo # BENCHMARK() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (benchmark(a,3))); + +--echo # CONNECTION_ID() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int as (connection_id())); + +--echo # CURRENT_USER(), CURRENT_USER +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(32) as (current_user())); +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(32) as (current_user)); + +--echo # DATABASE() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (database())); + +--echo # FOUND_ROWS() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (found_rows())); + +--echo # GET_LOCK() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (get_lock(a,10))); + +--echo # IS_FREE_LOCK() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (is_free_lock(a))); + +--echo # IS_USED_LOCK() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (is_used_lock(a))); + +--echo # LAST_INSERT_ID() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int as (last_insert_id())); + +--echo # MASTER_POS_WAIT() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(32), b int as (master_pos_wait(a,0,2))); + +--echo # NAME_CONST() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(32) as (name_const('test',1))); + +--echo # RELEASE_LOCK() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(32), b int as (release_lock(a))); + +--echo # ROW_COUNT() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int as (row_count())); + +--echo # SCHEMA() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(32) as (schema())); + +--echo # SESSION_USER() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(32) as (session_user())); + +--echo # SLEEP() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (sleep(a))); + +--echo # SYSTEM_USER() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(32) as (system_user())); + +--echo # USER() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (user())); + +--echo # UUID_SHORT() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024) as (uuid_short())); + +--echo # UUID() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024) as (uuid())); + +--echo # VALUES() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (values(a))); + +--echo # VERSION() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (version())); + +--echo # ENCRYPT() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (encrypt(a))); + +--echo # Stored procedures + +delimiter //; +create procedure p1() +begin + select current_user(); +end // + +create function f1() +returns int +begin + return 1; +end // + +delimiter ;// + +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int as (p1())); +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int as (f1())); + +drop procedure p1; +drop function f1; + +--echo # Unknown functions +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int as (f1())); + +--echo # +--echo # GROUP BY FUNCTIONS +--echo # + +--echo # AVG() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (avg(a))); + +--echo # BIT_AND() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (bit_and(a))); + +--echo # BIT_OR() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (bit_or(a))); + +--echo # BIT_XOR() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (bit_xor(a))); + +--echo # COUNT(DISTINCT) +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (count(distinct a))); + +--echo # COUNT() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (count(a))); + +--echo # GROUP_CONCAT() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(32), b int as (group_concat(a,''))); + +--echo # MAX() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (max(a))); + +--echo # MIN() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (min(a))); + +--echo # STD() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (std(a))); + +--echo # STDDEV_POP() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (stddev_pop(a))); + +--echo # STDDEV_SAMP() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (stddev_samp(a))); + +--echo # STDDEV() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (stddev(a))); + +--echo # SUM() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (sum(a))); + +--echo # VAR_POP() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (var_pop(a))); + +--echo # VAR_SAMP() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (var_samp(a))); + +--echo # VARIANCE() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (variance(a))); + +--echo # +--echo # XML FUNCTIONS +--echo # + +--echo # ExtractValue() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (ExtractValue(a,'//b[$@j]'))); + +--echo # UpdateXML() +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a varchar(1024), b varchar(1024) as (UpdateXML(a,'/a','<e>fff</e>'))); + +--echo # +--echo # Sub-selects +--echo # + +create table t1 (a int); +-- error ER_PARSE_ERROR +create table t2 (a int, b int as (select count(*) from t1)); +drop table t1; + +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as ((select 1))); +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (a+(select 1))); + +--echo # +--echo # SP functions +--echo # + +--disable_warnings +drop function if exists sub1; +--enable_warnings +create function sub1(i int) returns int deterministic + return i+1; +select sub1(1); +-- error ER_VIRTUAL_COLUMN_FUNCTION_IS_NOT_ALLOWED +create table t1 (a int, b int as (a+sub3(1))); +drop function sub1; + +--echo # +--echo # Long expression + +let $tmp_long_string = `SELECT repeat('a',240)`; +eval create table t1 (a int, b varchar(300) as (concat(a,'$tmp_long_string'))); +drop table t1; +let $tmp_long_string = `SELECT repeat('a',243)`; +--error ER_WRONG_STRING_LENGTH +eval create table t1 (a int, b varchar(300) as (concat(a,'$tmp_long_string'))); + +--echo # +--echo # Constant expression +--error ER_CONST_EXPR_IN_VCOL +create table t1 (a int as (PI())); diff --git a/mysql-test/suite/vcol/inc/vcol_cleanup.inc b/mysql-test/suite/vcol/inc/vcol_cleanup.inc new file mode 100644 index 00000000000..f8adec03b07 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_cleanup.inc @@ -0,0 +1,25 @@ +################################################################################ +# inc/vcol_cleanup.inc # +# # +# Purpose: # +# Removal of the objects created by the t/<test_name>.test # +# scripts. # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-08-31 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +--disable_warnings +--disable_query_log +DROP VIEW IF EXISTS v1,v2; +DROP TABLE IF EXISTS t1,t2,t3; +DROP PROCEDURE IF EXISTS p1; +DROP FUNCTION IF EXISTS f1; +DROP TRIGGER IF EXISTS trg1; +DROP TRIGGER IF EXISTS trg2; +--enable_query_log +--enable_warnings diff --git a/mysql-test/suite/vcol/inc/vcol_column_def_options.inc b/mysql-test/suite/vcol/inc/vcol_column_def_options.inc new file mode 100644 index 00000000000..2f28136ad63 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_column_def_options.inc @@ -0,0 +1,113 @@ +################################################################################ +# inc/vcol_column_def_options.inc # +# # +# Purpose: # +# Testing different optional parameters specified when defining # +# a virtual column. # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-02 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +--echo # +--echo # Section 1. Wrong column definition options +--echo # - NOT NULL +--echo # - NULL +--echo # - DEFAULT <value> +--echo # - AUTO_INCREMENT +--echo # - [PRIMARY] KEY + +--echo # NOT NULL +--error ER_PARSE_ERROR +create table t1 (a int, b int as (a+1) not null); +create table t1 (a int); +--error ER_PARSE_ERROR +alter table t1 add column b int as (a+1) not null; +drop table t1; + +--echo # NULL +--error ER_PARSE_ERROR +create table t1 (a int, b int as (a+1) null); +create table t1 (a int); +--error ER_PARSE_ERROR +alter table t1 add column b int as (a+1) null; +drop table t1; + +--echo # DEFAULT +--error ER_PARSE_ERROR +create table t1 (a int, b int as (a+1) default 0); +create table t1 (a int); +--error ER_PARSE_ERROR +alter table t1 add column b int as (a+1) default 0; +drop table t1; + +--echo # AUTO_INCREMENT +--error ER_PARSE_ERROR +create table t1 (a int, b int as (a+1) AUTO_INCREMENT); +create table t1 (a int); +--error ER_PARSE_ERROR +alter table t1 add column b int as (a+1) AUTO_INCREMENT; +drop table t1; + +--echo # [PRIMARY] KEY +--error ER_PARSE_ERROR +create table t1 (a int, b int as (a+1) key); +--error ER_PARSE_ERROR +create table t1 (a int, b int as (a+1) primary key); +create table t1 (a int); +--error ER_PARSE_ERROR +alter table t1 add column b int as (a+1) key; +--error ER_PARSE_ERROR +alter table t1 add column b int as (a+1) primary key; +drop table t1; + +--echo # Section 2. Other column definition options +--echo # - COMMENT +--echo # - REFERENCES (only syntax testing here) +--echo # - STORED (only systax testing here) +create table t1 (a int, b int as (a % 2) comment 'my comment'); +show create table t1; +describe t1; +drop table t1; +create table t1 (a int, b int as (a % 2)); +alter table t1 modify b int as (a % 2) comment 'my comment'; +show create table t1; +describe t1; +insert into t1 (a) values (1); +select * from t1; +insert into t1 values (2,default); +select a,b from t1; +create table t2 like t1; +show create table t2; +describe t2; +insert into t2 (a) values (1); +select * from t2; +insert into t2 values (2,default); +select a,b from t2; +drop table t2; +drop table t1; + +create table t1 (a int, b int as (a % 2) persistent); +show create table t1; +describe t1; +insert into t1 (a) values (1); +select * from t1; +insert into t1 values (2,default); +select a,b from t1; +drop table t1; + + +create table t2 (a int); +create table t1 (a int, b int as (a % 2) persistent references t2(a)); +show create table t1; +drop table t1; +create table t1 (a int, b int as (a % 2)); +--error ER_PARSE_ERROR +alter table t1 modify b int as (a % 2) persistent references t2(a); +show create table t1; +drop table t1; diff --git a/mysql-test/suite/vcol/inc/vcol_dependancies_on_vcol.inc b/mysql-test/suite/vcol/inc/vcol_dependancies_on_vcol.inc new file mode 100644 index 00000000000..91a55013699 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_dependancies_on_vcol.inc @@ -0,0 +1,43 @@ +################################################################################ +# inc/vcol_dependencies_on_vcol.inc # +# # +# Purpose: # +# Testing scenarios when columns depend on virtual columns, i.e. such as # +# - a virtual column is based on a virtual column # +# - a "real" column on which a virtual one is renamed/dropped # +# - a virtual column involved in partitioning is renamed/dropped # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-02 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +--echo # Can't define a virtual column on another virtual column +--error ER_VCOL_BASED_ON_VCOL +create table t1 (a int, b int as (a+1), c int as (b+1)); +create table t1 (a int, b int as (a+1)); +--error ER_VCOL_BASED_ON_VCOL +alter table t1 add column c int as (b+1); +drop table t1; + +--echo # Can't rename or drop a column used in the function of a virtual column +create table t1 (a int, b int as (a+1)); +--echo # On renaming/dropping a column on which a virtual field is +--echo # defined the following error is displayed: +--echo # "Unknown column 'a' in 'virtual column function'" +--error ER_BAD_FIELD_ERROR +alter table t1 drop column a; +--error ER_BAD_FIELD_ERROR +alter table t1 change a c int; +drop table t1; + +--echo # Can't rename or drop a virtual column used by the paritition function +create table t1 (a int, b int as (a+1)) partition by hash(b); +--error ER_BAD_FIELD_ERROR +alter table t1 drop b; +--error ER_BAD_FIELD_ERROR +alter table t1 change b c int as (a+1); + diff --git a/mysql-test/suite/vcol/inc/vcol_handler.inc b/mysql-test/suite/vcol/inc/vcol_handler.inc new file mode 100644 index 00000000000..49e2ddc2973 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_handler.inc @@ -0,0 +1,77 @@ +################################################################################ +# inc/vcol_handler.inc # +# # +# Purpose: # +# Testing HANDLER. # +# # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +create table t1 (a int, + b int as (-a), + c int as (-a) persistent, + d char(1), + index (a), + index (c)); +insert into t1 (a,d) values (4,'a'), (2,'b'), (1,'c'), (3,'d'); +select * from t1; + +--echo # HANDLER tbl_name OPEN +handler t1 open; + +--echo # HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) +handler t1 read a > (2); + +--echo # HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) WHERE non-vcol_field=expr +handler t1 read a > (2) where d='c'; + +--echo # HANDLER tbl_name READ vcol_index_name = (value1,value2,...) +handler t1 read c = (-2); + +--echo # HANDLER tbl_name READ vcol_index_name = (value1,value2,...) WHERE non-vcol_field=expr +handler t1 read c = (-2) where d='c'; + +--echo # HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) WHERE vcol_field=expr +handler t1 read a > (2) where b=-3 && c=-3; + +--echo # HANDLER tbl_name READ vcol_index_name <= (value1,value2,...) +handler t1 read c <= (-2); + +--echo # HANDLER tbl_name READ vcol_index_name > (value1,value2,...) WHERE vcol_field=expr +handler t1 read c <= (-2) where b=-3; + +--echo # HANDLER tbl_name READ vcol_index_name FIRST +handler t1 read c first; + +--echo # HANDLER tbl_name READ vcol_index_name NEXT +handler t1 read c next; + +--echo # HANDLER tbl_name READ vcol_index_name PREV +handler t1 read c prev; + +--echo # HANDLER tbl_name READ vcol_index_name LAST +handler t1 read c last; + +--echo # HANDLER tbl_name READ FIRST where non-vcol=expr +handler t1 read FIRST where a >= 2; + +--echo # HANDLER tbl_name READ FIRST where vcol=expr +handler t1 read FIRST where b >= -2; + +--echo # HANDLER tbl_name READ NEXT where non-vcol=expr +handler t1 read NEXT where d='c'; + +--echo # HANDLER tbl_name READ NEXT where vcol=expr +handler t1 read NEXT where b<=-4; + +--echo # HANDLER tbl_name CLOSE +handler t1 close; + +drop table t1; diff --git a/mysql-test/suite/vcol/inc/vcol_init_vars.pre b/mysql-test/suite/vcol/inc/vcol_init_vars.pre new file mode 100644 index 00000000000..f3c55c22df8 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_init_vars.pre @@ -0,0 +1,17 @@ +################################################################################ +# inc/vcol_init_vars.pre # +# # +# Purpose: # +# Initialize variables used in t/<name> test cases. # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-08-31 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +let $skip_full_text_check = 0; +let $skip_spatial_index_check = 0; diff --git a/mysql-test/suite/vcol/inc/vcol_ins_upd.inc b/mysql-test/suite/vcol/inc/vcol_ins_upd.inc new file mode 100644 index 00000000000..8d0a51f42c0 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_ins_upd.inc @@ -0,0 +1,289 @@ +################################################################################ +# inc/vcol_ins_upd.inc # +# # +# Purpose: # +# Testing DDL operations such as INSERT, UPDATE, REPLACE and DELETE. # +# # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +let $create1 = create table t1 (a int, + b int as (-a), + c int as (-a) persistent); +let $create2 = create table t1 (a int unique, + b int as (-a), + c int as (-a) persistent); +let $create3 = create table t1 (a int, + b int as (-a), + c int as (-a) persistent unique); +let $create4 = create table t1 (a int, + b int as (-a), + c int as (-a) persistent unique, + d varchar(16)); +eval $create1; +set sql_warnings = 1; + +--echo # +--echo # *** INSERT *** +--echo # + +--echo # INSERT INTO tbl_name VALUES... DEFAULT is specified against vcols +insert into t1 values (1,default,default); +select * from t1; +delete from t1; +select * from t1; + +--echo # INSERT INTO tbl_name VALUES... NULL is specified against vcols +insert into t1 values (1,null,null); +select * from t1; +delete from t1; +select * from t1; + +--echo # INSERT INTO tbl_name VALUES... a non-NULL value is specified against vcols +insert into t1 values (1,2,3); +select * from t1; +delete from t1; +select * from t1; + +--echo # INSERT INTO tbl_name (<non_vcol_list>) VALUES... +insert into t1 (a) values (1), (2); +select * from t1; +delete from t1; +select * from t1; + +--echo # INSERT INTO tbl_name (<normal+vcols>) VALUES... DEFAULT is specified +--echo # against vcols +insert into t1 (a,b) values (1,default), (2,default); +select * from t1; +delete from t1; +select * from t1; + +--echo # INSERT INTO tbl_name (<normal+vcols>) VALUES... NULL is specified against vcols +insert into t1 (a,b) values (1,null), (2,null); +select * from t1; +delete from t1; +select * from t1; + +--echo # INSERT INTO tbl_name (<normal+vcols>) VALUES... a non-NULL value is specified +--echo # against vcols +insert into t1 (a,b) values (1,3), (2,4); +select * from t1; +delete from t1; +select * from t1; +drop table t1; + +--echo # Table with UNIQUE non-vcol field. INSERT INTO tbl_name VALUES... ON DUPLICATE +--echo # KEY UPDATE <non_vcol>=expr, <vcol>=expr +eval $create2; +insert into t1 values (1,default,default); +insert into t1 values (1,default,default) + on duplicate key update a=2, b=default; +select a,b,c from t1; +delete from t1 where b in (1,2); +select * from t1; +drop table t1; + +--echo # Table with UNIQUE vcol field. INSERT INTO tbl_name VALUES... ON DUPLICATE +--echo # KEY UPDATE <non_vcol>=expr, <vcol>=expr +eval $create3; +insert into t1 values (1,default,default); +insert into t1 values (1,default,default) + on duplicate key update a=2, b=default; +select a,b,c from t1; + +--echo # CREATE new_table ... LIKE old_table +--echo # INSERT INTO new_table SELECT * from old_table +create table t2 like t1; +insert into t2 select * from t1; +select * from t1; +drop table t2; + +--echo # CREATE new_table ... LIKE old_table INSERT INTO new_table (<non-vcols>, <vcols>) +--echo # SELECT <non-vcols>, <vcols> from old_table +insert into t1 values (1,default,default); +select * from t1; +create table t2 like t1; +insert into t2 (a,b) select a,b from t1; +select * from t2; +drop table t2; +drop table t1; + +--echo # +--echo # *** UPDATE *** +--echo # + +--echo # UPDATE tbl_name SET non-vcol=expr WHERE non-vcol=expr +eval $create1; +insert into t1 (a) values (1), (2); +select * from t1; +update t1 set a=3 where a=2; +select * from t1; +delete from t1; +select * from t1; + +--echo # UPDATE tbl_name SET vcol=expr WHERE non-vcol=expr +insert into t1 (a) values (1), (2); +select * from t1; +update t1 set c=3 where a=2; +select * from t1; +delete from t1; +select * from t1; + +--echo # UPDATE tbl_name SET non-vcol=expr WHERE vcol=expr +insert into t1 (a) values (1), (2); +select * from t1; +update t1 set a=3 where b=-2; +select * from t1; +delete from t1; +select * from t1; + +--echo # UPDATE tbl_name SET vcol=expr WHERE vcol=expr +insert into t1 (a) values (1), (2); +select * from t1; +update t1 set c=3 where b=-2; +select * from t1; +delete from t1; +select * from t1; +drop table t1; + +--echo # INDEX created on vcol +--echo # UPDATE tbl_name SET non-vcol=expr WHERE vcol=const +eval $create3; +insert into t1 (a) values (1), (2); +select * from t1; +update t1 set a=3 where c=-2; +select * from t1; +delete from t1; +select * from t1; + + +--echo # INDEX created on vcol +--echo # UPDATE tbl_name SET non-vcol=expr WHERE vcol=between const1 and const2 +insert into t1 (a) values (1), (2); +select * from t1; +update t1 set a=3 where c between -3 and -2; +select * from t1; +delete from t1; +select * from t1; + +--echo # No INDEX created on vcol +--echo # UPDATE tbl_name SET non-vcol=expr WHERE vcol=between const1 and const2 +insert into t1 (a) values (1), (2); +select * from t1; +update t1 set a=3 where b between -3 and -2; +select * from t1; +delete from t1; +select * from t1; + +--echo # INDEX created on vcol +--echo # UPDATE tbl_name SET non-vcol=expr +--echo # WHERE vcol=between const1 and const2 ORDER BY vcol +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +update t1 set a=6 where c between -1 and 0 + order by c; +select * from t1; +delete from t1 where c between -6 and 0; +select * from t1; + +--echo # INDEX created on vcol +--echo # UPDATE tbl_name SET non-vcol=expr +--echo # WHERE vcol=between const1 and const2 ORDER BY vcol LIMIT 2 +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +update t1 set a=6 where c between -1 and 0 + order by c limit 2; +select * from t1; +delete from t1 where c between -2 and 0 order by c; +select * from t1; +delete from t1; + +--echo # INDEX created on vcol +--echo # UPDATE tbl_name SET non-vcol=expr +--echo # WHERE indexed vcol=between const1 and const2 and non-indexed vcol=const3 +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +update t1 set a=6 where (c between -2 and 0) and (b=-1); +select * from t1; +delete from t1; + +--echo # INDEX created on vcol +--echo # UPDATE tbl_name SET non-vcol=expr +--echo # WHERE indexed vcol=between const1 and const2 and non-indexed vcol=const3 +--echo # ORDER BY indexed vcol +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +update t1 set a=6 where (c between -2 and 0) and (b=-1) order by c; +select * from t1; +delete from t1; +drop table t1; + +let $innodb_engine = `SELECT @@session.storage_engine='innodb'`; +if ($innodb_engine) +{ + --echo # + --echo # Verify ON UPDATE/DELETE actions of FOREIGN KEYs + create table t2 (a int primary key, name varchar(10)); + create table t1 (a int primary key, b int as (a % 10) persistent); + insert into t2 values (1, 'value1'), (2,'value2'), (3,'value3'); + insert into t1 (a) values (1),(2),(3); + select * from t1; + select * from t2; + select t1.a, t1.b, t2.name from t1,t2 where t1.b=t2.a; + + --echo # - ON UPDATE RESTRICT + alter table t1 add foreign key (b) references t2(a) on update restrict; + --error ER_NO_REFERENCED_ROW_2 + insert into t1 (a) values (4); + --error ER_ROW_IS_REFERENCED_2 + update t2 set a=4 where a=3; + select t1.a, t1.b, t2.name from t1,t2 where t1.b=t2.a; + alter table t1 drop foreign key t1_ibfk_1; + + --echo # - ON DELETE RESTRICT + alter table t1 add foreign key (b) references t2(a) on delete restrict; + --error ER_ROW_IS_REFERENCED_2 + delete from t2 where a=3; + select t1.a, t1.b, t2.name from t1,t2 where t1.b=t2.a; + select t1.a, t1.b, t2.name from t1 left outer join t2 on (t1.b=t2.a); + alter table t1 drop foreign key t1_ibfk_1; + + --echo # - ON DELETE CASCADE + alter table t1 add foreign key (b) references t2(a) on delete cascade; + delete from t2 where a=3; + select t1.a, t1.b, t2.name from t1,t2 where t1.b=t2.a; + select t1.a, t1.b, t2.name from t1 left outer join t2 on (t1.b=t2.a); + alter table t1 drop foreign key t1_ibfk_1; + + drop table t1; + drop table t2; +} + +--echo # +--echo # *** REPLACE *** +--echo # + +--echo # UNIQUE INDEX on vcol +--echo # REPLACE tbl_name (non-vcols) VALUES (non-vcols); +eval $create4; +insert into t1 (a,d) values (1,'a'), (2,'b'); +select * from t1; +replace t1 (a,d) values (1,'c'); +select * from t1; +delete from t1; +select * from t1; + + +# *** DELETE +# All required tests for DELETE are performed as part of the above testing +# for INSERT, UPDATE and REPLACE. + +set sql_warnings = 0; +drop table t1; diff --git a/mysql-test/suite/vcol/inc/vcol_keys.inc b/mysql-test/suite/vcol/inc/vcol_keys.inc new file mode 100644 index 00000000000..062f4e3f72c --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_keys.inc @@ -0,0 +1,162 @@ +################################################################################ +# inc/vcol_keys.inc # +# # +# Purpose: # +# Testing keys, indexes defined upon virtual columns. # +# # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-02 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + + +--echo # - UNIQUE KEY +--echo # - INDEX +--echo # - FULLTEXT INDEX +--echo # - SPATIAL INDEX (not supported) +--echo # - FOREIGN INDEX (partially supported) +--echo # - CHECK (allowed but not used) + +--echo # UNIQUE +--error ER_KEY_BASED_ON_GENERATED_VIRTUAL_COLUMN +create table t1 (a int, b int as (a*2) unique); +create table t1 (a int, b int as (a*2) persistent unique); +show create table t1; +describe t1; +drop table t1; + +--error ER_KEY_BASED_ON_GENERATED_VIRTUAL_COLUMN +create table t1 (a int, b int as (a*2), unique key (b)); +create table t1 (a int, b int as (a*2) persistent, unique (b)); +show create table t1; +describe t1; +drop table t1; + +create table t1 (a int, b int as (a*2)); +--error ER_KEY_BASED_ON_GENERATED_VIRTUAL_COLUMN +alter table t1 add unique key (b); +drop table t1; +create table t1 (a int, b int as (a*2) persistent); +alter table t1 add unique key (b); +drop table t1; + +--echo # Testing data manipulation operations involving UNIQUE keys +--echo # on virtual columns can be found in: +--echo # - vcol_ins_upd.inc +--echo # - vcol_select.inc + +--echo # +--echo # INDEX +--error ER_KEY_BASED_ON_GENERATED_VIRTUAL_COLUMN +create table t1 (a int, b int as (a*2), index (b)); +--error ER_KEY_BASED_ON_GENERATED_VIRTUAL_COLUMN +create table t1 (a int, b int as (a*2), index (a,b)); + +create table t1 (a int, b int as (a*2) persistent, index (b)); +show create table t1; +describe t1; +drop table t1; + +create table t1 (a int, b int as (a*2) persistent, index (a,b)); +show create table t1; +describe t1; +drop table t1; + +create table t1 (a int, b int as (a*2)); +--error ER_KEY_BASED_ON_GENERATED_VIRTUAL_COLUMN +alter table t1 add index (b); +--error ER_KEY_BASED_ON_GENERATED_VIRTUAL_COLUMN +alter table t1 add index (a,b); +drop table t1; + +create table t1 (a int, b int as (a*2) persistent); +alter table t1 add index (b); +drop table t1; + +create table t1 (a int, b int as (a*2) persistent); +alter table t1 add index (a,b); +create table t2 like t1; +drop table t2; +drop table t1; + +--echo # Testing data manipulation operations involving INDEX +--echo # on virtual columns can be found in: +--echo # - vcol_select.inc + +--echo # +--echo # TODO: FULLTEXT INDEX + +--echo # SPATIAL INDEX +if (!$skip_spatial_index_check) +{ + --error ER_WRONG_ARGUMENTS + create table t1 (a int, b int as (a+1) persistent, spatial index (b)); + create table t1 (a int, b int as (a+1) persistent); + --error ER_WRONG_ARGUMENTS + alter table t1 add spatial index (b); + drop table t1; +} + +--echo # FOREIGN KEY + +--echo # Rejected FK options. +--error ER_WRONG_FK_OPTION_FOR_VIRTUAL_COLUMN +create table t1 (a int, b int as (a+1) persistent, + foreign key (b) references t2(a) on update set null); +--error ER_WRONG_FK_OPTION_FOR_VIRTUAL_COLUMN +create table t1 (a int, b int as (a+1) persistent, + foreign key (b) references t2(a) on update cascade); +--error ER_WRONG_FK_OPTION_FOR_VIRTUAL_COLUMN +create table t1 (a int, b int as (a+1) persistent, + foreign key (b) references t2(a) on delete set null); + +create table t1 (a int, b int as (a+1) persistent); +--error ER_WRONG_FK_OPTION_FOR_VIRTUAL_COLUMN +alter table t1 add foreign key (b) references t2(a) on update set null; +--error ER_WRONG_FK_OPTION_FOR_VIRTUAL_COLUMN +alter table t1 add foreign key (b) references t2(a) on update cascade; +--error ER_WRONG_FK_OPTION_FOR_VIRTUAL_COLUMN +alter table t1 add foreign key (b) references t2(a) on delete set null; +drop table t1; + +--error ER_KEY_BASED_ON_GENERATED_VIRTUAL_COLUMN +create table t1 (a int, b int as (a+1), + foreign key (b) references t2(a)); + +create table t1 (a int, b int as (a+1)); +--error ER_KEY_BASED_ON_GENERATED_VIRTUAL_COLUMN +alter table t1 add foreign key (b) references t2(a); +drop table t1; + +--echo # Allowed FK options. +create table t2 (a int primary key, b char(5)); +create table t1 (a int, b int as (a % 10) persistent, + foreign key (b) references t2(a) on update restrict); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, + foreign key (b) references t2(a) on update no action); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, + foreign key (b) references t2(a) on delete restrict); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, + foreign key (b) references t2(a) on delete cascade); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, + foreign key (b) references t2(a) on delete no action); +drop table t1; + +--echo +--echo # Testing data manipulation operations involving FOREIGN KEY +--echo # on virtual columns can be found in: +--echo # - vcol_ins_upd.inc +--echo # - vcol_select.inc + +--echo # +--echo # TODO: CHECK + diff --git a/mysql-test/suite/vcol/inc/vcol_non_stored_columns.inc b/mysql-test/suite/vcol/inc/vcol_non_stored_columns.inc new file mode 100644 index 00000000000..c586479618a --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_non_stored_columns.inc @@ -0,0 +1,162 @@ +################################################################################ +# inc/vcol_non_stored_columns.inc # +# # +# Purpose: # +# Ensure that MySQL behaviour is consistent irrelevant of # +# - the place of a non-stored column among other columns, # +# - the total number of non-stored fields. # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +--echo # Case 1. All non-stored columns. +--echo # This scenario is currently impossible due to the fact that virtual columns +--echo # with a constant expression are not allowed. + +--echo # Case 2. CREATE +--echo # - Column1: "real" +--echo # - Column 2: virtual non-stored +create table t1 (a int, b int as (-a)); +insert into t1 values (1,default); +select * from t1; +insert into t1 values (2,default); +select * from t1; +drop table t1; + +--echo # Case 3. CREATE +--echo # - Column1: "real" +--echo # - Column 2: virtual stored +create table t1 (a int, b int as (-a) persistent); +insert into t1 values (1,default); +select * from t1; +insert into t1 values (2,default); +select * from t1; +drop table t1; + +--echo # Case 4. CREATE +--echo # - Column1: virtual non-stored +--echo # - Column2: "real" +create table t1 (a int as (-b), b int); +insert into t1 values (default,1); +select * from t1; +insert into t1 values (default,2); +select * from t1; +drop table t1; + +--echo # Case 5. CREATE +--echo # - Column1: virtual stored +--echo # - Column2: "real" +create table t1 (a int as (-b) persistent, b int); +insert into t1 values (default,1); +select * from t1; +insert into t1 values (default,2); +select * from t1; +drop table t1; + +--echo # Case 6. CREATE +--echo # - Column1: "real" +--echo # - Column2: virtual non-stored +--echo # - Column3: virtual stored +create table t1 (a int, b int as (-a), c int as (-a) persistent); +insert into t1 values (1,default,default); +select * from t1; +insert into t1 values (2,default,default); +select * from t1; +drop table t1; + +--echo # Case 7. ALTER. Modify virtual stored -> virtual non-stored +create table t1 (a int, b int as (a % 2) persistent); +--error ER_UNSUPPORTED_ACTION_ON_VIRTUAL_COLUMN +alter table t1 modify b int as (a % 2); +show create table t1; +drop table t1; + +--echo # Case 8. ALTER. Modify virtual non-stored -> virtual stored +create table t1 (a int, b int as (a % 2)); +--error ER_UNSUPPORTED_ACTION_ON_VIRTUAL_COLUMN +alter table t1 modify b int as (a % 2) persistent; +show create table t1; +drop table t1; + +--echo # Case 9. CREATE LIKE +--echo # - Column1: "real" +--echo # - Column2: virtual non-stored +--echo # - Column3: virtual stored +create table t1 (a int, b int as (-a), c int as (-a) persistent); +create table t2 like t1; +insert into t2 values (1,default,default); +select * from t2; +insert into t2 values (2,default,default); +select * from t2; +drop table t2; +drop table t1; + +--echo # Case 10. ALTER. Dropping a virtual non-stored column. +--echo # - Column1: virtual non-stored +--echo # - Column2: "real" +create table t1 (a int as (-b), b int, c varchar(5)); +insert into t1 values (default,1,'v1'); +insert into t1 values (default,2,'v2'); +select * from t1; +alter table t1 drop column a; +select * from t1; +show create table t1; +drop table t1; + +--echo # Case 11. ALTER. Dropping a virtual stored column. +--echo # - Column1: virtual stored +--echo # - Column2: "real" +create table t1 (a int as (-b) persistent, b int, c char(5)); +insert into t1 values (default,1,'v1'); +insert into t1 values (default,2,'v2'); +select * from t1; +alter table t1 drop column a; +select * from t1; +show create table t1; +drop table t1; + +--echo # Case 12. ALTER. Adding a new virtual non-stored column. +create table t1 (a int, b datetime); +insert into t1 values (1,'2008-09-04'); +insert into t1 values (2,'2008-09-05'); +select * from t1; +alter table t1 add column c int as (dayofyear(b)) after a; +select * from t1; +show create table t1; +drop table t1; + +--echo # Case 13. ALTER. Adding a new virtual stored column. +create table t1 (a int, b datetime); +insert into t1 values (1,'2008-09-04'); +insert into t1 values (2,'2008-09-05'); +select * from t1; +alter table t1 add column c int as (dayofyear(b)) persistent after a; +select * from t1; +show create table t1; +drop table t1; + +--echo # Case 14. ALTER. Changing the expression of a virtual stored column. +create table t1 (a int, b datetime, c int as (week(b)) persistent); +insert into t1 values (1,'2008-09-04',default); +insert into t1 values (2,'2008-09-05',default); +select * from t1; +alter table t1 change column c c int as (week(b,1)) persistent; +select * from t1; +show create table t1; +drop table t1; + +--echo # Case 15. ALTER. Changing the expression of a virtual non-stored column. +create table t1 (a int, b datetime, c int as (week(b))); +insert into t1 values (1,'2008-09-04',default); +insert into t1 values (2,'2008-09-05',default); +select * from t1; +alter table t1 change column c c int as (week(b,1)); +select * from t1; +show create table t1; +drop table t1; + diff --git a/mysql-test/suite/vcol/inc/vcol_partition.inc b/mysql-test/suite/vcol/inc/vcol_partition.inc new file mode 100644 index 00000000000..c20dfaaa2a4 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_partition.inc @@ -0,0 +1,127 @@ +################################################################################ +# inc/vcol_partition.inc # +# # +# Purpose: # +# Testing partitioning tables with virtual columns. # +# # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +--source include/have_partition.inc + +--disable_warnings +drop table if exists t1; +--enable_warnings + +--echo # Case 1. Partitioning by RANGE based on a non-stored virtual column. + +CREATE TABLE t1 ( + a DATE NOT NULL, + b int as (year(a)) +) +PARTITION BY RANGE( b ) ( + PARTITION p0 VALUES LESS THAN (2006), + PARTITION p2 VALUES LESS THAN (2008) +); + +insert into t1 values ('2006-01-01',default); +insert into t1 values ('2007-01-01',default); +insert into t1 values ('2005-01-01',default); +select * from t1; + +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; + +--echo # Modify the expression of virtual column b +ALTER TABLE t1 modify b int as (year(a)-1); + +select * from t1; + +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; + +drop table t1; + +--echo # Case 2. Partitioning by LIST based on a stored virtual column. + +CREATE TABLE t1 (a int, b int as (a % 3 ) persistent) +PARTITION BY LIST (a+1) +(PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)); + +insert into t1 values (1,default); +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +select * from t1; + +# +# NOTE: The following tests are currently failing due to a +# [suspected] bug in the existing partition functionality. +# Here is what was observed when using mysqld compiled prior +# to adding the virtual column functionality. +# mysql> create table t1 (a int) partition by list (a) +# (partition p1 values in (1), partition p2 values in (2)); +# Query OK, 0 rows affected (0.00 sec) +# +# mysql> insert into t1 values (1), (1), (2); +# Query OK, 3 rows affected (0.00 sec) +# Records: 3 Duplicates: 0 Warnings: 0 +# +# mysql> select * from t1; +# +------+ +# | a | +# +------+ +# | 1 | +# | 1 | +# | 2 | +# +------+ +# 3 rows in set (0.00 sec) +# +# mysql> alter table t1 reorganize partition p1 into +# (partition p1 values in (3)); +# Query OK, 2 rows affected (3.90 sec) +# Records: 2 Duplicates: 2 Warnings: 0 +# +# mysql> select * from t1; +# +------+ +# | a | +# +------+ +# | 2 | <- Two row have been lost!!! +# +------+ +# 1 row in set (0.00 sec) + +# +#alter table t1 change b b int as ((a % 3)+1) persistent; +#--error ER_NO_PARTITION_FOR_GIVEN_VALUE +#alter table t1 change b b int as (a % 2) persistent; +#select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; + +select * from t1; + +drop table t1; + +--echo # Case 3. Partitioning by HASH based on a non-stored virtual column. + +CREATE TABLE t1 ( + a DATE NOT NULL, + b int as (year(a)) +) +PARTITION BY HASH( b % 3 ) PARTITIONS 3; + +insert into t1 values ('2005-01-01',default); +insert into t1 values ('2006-01-01',default); +select * from t1; + +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; + +--echo # Modify the expression of virtual column b +ALTER TABLE t1 modify b int as (year(a)-1); + +select * from t1; + +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; + +drop table t1; diff --git a/mysql-test/suite/vcol/inc/vcol_select.inc b/mysql-test/suite/vcol/inc/vcol_select.inc new file mode 100644 index 00000000000..28c3416a55a --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_select.inc @@ -0,0 +1,216 @@ +################################################################################ +# inc/vcol_select.inc # +# # +# Purpose: # +# Testing different SELECTs. # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-18 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +# Table t1 is used below to test: +# - Join type of ALL (sequential scan of the entire table) +# - Join type of Index +# - Join type of Range +# - Join type of Ref_or_null +create table t1 (a int, + b int as (-a), + c int as (-a) persistent, + index (c)); +insert into t1 (a) values (2), (1), (1), (3), (NULL); + +# Table t2 is used below to test: +# - Join type of system and const +create table t2 like t1; +insert into t2 (a) values (1); + +# Table t3 is used below to test +# - Join type of Eq_ref with a unique virtual column +# - Join type of Const +create table t3 (a int primary key, + b int as (-a), + c int as (-a) persistent unique); +insert into t3 (a) values (2),(1),(3); + + +--echo # select_type=SIMPLE, type=system +let $s = select * from t2; +eval $s; +eval explain $s; + +let $s = select * from t2 where c=-1; +eval $s; +eval explain $s; + +--echo # select_type=SIMPLE, type=ALL +let $s = select * from t1 where b=-1; +eval $s; +eval explain $s; + +--echo # select_type=SIMPLE, type=const +let $s = select * from t3 where a=1; +eval $s; +eval explain $s; + +--echo # select_type=SIMPLE, type=range +let $s = select * from t3 where c>=-1; +eval $s; +eval explain $s; + +--echo # select_type=SIMPLE, type=ref +let $s = select * from t1,t3 where t1.c=t3.c and t3.c=-1; +eval $s; +eval explain $s; + +--echo # select_type=PRIMARY, type=index,ALL +let $s = select * from t1 where b in (select c from t3); +eval $s; +eval explain $s; + +--echo # select_type=PRIMARY, type=range,ref +let $s = select * from t1 where c in (select c from t3 where c between -2 and -1); +eval $s; +eval explain $s; + +--echo # select_type=UNION, type=system +--echo # select_type=UNION RESULT, type=<union1,2> +let $s = select * from t1 union select * from t2; +eval $s; +eval explain $s; + +--echo # select_type=DERIVED, type=system +let $s = select * from (select a,b,c from t1) as t11; +eval $s; +eval explain $s; + +--echo ### +--echo ### Using aggregate functions with/without DISTINCT +--echo ### +--echo # SELECT COUNT(*) FROM tbl_name +let $s = select count(*) from t1; +eval $s; +eval explain $s; + +--echo # SELECT COUNT(DISTINCT <non-vcol>) FROM tbl_name +let $s = select count(distinct a) from t1; +eval $s; +eval explain $s; + +--echo # SELECT COUNT(DISTINCT <non-stored vcol>) FROM tbl_name +let $s = select count(distinct b) from t1; +eval $s; +eval explain $s; + +--echo # SELECT COUNT(DISTINCT <stored vcol>) FROM tbl_name +let $s = select count(distinct c) from t1; +eval $s; +eval explain $s; + +--echo ### +--echo ### filesort & range-based utils +--echo ### +--echo # SELECT * FROM tbl_name WHERE <vcol expr> +let $s = select * from t3 where c >= -2; +eval $s; +eval explain $s; + +--echo # SELECT * FROM tbl_name WHERE <non-vcol expr> +let $s = select * from t3 where a between 1 and 2; +eval $s; +eval explain $s; + +--echo # SELECT * FROM tbl_name WHERE <non-indexed vcol expr> +let $s = select * from t3 where b between -2 and -1; +eval $s; +eval explain $s; + +--echo # SELECT * FROM tbl_name WHERE <indexed vcol expr> +let $s = select * from t3 where c between -2 and -1; +eval $s; +eval explain $s; + +#### Remove for MyISAM due to a bug +#### when all the three records are returned (a=1,2,3) +#### instead of just two (a=1,2). +#### This bug is presumably in base SQL routines as the same happens +#### with this table: +#### create table t4 (a int primary key, b int, c int unique); +let $myisam_engine = `SELECT @@session.storage_engine='myisam'`; +if (!$myisam_engine) +{ + --echo # SELECT * FROM tbl_name WHERE <non-vcol expr> ORDER BY <non-indexed vcol> + let $s = select * from t3 where a between 1 and 2 order by b; + eval $s; + eval explain $s; +} + +--echo # SELECT * FROM tbl_name WHERE <non-vcol expr> ORDER BY <indexed vcol> +let $s = select * from t3 where a between 1 and 2 order by c; +eval $s; +eval explain $s; + +--echo # SELECT * FROM tbl_name WHERE <non-indexed vcol expr> ORDER BY <non-vcol> +let $s = select * from t3 where b between -2 and -1 order by a; +eval $s; +eval explain $s; + +#### Remove for MyISAM due to a bug +#### when all the three records are returned (a=1,2,3) +#### instead of just two (a=1,2). +#### This bug is presumably in base SQL routines as the same happens +#### with this table: +#### create table t4 (a int primary key, b int, c int unique); +let $innodb_engine = `SELECT @@session.storage_engine='innodb'`; +if (!$innodb_engine) +{ + --echo # SELECT * FROM tbl_name WHERE <indexed vcol expr> ORDER BY <non-vcol> + let $s = select * from t3 where c between -2 and -1 order by a; + eval $s; + eval explain $s; +} + +--echo # SELECT * FROM tbl_name WHERE <non-indexed vcol expr> ORDER BY <non-indexed vcol> +let $s = select * from t3 where b between -2 and -1 order by b; +eval $s; +eval explain $s; + +--echo # SELECT * FROM tbl_name WHERE <indexed vcol expr> ORDER BY <non-indexed vcol> +let $s = select * from t3 where c between -2 and -1 order by b; +eval $s; +eval explain $s; + +--echo # SELECT * FROM tbl_name WHERE <non-indexed vcol expr> ORDER BY <indexed vcol> +let $s = select * from t3 where b between -2 and -1 order by c; +eval $s; +eval explain $s; + +--echo # SELECT * FROM tbl_name WHERE <indexed vcol expr> ORDER BY <indexed vcol> +let $s = select * from t3 where c between -2 and -1 order by c; +eval $s; +eval explain $s; + +--echo # SELECT sum(<non-indexed vcol>) FROM tbl_name GROUP BY <non-indexed vcol> +let $s = select sum(b) from t1 group by b; +eval $s; +eval explain $s; + +--echo # SELECT sum(<indexed vcol>) FROM tbl_name GROUP BY <indexed vcol> +let $s = select sum(c) from t1 group by c; +eval $s; +eval explain $s; + +--echo # SELECT sum(<non-indexed vcol>) FROM tbl_name GROUP BY <indexed vcol> +let $s = select sum(b) from t1 group by c; +eval $s; +eval explain $s; + +--echo # SELECT sum(<indexed vcol>) FROM tbl_name GROUP BY <non-indexed vcol> +let $s = select sum(c) from t1 group by b; +eval $s; +eval explain $s; + diff --git a/mysql-test/suite/vcol/inc/vcol_supported_sql_funcs.inc b/mysql-test/suite/vcol/inc/vcol_supported_sql_funcs.inc new file mode 100644 index 00000000000..f19bec04c7a --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_supported_sql_funcs.inc @@ -0,0 +1,42 @@ +################################################################################ +# inc/vcol_supported_sql_funcs.inc # +# # +# Purpose: # +# Tests frame for allowed sql functions # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-08-31 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +--enable_warnings +set sql_warnings = 1; +eval create table t1 ($cols); +show create table t1; +if ($rows) +{ + eval insert into t1 values ($values1); + dec $rows; +} +if ($rows) +{ + eval insert into t1 values ($values2); + dec $rows; +} +if ($rows) +{ + eval insert into t1 values ($values3); + dec $rows; +} +if ($rows) +{ + eval insert into t1 values ($values4); + dec $rows; +} +select * from t1; +drop table t1; +set sql_warnings = 0; diff --git a/mysql-test/suite/vcol/inc/vcol_supported_sql_funcs_main.inc b/mysql-test/suite/vcol/inc/vcol_supported_sql_funcs_main.inc new file mode 100644 index 00000000000..4f6b960f9d0 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_supported_sql_funcs_main.inc @@ -0,0 +1,1229 @@ +################################################################################ +# inc/vcol_supported_sql_funcs_main.inc # +# # +# Purpose: # +# Tests frame for allowed sql functions # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-08-31 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +--echo # +--echo # NUMERIC FUNCTIONS +--echo # + +--echo # ABS() +let $cols = a int, b int as (abs(a)); +let $values1 = -1, default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ACOS() +let $cols = a double, b double as (format(acos(a),6)); +let $values1 = 1, default; +let $values2 = 1.0001,default; +let $values3 = 0,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ASIN() +let $cols = a double, b double as (format(asin(a),6)); +let $values1 = 0.2, default; +let $values2 = 1.0001,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo #ATAN +let $cols = a double, b double, c double as (format(atan(a,b),6)); +let $values1 = -2,2,default; +let $values2 = format(PI(),6),0,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +let $cols = a double, c double as (format(atan(a),6)); +let $values1 = -2,default; +let $values2 = format(PI(),6),default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ATAN2 +let $cols = a double, b double, c double as (format(atan2(a,b),6)); +let $values1 = -2,2,default; +let $values2 = format(PI(),6),0,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # CEIL() +let $cols = a double, b int as (ceil(a)); +let $values1 = 1.23,default; +let $values2 = -1.23,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # CONV() +let $cols = a varchar(10), b int, c int, d varchar(10) as (conv(a,b,c)); +let $values1 = 'a',16,2,default; +let $values2 = '6e',18,8,default; +let $values3 = -17,10,-18,default; +let $values4 = 10+'10'+'10'+0xa,10,10,default; +let $rows = 4; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # COS() +let $cols = a double, b double as (format(cos(a),6)); +let $values1 = format(PI(),6),default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # COT() +let $cols = a double, b double as (format(cot(a),6)); +let $values1 = 12,default; +let $values2 = 0,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # CRC32() +let $cols = a varchar(10), b long as (crc32(a)); +let $values1 = 'MySQL',default; +let $values2 = 'mysql',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DEGREES() +let $cols = a double, b double as (format(degrees(a),6)); +let $values1 = format(PI(),6),default; +let $values2 = format(PI()/2,6),default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # / +let $cols = a double, b double as (a/2); +let $values1 = 2,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # EXP() +let $cols = a double, b double as (format(exp(a),6)); +let $values1 = 2,default; +let $values2 = -2,default; +let $values3 = 0,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # FLOOR() +let $cols = a double, b long as (floor(a)); +let $values1 = 1.23,default; +let $values2 = -1.23,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LN() +let $cols = a double, b double as (format(ln(a),6)); +let $values1 = 2,default; +let $values2 = -2,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LOG() +let $cols = a double, b double, c double as (format(log(a,b),6)); +let $values1 = 2,65536,default; +let $values2 = 10,100,default; +let $values3 = 1,100,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +let $cols = a double, b double as (format(log(a),6)); +let $values1 = 2,default; +let $values2 = -2,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LOG2() +let $cols = a double, b double as (format(log2(a),6)); +let $values1 = 65536,default; +let $values2 = -100,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LOG10() +let $cols = a double, b double as (format(log10(a),6)); +let $values1 = 2,default; +let $values2 = 100,default; +let $values3 = -100,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # - +let $cols = a double, b double as (a-1); +let $values1 = 2,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # MOD() +let $cols = a int, b int as (mod(a,10)); +let $values1 = 1,default; +let $values2 = 11,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # % +let $cols = a int, b int as (a % 10); +let $values1 = 1,default; +let $values2 = 11,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # OCT() +let $cols = a double, b varchar(10) as (oct(a)); +let $values1 = 12,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # PI() +let $cols = a double, b double as (format(PI()*a*a,6)); +let $values1 = 1,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # + +let $cols = a int, b int as (a+1); +let $values1 = 1,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # POW, POWER +let $cols = a int, b int as (pow(a,2)), c int as (power(a,2)); +let $values1 = 1,default,default; +let $values2 = 2,default,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # RADIANS() +let $cols = a double, b double as (format(radians(a),6)); +let $values1 = 90,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ROUND() +let $cols = a double, b int as (round(a)); +let $values1 = -1.23,default; +let $values2 = -1.58,default; +let $values3 = 1.58,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +let $cols = a double, b double, c int as (round(a,b)); +let $values1 = 1.298,1,default; +let $values2 = 1.298,0,default; +let $values3 = 23.298,-1,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SIGN() +let $cols = a double, b int as (sign(a)); +let $values1 = -32,default; +let $values2 = 0,default; +let $values3 = 234,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SIN() +let $cols = a double, b double as (format(sin(a),6)); +let $values1 = format(PI()/2,6),default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SQRT() +let $cols = a double, b double as (format(sqrt(a),6)); +let $values1 = 4,default; +let $values2 = 20,default; +let $values3 = -16,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TAN() +let $cols = a double, b double as (format(tan(a),6)); +let $values1 = format(PI(),6),default; +let $values2 = format(PI()+1,6),default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # * +let $cols = a double, b double as (a*3); +let $values1 = 0,default; +let $values2 = 1,default; +let $values3 = 2,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TRUNCATE() +let $cols = a double, b double as (truncate(a,4)); +let $values1 = 1.223,default; +let $values2 = 1.999,default; +let $values3 = 1.999,default; +let $values4 = 122,default; +let $rows = 4; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # Unary - +let $cols = a double, b double as (-a); +let $values1 = 1,default; +let $values2 = -1,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # +--echo # STRING FUNCTIONS +--echo # + +--echo # ASCII() +let $cols = a char(2), b int as (ascii(a)); +let $values1 = '2',default; +let $values2 = 2,default; +let $values3 = 'dx',default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # BIN() +let $cols = a int, b varchar(10) as (bin(a)); +let $values1 = 12,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # BIT_LENGTH() +let $cols = a varchar(10), b long as (bit_length(a)); +let $values1 = 'text',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # CHAR_LENGTH() +let $cols = a varchar(10), b long as (char_length(a)); +let $values1 = 'text',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # CHAR() +let $cols = a int, b int, c varbinary(10) as (char(a,b)); +let $values1 = 77,121,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # CHARACTER_LENGTH() +let $cols = a varchar(10), b long as (character_length(a)); +let $values1 = 'text',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # CONCAT_WS() +let $cols = a varchar(10), b varchar(10), c varchar(20) as (concat_ws(',',a,b)); +let $values1 = 'value1','value2',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # CONCAT() +let $cols = a varchar(10), b varchar(10), c varchar(20) as (concat(a,',',b)); +let $values1 = 'value1','value2',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ELT() +let $cols = a varchar(10), b varchar(10), c int, d varchar(10) as (elt(c,a,b)); +let $values1 = 'value1','value2',1,default; +let $values2 = 'value1','value2',2,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # EXPORT_SET() +let $cols = a int, b varchar(10) as (export_set(a,'1','0','',10)); +let $values1 = 6,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # FIELD() +let $cols = a varchar(10), b varchar(10), c int as (field('aa',a,b)); +let $values1 = 'aa','bb',default; +let $values2 = 'bb','aa',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # FIND_IN_SET() +let $cols = a varchar(10), b varchar(10), c int as (find_in_set(a,b)); +let $values1 = 'aa','aa,bb,cc',default; +let $values2 = 'aa','bb,aa,cc',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # FORMAT() +let $cols = a double, b varchar(20) as (format(a,2)); +let $values1 = 12332.123456,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # HEX() +let $cols = a int, b varchar(10) as (hex(a)); +let $values1 = 17,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +let $cols = a varchar(10), b varchar(10) as (hex(a)); +let $values1 = 'abc',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # INSERT() +let $cols = a varchar(10), b varchar(10), c varchar(20) as (insert(a,length(a),length(b),b)); +let $values1 = 'start,','end',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # INSTR() +let $cols = a varchar(10), b varchar(10), c int as (instr(a,b)); +let $values1 = 'foobarbar,','bar',default; +let $values2 = 'xbar,','foobar',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LCASE() +let $cols = a varchar(10), b varchar(10) as (lcase(a)); +let $values1 = 'MySQL',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LEFT() +let $cols = a varchar(10), b varchar(5) as (left(a,5)); +let $values1 = 'foobarbar',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LENGTH() +let $cols = a varchar(10), b int as (length(a)); +let $values1 = 'text',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LIKE +let $cols = a varchar(10), b bool as (a like 'H%!o' escape '!'); +let $values1 = 'Hello',default; +let $values2 = 'MySQL',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LOCATE() +let $cols = a varchar(10), b varchar(10) as (locate('bar',a)); +let $values1 = 'foobarbar',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LOWER() +let $cols = a varchar(10), b varchar(10) as (lower(a)); +let $values1 = 'MySQL',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LPAD() +let $cols = a varchar(10), b varchar(10) as (lpad(a,4,' ')); +let $values1 = 'MySQL',default; +let $values2 = 'M',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LTRIM() +let $cols = a varchar(10), b varchar(10) as (ltrim(a)); +let $values1 = ' MySQL',default; +let $values2 = 'MySQL',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # MAKE_SET() +let $cols = a varchar(10), b varchar(10), c int, d varchar(30) as (make_set(c,a,b)); +let $values1 = 'a','b',1,default; +let $values2 = 'a','b',3,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # MID() +let $cols = a varchar(10), b varchar(10) as (mid(a,1,2)); +let $values1 = 'foobarbar',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # NOT LIKE +let $cols = a varchar(10), b bool as (a not like 'H%o'); +let $values1 = 'Hello',default; +let $values2 = 'MySQL',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # NOT REGEXP +let $cols = a varchar(10), b bool as (a not regexp 'H.+o'); +let $values1 = 'Hello',default; +let $values2 = 'hello',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # OCTET_LENGTH() +let $cols = a varchar(10), b int as (octet_length(a)); +let $values1 = 'text',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ORD() +let $cols = a varchar(10), b long as (ord(a)); +let $values1 = '2',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # POSITION() +let $cols = a varchar(10), b varchar(10) as (position('bar' in a)); +let $values1 = 'foobarbar',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # QUOTE() +let $cols = a varchar(10), b varchar(10) as (quote(a)); +let $values1 = 'Don\'t',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # REGEXP() +let $cols = a varchar(10), b bool as (a regexp 'H.+o'); +let $values1 = 'Hello',default; +let $values2 = 'hello',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # REPEAT() +let $cols = a varchar(10), b varchar(30) as (repeat(a,3)); +let $values1 = 'MySQL',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # REPLACE() +let $cols = a varchar(10), b varchar(30) as (replace(a,'aa','bb')); +let $values1 = 'maa',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # REVERSE() +let $cols = a varchar(10), b varchar(30) as (reverse(a)); +let $values1 = 'maa',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # RIGHT() +let $cols = a varchar(10), b varchar(10) as (right(a,4)); +let $values1 = 'foobarbar',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # RLIKE() +let $cols = a varchar(10), b bool as (a rlike 'H.+o'); +let $values1 = 'Hello',default; +let $values2 = 'MySQL',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # RPAD() +let $cols = a varchar(10), b varchar(10) as (rpad(a,4,'??')); +let $values1 = 'He',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # RTRIM(); +let $cols = a varchar(10), b varchar(10) as (rtrim(a)); +let $values1 = 'Hello ',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SOUNDEX() +let $cols = a varchar(10), b varchar(20) as (soundex(a)); +let $values1 = 'Hello',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SOUNDS LIKE +let $cols = a varchar(10), b varchar(10), c bool as (a sounds like b); +let $values1 = 'Hello','Hello',default; +let $values2 = 'Hello','MySQL',default; +let $values3 = 'Hello','hello',default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SPACE() +let $cols = a varchar(5), b varchar(10) as (concat(a,space(5))); +let $values1 = 'Hello', default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # STRCMP() +let $cols = a varchar(9), b varchar(9), c tinyint(1) as (strcmp(a,b)); +let $values1 = 'Hello','Hello', default; +let $values2 = 'Hello','Hello1', default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SUBSTR() +let $cols = a varchar(5), b varchar(10) as (substr(a,2)); +let $values1 = 'Hello',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SUBSTRING_INDEX() +let $cols = a varchar(15), b varchar(10) as (substring_index(a,'.',2)); +let $values1 = 'www.mysql.com',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SUBSTRING() +let $cols = a varchar(5), b varchar(10) as (substring(a from 2 for 2)); +let $values1 = 'Hello',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TRIM() +let $cols = a varchar(15), b varchar(10) as (trim(a)); +let $values1 = ' aa ',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # UCASE() +let $cols = a varchar(5), b varchar(10) as (ucase(a)); +let $values1 = 'MySQL',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # UNHEX() +let $cols = a varchar(15), b varchar(10) as (unhex(a)); +let $values1 = '4D7953514C',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # UPPER() +let $cols = a varchar(5), b varchar(10) as (upper(a)); +let $values1 = 'MySQL',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # +--echo # CONTROL FLOW FUNCTIONS +--echo # + +--echo # CASE +let $cols = a varchar(10), b varchar(16) as (case a when NULL then 'asd' when 'b' then 'B' else a end); +let $values1 = NULL,default; +let $values2 = 'b',default; +let $values3 = 'c',default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # IF +let $cols = a int, b int, c int as (if(a=1,a,b)); +let $values1 = 1,2,default; +let $values2 = 3,4,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # IFNULL +let $cols = a varchar(10), b varchar(10), c varchar(10) as (ifnull(a,'DEFAULT')); +let $values1 = NULL,'adf',default; +let $values2 = 'a','adf',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # NULLIF +let $cols = a varchar(10), b varchar(10) as (nullif(a,'DEFAULT')); +let $values1 = 'DEFAULT',default; +let $values2 = 'a',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # +--echo # OPERATORS +--echo # + +--echo # AND, && +let $cols = a int, b bool as (a>0 && a<2); +let $values1 = -1,default; +let $values2 = 1,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # BETWEEN ... AND ... +let $cols = a int, b bool as (a between 0 and 2); +let $values1 = -1,default; +let $values2 = 1,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # BINARY +let $cols = a varchar(10), b varbinary(10) as (binary a); +let $values1 = '11',default; +let $values2 = 1,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # & +let $cols = a int, b int as (a & 5); +let $values1 = 1,default; +let $values2 = 0,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ~ +let $cols = a int, b int as (~a); +let $values1 = 1,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # | +let $cols = a int, b int as (a | 5); +let $values1 = 1,default; +let $values2 = 0,default; +let $values3 = 2,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ^ +let $cols = a int, b int as (a ^ 5); +let $values1 = 1,default; +let $values2 = 0,default; +let $values3 = 2,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DIV +let $cols = a int, b int as (a div 5); +let $values1 = 1,default; +let $values2 = 7,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # <=> +let $cols = a int, b int, c bool as (a <=> b); +let $values1 = 1,1,default; +let $values2 = NULL,NULL,default; +let $values3 = 1,NULL,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # = +let $cols = a varchar(10), b varchar(10), c bool as (a=b); +let $values1 = 'a','b',default; +let $values2 = 'a','a',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # >= +let $cols = a varchar(10), b varchar(10), c bool as (a >= b); +let $values1 = 'a','b',default; +let $values2 = 'a','a',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # > +let $cols = a varchar(10), b varchar(10), c bool as (a > b); +let $values1 = 'a','b',default; +let $values2 = 'a','a',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # IS NOT NULL +let $cols = a int, b bool as (a is not null); +let $values1 = 1,default; +let $values2 = NULL,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # IS NULL +let $cols = a int, b bool as (a is null); +let $values1 = 1,default; +let $values2 = NULL,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # << +let $cols = a int, b int as (a << 2); +let $values1 = 1,default; +let $values2 = 3,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # <= +let $cols = a varchar(10), b varchar(10), c bool as (a <= b); +let $values1 = 'b','a',default; +let $values2 = 'b','b',default; +let $values3 = 'b','c',default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # < +let $cols = a varchar(10), b varchar(10), c bool as (a < b); +let $values1 = 'b','a',default; +let $values2 = 'b','b',default; +let $values3 = 'b','c',default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # NOT BETWEEN ... AND ... +let $cols = a int, b bool as (a not between 0 and 2); +let $values1 = -1,default; +let $values2 = 1,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # <> +let $cols = a varchar(10), b varchar(10), c bool as (a <> b); +let $values1 = 'b','a',default; +let $values2 = 'b','b',default; +let $values3 = 'b','c',default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # != +let $cols = a varchar(10), b varchar(10), c bool as (a != b); +let $values1 = 'b','a',default; +let $values2 = 'b','b',default; +let $values3 = 'b','c',default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ||, OR +let $cols = a int, b int as (a>5 || a<3); +let $values1 = 1,default; +let $values2 = 4,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # >> +let $cols = a int, b int as (a >> 2); +let $values1 = 8,default; +let $values2 = 3,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # XOR +let $cols = a int, b int as (a xor 5); +let $values1 = 0,default; +let $values2 = 1,default; +let $values3 = 2,default; +let $rows = 3; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # +--echo # DATE AND TIME FUNCTIONS +--echo # + +--echo # ADDDATE() +let $cols = a datetime, b datetime as (adddate(a,interval 1 month)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ADDTIME() +let $cols = a datetime, b datetime as (addtime(a,'02:00:00')); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # CONVERT_TZ() +let $cols = a datetime, b datetime as (convert_tz(a,'MET','UTC')); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DATE_ADD() +let $cols = a datetime, b datetime as (date_add(a,interval 1 month)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DATE_FORMAT() +let $cols = a datetime, b varchar(64) as (date_format(a,'%W %M %D')); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DATE_SUB() +let $cols = a datetime, b datetime as (date_sub(a,interval 1 month)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DATE() +let $cols = a datetime, b datetime as (date(a)); +let $values1 = '2008-08-31 02:00:00',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DATEDIFF() +let $cols = a datetime, b long as (datediff(a,'2000-01-01')); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DAY() +let $cols = a datetime, b int as (day(a)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DAYNAME() +let $cols = a datetime, b varchar(10) as (dayname(a)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DAYOFMONTH() +let $cols = a datetime, b int as (dayofmonth(a)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DAYOFWEEK() +let $cols = a datetime, b int as (dayofweek(a)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DAYOFYEAR() +let $cols = a datetime, b int as (dayofyear(a)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # EXTRACT +let $cols = a datetime, b int as (extract(year from a)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # FROM_DAYS() +let $cols = a long, b datetime as (from_days(a)); +let $values1 = 730669,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # FROM_UNIXTIME() +let $cols = a long, b datetime as (from_unixtime(a)); +let $values1 = 1196440219,default; +let $rows = 1; +set time_zone='UTC'; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # GET_FORMAT() +let $cols = a datetime, b varchar(32) as (date_format(a,get_format(DATE,'EUR'))); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # HOUR() +let $cols = a time, b long as (hour(a)); +let $values1 = '10:05:03',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # LAST_DAY() +let $cols = a datetime, b datetime as (last_day(a)); +let $values1 = '2003-02-05',default; +let $values2 = '2003-02-32',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # MAKEDATE() +let $cols = a int, b datetime as (makedate(a,1)); +let $values1 = 2001,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # MAKETIME() +let $cols = a int, b time as (maketime(a,1,3)); +let $values1 = 12,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # MICROSECOND() +let $cols = a datetime, b long as (microsecond(a)); +let $values1 = '2009-12-31 12:00:00.123456',default; +let $values2 = '2009-12-31 23:59:59.000010',default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # MINUTE() +let $cols = a datetime, b int as (minute(a)); +let $values1 = '2009-12-31 23:59:59.000010',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # MONTH() +let $cols = a datetime, b int as (month(a)); +let $values1 = '2009-12-31 23:59:59.000010',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # MONTHNAME() +let $cols = a datetime, b varchar(16) as (monthname(a)); +let $values1 = '2009-12-31 23:59:59.000010',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # PERIOD_ADD() +let $cols = a int, b int as (period_add(a,2)); +let $values1 = 200801,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # PERIOD_DIFF() +let $cols = a int, b int, c int as (period_diff(a,b)); +let $values1 = 200802,200703,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # QUARTER() +let $cols = a datetime, b int as (quarter(a)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SEC_TO_TIME() +let $cols = a long, b time as (sec_to_time(a)); +let $values1 = 2378,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SECOND() +let $cols = a datetime, b int as (second(a)); +let $values1 = '10:05:03',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # STR_TO_DATE() +let $cols = a varchar(64), b datetime as (str_to_date(a,'%m/%d/%Y')); +let $values1 = '04/30/2004',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SUBDATE() +let $cols = a datetime, b datetime as (subdate(a,interval 1 month)); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SUBTIME() +let $cols = a datetime, b datetime as (subtime(a,'02:00:00')); +let $values1 = '2008-08-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TIME_FORMAT() +let $cols = a datetime, b varchar(32) as (time_format(a,'%r')); +let $values1 = '2008-08-31 02:03:04',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TIME_TO_SEC() +let $cols = a time, b long as (time_to_sec(a)); +let $values1 = '22:23:00',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TIME() +let $cols = a datetime, b time as (time(a)); +let $values1 = '2008-08-31 02:03:04',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TIMEDIFF() +let $cols = a datetime, b datetime, c long as (timediff(a,b)); +let $values1 = '2008-12-31 23:59:59.000001','2008-12-30 01:01:01.000002',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TIMESTAMP() +let $cols = a datetime, b timestamp as (timestamp(a)); +let $values1 = '2008-12-31',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TIMESTAMPADD() +let $cols = a datetime, b timestamp as (timestampadd(minute,1,a)); +let $values1 = '2003-01-02',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TIMESTAMPDIFF() +let $cols = a timestamp, b timestamp, c long as (timestampdiff(MONTH, a,b)); +let $values1 = '2003-02-01','2003-05-01',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # TO_DAYS() +let $cols = a datetime, b long as (to_days(a)); +let $values1 = '2007-10-07',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # WEEK() +let $cols = a datetime, b int as (week(a)); +let $values1 = '2008-09-01',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # WEEKDAY() +let $cols = a datetime, b int as (weekday(a)); +let $values1 = '2008-09-01',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # WEEKOFYEAR() +let $cols = a datetime, b int as (weekofyear(a)); +let $values1 = '2008-09-01',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # YEAR() +let $cols = a datetime, b int as (year(a)); +let $values1 = '2008-09-01',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # YEARWEEK() +let $cols = a datetime, b int as (yearweek(a)); +let $values1 = '2008-09-01',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # +--echo # FULL TEXT SEARCH FUNCTIONS +--echo # +--echo # None. + +--echo # +--echo # CAST FUNCTIONS AND OPERATORS +--echo # + +--echo # CAST() +let $cols = a int, b long as (cast(a as unsigned)); +let $values1 = 1,default; +let $values2 = -1,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # Convert() +let $cols = a int, b long as (convert(a,unsigned)); +let $values1 = 1,default; +let $values2 = -1,default; +let $rows = 2; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # +--echo # XML FUNCTIONS +--echo # +--echo # None. + + +--echo # +--echo # OTHER FUNCTIONS +--echo # + +--echo # AES_DECRYPT(), AES_ENCRYPT() +let $cols = a varchar(1024), b varchar(1024) as (aes_encrypt(aes_decrypt(a,'adf'),'adf')); +let $values1 = 'MySQL',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # BIT_COUNT() +let $cols = a int, b int as (bit_count(a)); +let $values1 = 5,default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # CHARSET() +let $cols = a varchar(1024), b varchar(1024) as (charset(a)); +let $values1 = 'abc',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # COERCIBILITY() +let $cols = a varchar(1024), b int as (coercibility(a)); +let $values1 = 'abc',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # COLLATION() +let $cols = a varchar(1024), b varchar(1024) as (collation(a)); +let $values1 = 'abc',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # COMPRESS(), UNCOMPRESS() +let $cols = a varchar(1024), b varchar(1024) as (uncompress(compress(a))); +let $values1 = 'MySQL',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # ENCODE(), DECODE() +let $cols = a varchar(1024), b varchar(1024) as (decode(encode(a,'abc'),'abc')); +let $values1 = 'MySQL',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # DEFAULT() +let $cols = a varchar(1024) default 'aaa', b varchar(1024) as (ifnull(a,default(a))); +let $values1 = 'any value',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +#--echo # DES_ENCRYPT(), DES_DECRYPT() +#--source include/have_ssl.inc +#let $cols = a varchar(1024), b varchar(1024) as (des_encrypt(des_decrypt(a,'adf'),'adf')); +#let $values1 = 'MySQL',default; +#let $rows = 1; +#--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # INET_ATON(), INET_NTOA() +let $cols = a varchar(1024), b varchar(1024) as (inet_ntoa(inet_aton(a))); +let $values1 = '127.0.0.1',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # MD5() +let $cols = a varchar(1024), b varbinary(32) as (md5(a)); +let $values1 = 'testing',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # OLD_PASSWORD() +let $cols = a varchar(1024), b varchar(1024) as (old_password(a)); +let $values1 = 'badpwd',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # PASSWORD() +let $cols = a varchar(1024), b varchar(1024) as (password(a)); +let $values1 = 'badpwd',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SHA1() +let $cols = a varchar(1024), b varchar(1024) as (sha1(a)); +let $values1 = 'abc',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # SHA() +let $cols = a varchar(1024), b varchar(1024) as (sha(a)); +let $values1 = 'abc',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + +--echo # UNCOMPRESSED_LENGTH() +let $cols = a char, b varchar(1024) as (uncompressed_length(compress(repeat(a,30)))); +let $values1 = 'a',default; +let $rows = 1; +--source suite/vcol/inc/vcol_supported_sql_funcs.inc + diff --git a/mysql-test/suite/vcol/inc/vcol_trigger_sp.inc b/mysql-test/suite/vcol/inc/vcol_trigger_sp.inc new file mode 100644 index 00000000000..ddf13fef6a1 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_trigger_sp.inc @@ -0,0 +1,110 @@ +################################################################################ +# inc/vcol_trigger_sp.inc # +# # +# Purpose: # +# Testing triggers, stored procedures and functions # +# defined on tables with virtual columns. # +# # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +create table t1 (a int, + b int as (a/10), + c int as (a/10) persistent); + +create table t2 (a timestamp); + +delimiter |; + +create trigger trg1 before insert on t1 for each row +begin + if (new.b < 10) then + set new.a:= 100; + set new.b:= 9; + set new.c:= 9; + end if; + + if (new.c > 50) then + set new.a:= 500; + end if; +end| + +create trigger trg2 after insert on t1 for each row +begin + if (new.b >= 60) then + insert into t2 values (now()); + end if; +end| + +create function f1() +returns int +begin + declare sum1 int default '0'; + declare cur1 cursor for select sum(b) from t1; + open cur1; + fetch cur1 into sum1; + close cur1; + return sum1; +end| + +delimiter ;| + +set sql_warnings = 1; + +insert into t1 (a) values (200); +select * from t1; +select * from t2; + +insert into t1 (a) values (10); +select * from t1; +select * from t2; + +insert into t1 (a) values (600); +select * from t1; +--replace_column 1 <timestamp> +select * from t2; + +select f1(); + +set sql_warnings = 0; + +drop trigger trg1; +drop trigger trg2; +drop table t2; + +delimiter |; + +create procedure p1() +begin + declare i int default '0'; + create table t2 like t1; + insert into t2 (a) values (100), (200); + begin + declare cur1 cursor for select sum(c) from t2; + open cur1; + fetch cur1 into i; + close cur1; + if (i=30) then + insert into t1 values (300,default,default); + end if; + end; +end| + +delimiter ;| + +delete from t1; + +call p1(); + +select * from t2; +select * from t1; + +drop table t1,t2; +drop procedure p1; diff --git a/mysql-test/suite/vcol/inc/vcol_unsupported_storage_engines.inc b/mysql-test/suite/vcol/inc/vcol_unsupported_storage_engines.inc new file mode 100644 index 00000000000..4ec98ebf3f4 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_unsupported_storage_engines.inc @@ -0,0 +1,21 @@ +################################################################################ +# inc/vcol_unsupported_storage_engines.inc # +# # +# Purpose: # +# Ensure that defining a virtual column for an unsupported table type # +# results in a graceful error. # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-02 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +--error ER_UNSUPPORTED_ENGINE_FOR_VIRTUAL_COLUMNS +create table t1 (a int, b int as (a+1)); +create table t1 (a int not null); +--error ER_UNSUPPORTED_ENGINE_FOR_VIRTUAL_COLUMNS +alter table t1 add column b int as (a+1); +drop table t1; diff --git a/mysql-test/suite/vcol/inc/vcol_view.inc b/mysql-test/suite/vcol/inc/vcol_view.inc new file mode 100644 index 00000000000..2bf413e2471 --- /dev/null +++ b/mysql-test/suite/vcol/inc/vcol_view.inc @@ -0,0 +1,201 @@ +################################################################################ +# inc/vcol_view.inc # +# # +# Purpose: # +# Testing views defined on tables with virtual columns. # +# # +# # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + + + +create table t1 (a int not null, + b int as (-a), + c int as (-a) persistent); +insert into t1 (a) values (1), (1), (2), (2), (3); + +# simple view +create view v1 (d,e) as select abs(b), abs(c) from t1; +select d,e from v1; +select is_updatable from information_schema.views where table_name='v1'; + +# view with different algorithms (explain output differs) +explain extended select d,e from v1; +create algorithm=temptable view v2 (d,e) as select abs(b), abs(c) from t1; +show create view v2; +select d,e from v2; +explain extended select d,e from v2; + +# VIEW on VIEW test +create view v3 (d,e) as select d*2, e*2 from v1; +select * from v3; +explain extended select * from v3; + +drop view v1,v2,v3; +drop table t1; + +# +# DISTINCT option for VIEW +# +create table t1 (a int not null, + b int as (-a), + c int as (-a) persistent); +insert into t1 (a) values (1), (2), (3), (1), (2), (3); +create view v1 as select distinct b from t1; +select * from v1; +explain select * from v1; +select * from t1; +drop view v1; +create view v1 as select distinct c from t1; +select * from v1; +explain select * from v1; +select * from t1; +drop view v1; +drop table t1; + +# +# LIMIT clause test +# +create table t1 (a int not null, + b int as (-a), + c int as (-a) persistent); +insert into t1 (a) values (1), (2), (3), (4); +create view v1 as select b+1 from t1 order by 1 desc limit 2; +select * from v1; +explain select * from v1; +drop view v1; +create view v1 as select c+1 from t1 order by 1 desc limit 2; +select * from v1; +explain select * from v1; +drop view v1; +drop table t1; + +# +# simple view + simple update, insert and delete +# +create table t1 (a int, + b int, + c int as (-a), + d int as (-a) persistent, + primary key(a)); +insert into t1 (a,b) values (10,2), (20,3), (30,4), (40,5), (50,10); +create view v1 (a,e,f,g) as select a, b+1,c+1,d+1 from t1; +# updatable field of updateable view +update v1 set a=a+e; +select * from v1; +select * from t1; +delete from v1; +select * from v1; +select * from t1; +--error ER_NON_INSERTABLE_TABLE +insert into v1 (a,e) values (60,15); +drop table t1; +drop view v1; + +# +# outer join based on VIEW with WHERE clause +# +create table t1 (a int, + b int as (-a), + c int as (-a) persistent, + primary key(a)); +insert into t1 (a) values (1), (2), (3); +create view v1 (x,y,z) as select a,b,c from t1 where b < -1; +select t1.a, v1.x, v1.y, v1.z from t1 left join v1 on (t1.b= v1.y); +drop view v1; +create view v1 (x,y,z) as select a,b,c from t1 where c < -1; +select t1.a, v1.x, v1.y, v1.z from t1 left join v1 on (t1.c= v1.z); +drop view v1; +drop table t1; + +# +# VIEW built over UNION +# +create table t1 (a1 int, + b1 int as (-a1), + c1 int as (-a1) persistent); +create table t2 (a2 int, + b2 int as (-a2), + c2 int as (-a2) persistent); +insert into t1 (a1) values (1), (2); +insert into t2 (a2) values (2), (3); +create view v1 as select * from t1,t2 union all select * from t1,t2; +select * from v1; +drop view v1; +drop table t1, t2; + +# +# Showing VIEW with VIEWs in subquery +# +create table t1 (a int, + b int as (-a), + c int as (-a) persistent); +create table t2 like t1; +create view v1 as select a,b,c from t1; +create view v2 as select a,b,c from t2 where b in (select b from v1); +show create view v2; +drop view v2, v1; +drop table t1, t2; + +# +# TODO: VIEW with full text +# +#CREATE TABLE t1 (c1 int not null auto_increment primary key, c2 varchar(20), fulltext(c2)); +#insert into t1 (c2) VALUES ('real Beer'),('Water'),('Kossu'),('Coca-Cola'),('Vodka'),('Wine'),('almost real Beer'); +#select * from t1 WHERE match (c2) against ('Beer'); +#CREATE VIEW v1 AS SELECT * from t1 WHERE match (c2) against ('Beer'); +#select * from v1; +#drop view v1; +#drop table t1; + +# +# distinct in temporary table with a VIEW +# +create table t1 (a int, + b int as (-a), + c int as (-a) persistent); +insert into t1 (a) values (1),(1),(2),(2),(3),(3); +create view v1 as select b from t1; +select distinct b from v1; +select distinct b from v1 limit 2; +select distinct b from t1 limit 2; +prepare stmt1 from "select distinct b from v1 limit 2"; +execute stmt1; +execute stmt1; +deallocate prepare stmt1; +drop view v1; +create view v1 as select c from t1; +select distinct c from v1; +select distinct c from v1 limit 2; +select distinct c from t1 limit 2; +prepare stmt1 from "select distinct c from v1 limit 2"; +execute stmt1; +execute stmt1; +deallocate prepare stmt1; +drop view v1; +drop table t1; + +# +# WITH CHECK OPTION insert/update test +# +create table t1 (a int, + b int as (-a), + c int as (-a) persistent); +create view v1 as select * from t1 where b > -2 && c >-2 with check option; +# simple insert +insert into v1 (a) values (1); +-- error 1369 +insert into v1 (a) values (3); +# simple insert with ignore +insert ignore into v1 (a) values (2),(3),(0); +select * from t1; +drop view v1; +drop table t1; + diff --git a/mysql-test/suite/vcol/r/rpl_vcol.result b/mysql-test/suite/vcol/r/rpl_vcol.result new file mode 100644 index 00000000000..120ce38031f --- /dev/null +++ b/mysql-test/suite/vcol/r/rpl_vcol.result @@ -0,0 +1,22 @@ +SET @@session.storage_engine = 'InnoDB'; +include/master-slave.inc +[connection master] +create table t1 (a int, b int as (a+1)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a+1) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (2,default); +select * from t1; +a b +1 2 +2 3 +select * from t1; +a b +1 2 +2 3 +drop table t1; +include/rpl_end.inc diff --git a/mysql-test/suite/vcol/r/vcol_archive.result b/mysql-test/suite/vcol/r/vcol_archive.result new file mode 100644 index 00000000000..5ed2f3768ca --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_archive.result @@ -0,0 +1,7 @@ +SET @@session.storage_engine = 'archive'; +create table t1 (a int, b int as (a+1)); +ERROR HY000: ARCHIVE storage engine does not support computed columns +create table t1 (a int not null); +alter table t1 add column b int as (a+1); +ERROR HY000: ARCHIVE storage engine does not support computed columns +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_blackhole.result b/mysql-test/suite/vcol/r/vcol_blackhole.result new file mode 100644 index 00000000000..2d33937a2f1 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_blackhole.result @@ -0,0 +1,7 @@ +SET @@session.storage_engine = 'blackhole'; +create table t1 (a int, b int as (a+1)); +ERROR HY000: BLACKHOLE storage engine does not support computed columns +create table t1 (a int not null); +alter table t1 add column b int as (a+1); +ERROR HY000: BLACKHOLE storage engine does not support computed columns +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_blocked_sql_funcs_innodb.result b/mysql-test/suite/vcol/r/vcol_blocked_sql_funcs_innodb.result new file mode 100644 index 00000000000..a4099dff381 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_blocked_sql_funcs_innodb.result @@ -0,0 +1,243 @@ +SET @@session.storage_engine = 'InnoDB'; +# RAND() +create table t1 (b double as (rand())); +ERROR HY000: Function or expression is not allowed for column 'b' +# LOAD_FILE() +create table t1 (a varchar(64), b varchar(1024) as (load_file(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# CURDATE() +create table t1 (a datetime as (curdate())); +ERROR HY000: Function or expression is not allowed for column 'a' +# CURRENT_DATE(), CURRENT_DATE +create table t1 (a datetime as (current_date)); +ERROR HY000: Function or expression is not allowed for column 'a' +create table t1 (a datetime as (current_date())); +ERROR HY000: Function or expression is not allowed for column 'a' +# CURRENT_TIME(), CURRENT_TIME +create table t1 (a datetime as (current_time)); +ERROR HY000: Function or expression is not allowed for column 'a' +create table t1 (a datetime as (current_time())); +ERROR HY000: Function or expression is not allowed for column 'a' +# CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP +create table t1 (a datetime as (current_timestamp())); +ERROR HY000: Function or expression is not allowed for column 'a' +create table t1 (a datetime as (current_timestamp)); +ERROR HY000: Function or expression is not allowed for column 'a' +# CURTIME() +create table t1 (a datetime as (curtime())); +ERROR HY000: Function or expression is not allowed for column 'a' +# LOCALTIME(), LOCALTIME +create table t1 (a datetime, b varchar(10) as (localtime())); +ERROR HY000: Function or expression is not allowed for column 'b' +create table t1 (a datetime, b varchar(10) as (localtime)); +ERROR HY000: Function or expression is not allowed for column 'b' +# LOCALTIMESTAMP, LOCALTIMESTAMP()(v4.0.6) +create table t1 (a datetime, b varchar(10) as (localtimestamp())); +ERROR HY000: Function or expression is not allowed for column 'b' +create table t1 (a datetime, b varchar(10) as (localtimestamp)); +ERROR HY000: Function or expression is not allowed for column 'b' +# NOW() +create table t1 (a datetime, b varchar(10) as (now())); +ERROR HY000: Function or expression is not allowed for column 'b' +# SYSDATE() +create table t1 (a int, b varchar(10) as (sysdate())); +ERROR HY000: Function or expression is not allowed for column 'b' +# UNIX_TIMESTAMP() +create table t1 (a datetime, b datetime as (unix_timestamp())); +ERROR HY000: Function or expression is not allowed for column 'b' +# UTC_DATE() +create table t1 (a datetime, b datetime as (utc_date())); +ERROR HY000: Function or expression is not allowed for column 'b' +# UTC_TIME() +create table t1 (a datetime, b datetime as (utc_time())); +ERROR HY000: Function or expression is not allowed for column 'b' +# UTC_TIMESTAMP() +create table t1 (a datetime, b datetime as (utc_timestamp())); +ERROR HY000: Function or expression is not allowed for column 'b' +# MATCH() +# BENCHMARK() +create table t1 (a varchar(1024), b varchar(1024) as (benchmark(a,3))); +ERROR HY000: Function or expression is not allowed for column 'b' +# CONNECTION_ID() +create table t1 (a int as (connection_id())); +ERROR HY000: Function or expression is not allowed for column 'a' +# CURRENT_USER(), CURRENT_USER +create table t1 (a varchar(32) as (current_user())); +ERROR HY000: Function or expression is not allowed for column 'a' +create table t1 (a varchar(32) as (current_user)); +ERROR HY000: Function or expression is not allowed for column 'a' +# DATABASE() +create table t1 (a varchar(1024), b varchar(1024) as (database())); +ERROR HY000: Function or expression is not allowed for column 'b' +# FOUND_ROWS() +create table t1 (a varchar(1024), b varchar(1024) as (found_rows())); +ERROR HY000: Function or expression is not allowed for column 'b' +# GET_LOCK() +create table t1 (a varchar(1024), b varchar(1024) as (get_lock(a,10))); +ERROR HY000: Function or expression is not allowed for column 'b' +# IS_FREE_LOCK() +create table t1 (a varchar(1024), b varchar(1024) as (is_free_lock(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# IS_USED_LOCK() +create table t1 (a varchar(1024), b varchar(1024) as (is_used_lock(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# LAST_INSERT_ID() +create table t1 (a int as (last_insert_id())); +ERROR HY000: Function or expression is not allowed for column 'a' +# MASTER_POS_WAIT() +create table t1 (a varchar(32), b int as (master_pos_wait(a,0,2))); +ERROR HY000: Function or expression is not allowed for column 'b' +# NAME_CONST() +create table t1 (a varchar(32) as (name_const('test',1))); +ERROR HY000: Function or expression is not allowed for column 'a' +# RELEASE_LOCK() +create table t1 (a varchar(32), b int as (release_lock(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# ROW_COUNT() +create table t1 (a int as (row_count())); +ERROR HY000: Function or expression is not allowed for column 'a' +# SCHEMA() +create table t1 (a varchar(32) as (schema())); +ERROR HY000: Function or expression is not allowed for column 'a' +# SESSION_USER() +create table t1 (a varchar(32) as (session_user())); +ERROR HY000: Function or expression is not allowed for column 'a' +# SLEEP() +create table t1 (a int, b int as (sleep(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# SYSTEM_USER() +create table t1 (a varchar(32) as (system_user())); +ERROR HY000: Function or expression is not allowed for column 'a' +# USER() +create table t1 (a varchar(1024), b varchar(1024) as (user())); +ERROR HY000: Function or expression is not allowed for column 'b' +# UUID_SHORT() +create table t1 (a varchar(1024) as (uuid_short())); +ERROR HY000: Function or expression is not allowed for column 'a' +# UUID() +create table t1 (a varchar(1024) as (uuid())); +ERROR HY000: Function or expression is not allowed for column 'a' +# VALUES() +create table t1 (a varchar(1024), b varchar(1024) as (values(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# VERSION() +create table t1 (a varchar(1024), b varchar(1024) as (version())); +ERROR HY000: Function or expression is not allowed for column 'b' +# ENCRYPT() +create table t1 (a varchar(1024), b varchar(1024) as (encrypt(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# Stored procedures +create procedure p1() +begin +select current_user(); +end // +create function f1() +returns int +begin +return 1; +end // +create table t1 (a int as (p1())); +ERROR HY000: Function or expression is not allowed for column 'a' +create table t1 (a int as (f1())); +ERROR HY000: Function or expression is not allowed for column 'a' +drop procedure p1; +drop function f1; +# Unknown functions +create table t1 (a int as (f1())); +ERROR HY000: Function or expression is not allowed for column 'a' +# +# GROUP BY FUNCTIONS +# +# AVG() +create table t1 (a int, b int as (avg(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# BIT_AND() +create table t1 (a int, b int as (bit_and(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# BIT_OR() +create table t1 (a int, b int as (bit_or(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# BIT_XOR() +create table t1 (a int, b int as (bit_xor(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# COUNT(DISTINCT) +create table t1 (a int, b int as (count(distinct a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# COUNT() +create table t1 (a int, b int as (count(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# GROUP_CONCAT() +create table t1 (a varchar(32), b int as (group_concat(a,''))); +ERROR HY000: Function or expression is not allowed for column 'b' +# MAX() +create table t1 (a int, b int as (max(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# MIN() +create table t1 (a int, b int as (min(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# STD() +create table t1 (a int, b int as (std(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# STDDEV_POP() +create table t1 (a int, b int as (stddev_pop(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# STDDEV_SAMP() +create table t1 (a int, b int as (stddev_samp(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# STDDEV() +create table t1 (a int, b int as (stddev(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# SUM() +create table t1 (a int, b int as (sum(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# VAR_POP() +create table t1 (a int, b int as (var_pop(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# VAR_SAMP() +create table t1 (a int, b int as (var_samp(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# VARIANCE() +create table t1 (a int, b int as (variance(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# +# XML FUNCTIONS +# +# ExtractValue() +create table t1 (a varchar(1024), b varchar(1024) as (ExtractValue(a,'//b[$@j]'))); +ERROR HY000: Function or expression is not allowed for column 'b' +# UpdateXML() +create table t1 (a varchar(1024), b varchar(1024) as (UpdateXML(a,'/a','<e>fff</e>'))); +ERROR HY000: Function or expression is not allowed for column 'b' +# +# Sub-selects +# +create table t1 (a int); +create table t2 (a int, b int as (select count(*) from t1)); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'select count(*) from t1))' at line 1 +drop table t1; +create table t1 (a int, b int as ((select 1))); +ERROR HY000: Function or expression is not allowed for column 'b' +create table t1 (a int, b int as (a+(select 1))); +ERROR HY000: Function or expression is not allowed for column 'b' +# +# SP functions +# +drop function if exists sub1; +create function sub1(i int) returns int deterministic +return i+1; +select sub1(1); +sub1(1) +2 +create table t1 (a int, b int as (a+sub3(1))); +ERROR HY000: Function or expression is not allowed for column 'b' +drop function sub1; +# +# Long expression +create table t1 (a int, b varchar(300) as (concat(a,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'))); +drop table t1; +create table t1 (a int, b varchar(300) as (concat(a,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'))); +ERROR HY000: String 'concat(a,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' is too long for VIRTUAL COLUMN EXPRESSION (should be no longer than 252) +# +# Constant expression +create table t1 (a int as (PI())); +ERROR HY000: Constant expression in computed column function is not allowed diff --git a/mysql-test/suite/vcol/r/vcol_blocked_sql_funcs_myisam.result b/mysql-test/suite/vcol/r/vcol_blocked_sql_funcs_myisam.result new file mode 100644 index 00000000000..dda222f5e8a --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_blocked_sql_funcs_myisam.result @@ -0,0 +1,245 @@ +SET @@session.storage_engine = 'MyISAM'; +# RAND() +create table t1 (b double as (rand())); +ERROR HY000: Function or expression is not allowed for column 'b' +# LOAD_FILE() +create table t1 (a varchar(64), b varchar(1024) as (load_file(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# CURDATE() +create table t1 (a datetime as (curdate())); +ERROR HY000: Function or expression is not allowed for column 'a' +# CURRENT_DATE(), CURRENT_DATE +create table t1 (a datetime as (current_date)); +ERROR HY000: Function or expression is not allowed for column 'a' +create table t1 (a datetime as (current_date())); +ERROR HY000: Function or expression is not allowed for column 'a' +# CURRENT_TIME(), CURRENT_TIME +create table t1 (a datetime as (current_time)); +ERROR HY000: Function or expression is not allowed for column 'a' +create table t1 (a datetime as (current_time())); +ERROR HY000: Function or expression is not allowed for column 'a' +# CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP +create table t1 (a datetime as (current_timestamp())); +ERROR HY000: Function or expression is not allowed for column 'a' +create table t1 (a datetime as (current_timestamp)); +ERROR HY000: Function or expression is not allowed for column 'a' +# CURTIME() +create table t1 (a datetime as (curtime())); +ERROR HY000: Function or expression is not allowed for column 'a' +# LOCALTIME(), LOCALTIME +create table t1 (a datetime, b varchar(10) as (localtime())); +ERROR HY000: Function or expression is not allowed for column 'b' +create table t1 (a datetime, b varchar(10) as (localtime)); +ERROR HY000: Function or expression is not allowed for column 'b' +# LOCALTIMESTAMP, LOCALTIMESTAMP()(v4.0.6) +create table t1 (a datetime, b varchar(10) as (localtimestamp())); +ERROR HY000: Function or expression is not allowed for column 'b' +create table t1 (a datetime, b varchar(10) as (localtimestamp)); +ERROR HY000: Function or expression is not allowed for column 'b' +# NOW() +create table t1 (a datetime, b varchar(10) as (now())); +ERROR HY000: Function or expression is not allowed for column 'b' +# SYSDATE() +create table t1 (a int, b varchar(10) as (sysdate())); +ERROR HY000: Function or expression is not allowed for column 'b' +# UNIX_TIMESTAMP() +create table t1 (a datetime, b datetime as (unix_timestamp())); +ERROR HY000: Function or expression is not allowed for column 'b' +# UTC_DATE() +create table t1 (a datetime, b datetime as (utc_date())); +ERROR HY000: Function or expression is not allowed for column 'b' +# UTC_TIME() +create table t1 (a datetime, b datetime as (utc_time())); +ERROR HY000: Function or expression is not allowed for column 'b' +# UTC_TIMESTAMP() +create table t1 (a datetime, b datetime as (utc_timestamp())); +ERROR HY000: Function or expression is not allowed for column 'b' +# MATCH() +create table t1 (a varchar(32), b bool as (match a against ('sample text'))); +ERROR HY000: Function or expression is not allowed for column 'b' +# BENCHMARK() +create table t1 (a varchar(1024), b varchar(1024) as (benchmark(a,3))); +ERROR HY000: Function or expression is not allowed for column 'b' +# CONNECTION_ID() +create table t1 (a int as (connection_id())); +ERROR HY000: Function or expression is not allowed for column 'a' +# CURRENT_USER(), CURRENT_USER +create table t1 (a varchar(32) as (current_user())); +ERROR HY000: Function or expression is not allowed for column 'a' +create table t1 (a varchar(32) as (current_user)); +ERROR HY000: Function or expression is not allowed for column 'a' +# DATABASE() +create table t1 (a varchar(1024), b varchar(1024) as (database())); +ERROR HY000: Function or expression is not allowed for column 'b' +# FOUND_ROWS() +create table t1 (a varchar(1024), b varchar(1024) as (found_rows())); +ERROR HY000: Function or expression is not allowed for column 'b' +# GET_LOCK() +create table t1 (a varchar(1024), b varchar(1024) as (get_lock(a,10))); +ERROR HY000: Function or expression is not allowed for column 'b' +# IS_FREE_LOCK() +create table t1 (a varchar(1024), b varchar(1024) as (is_free_lock(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# IS_USED_LOCK() +create table t1 (a varchar(1024), b varchar(1024) as (is_used_lock(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# LAST_INSERT_ID() +create table t1 (a int as (last_insert_id())); +ERROR HY000: Function or expression is not allowed for column 'a' +# MASTER_POS_WAIT() +create table t1 (a varchar(32), b int as (master_pos_wait(a,0,2))); +ERROR HY000: Function or expression is not allowed for column 'b' +# NAME_CONST() +create table t1 (a varchar(32) as (name_const('test',1))); +ERROR HY000: Function or expression is not allowed for column 'a' +# RELEASE_LOCK() +create table t1 (a varchar(32), b int as (release_lock(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# ROW_COUNT() +create table t1 (a int as (row_count())); +ERROR HY000: Function or expression is not allowed for column 'a' +# SCHEMA() +create table t1 (a varchar(32) as (schema())); +ERROR HY000: Function or expression is not allowed for column 'a' +# SESSION_USER() +create table t1 (a varchar(32) as (session_user())); +ERROR HY000: Function or expression is not allowed for column 'a' +# SLEEP() +create table t1 (a int, b int as (sleep(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# SYSTEM_USER() +create table t1 (a varchar(32) as (system_user())); +ERROR HY000: Function or expression is not allowed for column 'a' +# USER() +create table t1 (a varchar(1024), b varchar(1024) as (user())); +ERROR HY000: Function or expression is not allowed for column 'b' +# UUID_SHORT() +create table t1 (a varchar(1024) as (uuid_short())); +ERROR HY000: Function or expression is not allowed for column 'a' +# UUID() +create table t1 (a varchar(1024) as (uuid())); +ERROR HY000: Function or expression is not allowed for column 'a' +# VALUES() +create table t1 (a varchar(1024), b varchar(1024) as (values(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# VERSION() +create table t1 (a varchar(1024), b varchar(1024) as (version())); +ERROR HY000: Function or expression is not allowed for column 'b' +# ENCRYPT() +create table t1 (a varchar(1024), b varchar(1024) as (encrypt(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# Stored procedures +create procedure p1() +begin +select current_user(); +end // +create function f1() +returns int +begin +return 1; +end // +create table t1 (a int as (p1())); +ERROR HY000: Function or expression is not allowed for column 'a' +create table t1 (a int as (f1())); +ERROR HY000: Function or expression is not allowed for column 'a' +drop procedure p1; +drop function f1; +# Unknown functions +create table t1 (a int as (f1())); +ERROR HY000: Function or expression is not allowed for column 'a' +# +# GROUP BY FUNCTIONS +# +# AVG() +create table t1 (a int, b int as (avg(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# BIT_AND() +create table t1 (a int, b int as (bit_and(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# BIT_OR() +create table t1 (a int, b int as (bit_or(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# BIT_XOR() +create table t1 (a int, b int as (bit_xor(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# COUNT(DISTINCT) +create table t1 (a int, b int as (count(distinct a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# COUNT() +create table t1 (a int, b int as (count(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# GROUP_CONCAT() +create table t1 (a varchar(32), b int as (group_concat(a,''))); +ERROR HY000: Function or expression is not allowed for column 'b' +# MAX() +create table t1 (a int, b int as (max(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# MIN() +create table t1 (a int, b int as (min(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# STD() +create table t1 (a int, b int as (std(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# STDDEV_POP() +create table t1 (a int, b int as (stddev_pop(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# STDDEV_SAMP() +create table t1 (a int, b int as (stddev_samp(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# STDDEV() +create table t1 (a int, b int as (stddev(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# SUM() +create table t1 (a int, b int as (sum(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# VAR_POP() +create table t1 (a int, b int as (var_pop(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# VAR_SAMP() +create table t1 (a int, b int as (var_samp(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# VARIANCE() +create table t1 (a int, b int as (variance(a))); +ERROR HY000: Function or expression is not allowed for column 'b' +# +# XML FUNCTIONS +# +# ExtractValue() +create table t1 (a varchar(1024), b varchar(1024) as (ExtractValue(a,'//b[$@j]'))); +ERROR HY000: Function or expression is not allowed for column 'b' +# UpdateXML() +create table t1 (a varchar(1024), b varchar(1024) as (UpdateXML(a,'/a','<e>fff</e>'))); +ERROR HY000: Function or expression is not allowed for column 'b' +# +# Sub-selects +# +create table t1 (a int); +create table t2 (a int, b int as (select count(*) from t1)); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'select count(*) from t1))' at line 1 +drop table t1; +create table t1 (a int, b int as ((select 1))); +ERROR HY000: Function or expression is not allowed for column 'b' +create table t1 (a int, b int as (a+(select 1))); +ERROR HY000: Function or expression is not allowed for column 'b' +# +# SP functions +# +drop function if exists sub1; +create function sub1(i int) returns int deterministic +return i+1; +select sub1(1); +sub1(1) +2 +create table t1 (a int, b int as (a+sub3(1))); +ERROR HY000: Function or expression is not allowed for column 'b' +drop function sub1; +# +# Long expression +create table t1 (a int, b varchar(300) as (concat(a,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'))); +drop table t1; +create table t1 (a int, b varchar(300) as (concat(a,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'))); +ERROR HY000: String 'concat(a,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' is too long for VIRTUAL COLUMN EXPRESSION (should be no longer than 252) +# +# Constant expression +create table t1 (a int as (PI())); +ERROR HY000: Constant expression in computed column function is not allowed diff --git a/mysql-test/suite/vcol/r/vcol_column_def_options_innodb.result b/mysql-test/suite/vcol/r/vcol_column_def_options_innodb.result new file mode 100644 index 00000000000..b1f96f8f4d9 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_column_def_options_innodb.result @@ -0,0 +1,146 @@ +SET @@session.storage_engine = 'InnoDB'; +# +# Section 1. Wrong column definition options +# - NOT NULL +# - NULL +# - DEFAULT <value> +# - AUTO_INCREMENT +# - [PRIMARY] KEY +# NOT NULL +create table t1 (a int, b int as (a+1) not null); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null)' at line 1 +create table t1 (a int); +alter table t1 add column b int as (a+1) not null; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null' at line 1 +drop table t1; +# NULL +create table t1 (a int, b int as (a+1) null); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'null)' at line 1 +create table t1 (a int); +alter table t1 add column b int as (a+1) null; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'null' at line 1 +drop table t1; +# DEFAULT +create table t1 (a int, b int as (a+1) default 0); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'default 0)' at line 1 +create table t1 (a int); +alter table t1 add column b int as (a+1) default 0; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'default 0' at line 1 +drop table t1; +# AUTO_INCREMENT +create table t1 (a int, b int as (a+1) AUTO_INCREMENT); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AUTO_INCREMENT)' at line 1 +create table t1 (a int); +alter table t1 add column b int as (a+1) AUTO_INCREMENT; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AUTO_INCREMENT' at line 1 +drop table t1; +# [PRIMARY] KEY +create table t1 (a int, b int as (a+1) key); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key)' at line 1 +create table t1 (a int, b int as (a+1) primary key); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'primary key)' at line 1 +create table t1 (a int); +alter table t1 add column b int as (a+1) key; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key' at line 1 +alter table t1 add column b int as (a+1) primary key; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'primary key' at line 1 +drop table t1; +# Section 2. Other column definition options +# - COMMENT +# - REFERENCES (only syntax testing here) +# - STORED (only systax testing here) +create table t1 (a int, b int as (a % 2) comment 'my comment'); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) VIRTUAL COMMENT 'my comment' +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES NULL VIRTUAL +drop table t1; +create table t1 (a int, b int as (a % 2)); +alter table t1 modify b int as (a % 2) comment 'my comment'; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) VIRTUAL COMMENT 'my comment' +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES NULL VIRTUAL +insert into t1 (a) values (1); +select * from t1; +a b +1 1 +insert into t1 values (2,default); +select a,b from t1; +a b +1 1 +2 0 +create table t2 like t1; +show create table t2; +Table Create Table +t2 CREATE TABLE `t2` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) VIRTUAL COMMENT 'my comment' +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +describe t2; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES NULL VIRTUAL +insert into t2 (a) values (1); +select * from t2; +a b +1 1 +insert into t2 values (2,default); +select a,b from t2; +a b +1 1 +2 0 +drop table t2; +drop table t1; +create table t1 (a int, b int as (a % 2) persistent); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) PERSISTENT +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES NULL VIRTUAL +insert into t1 (a) values (1); +select * from t1; +a b +1 1 +insert into t1 values (2,default); +select a,b from t1; +a b +1 1 +2 0 +drop table t1; +create table t2 (a int); +create table t1 (a int, b int as (a % 2) persistent references t2(a)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) PERSISTENT +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +drop table t1; +create table t1 (a int, b int as (a % 2)); +alter table t1 modify b int as (a % 2) persistent references t2(a); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'references t2(a)' at line 1 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_column_def_options_myisam.result b/mysql-test/suite/vcol/r/vcol_column_def_options_myisam.result new file mode 100644 index 00000000000..9fde339cb06 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_column_def_options_myisam.result @@ -0,0 +1,146 @@ +SET @@session.storage_engine = 'MyISAM'; +# +# Section 1. Wrong column definition options +# - NOT NULL +# - NULL +# - DEFAULT <value> +# - AUTO_INCREMENT +# - [PRIMARY] KEY +# NOT NULL +create table t1 (a int, b int as (a+1) not null); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null)' at line 1 +create table t1 (a int); +alter table t1 add column b int as (a+1) not null; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null' at line 1 +drop table t1; +# NULL +create table t1 (a int, b int as (a+1) null); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'null)' at line 1 +create table t1 (a int); +alter table t1 add column b int as (a+1) null; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'null' at line 1 +drop table t1; +# DEFAULT +create table t1 (a int, b int as (a+1) default 0); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'default 0)' at line 1 +create table t1 (a int); +alter table t1 add column b int as (a+1) default 0; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'default 0' at line 1 +drop table t1; +# AUTO_INCREMENT +create table t1 (a int, b int as (a+1) AUTO_INCREMENT); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AUTO_INCREMENT)' at line 1 +create table t1 (a int); +alter table t1 add column b int as (a+1) AUTO_INCREMENT; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AUTO_INCREMENT' at line 1 +drop table t1; +# [PRIMARY] KEY +create table t1 (a int, b int as (a+1) key); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key)' at line 1 +create table t1 (a int, b int as (a+1) primary key); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'primary key)' at line 1 +create table t1 (a int); +alter table t1 add column b int as (a+1) key; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key' at line 1 +alter table t1 add column b int as (a+1) primary key; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'primary key' at line 1 +drop table t1; +# Section 2. Other column definition options +# - COMMENT +# - REFERENCES (only syntax testing here) +# - STORED (only systax testing here) +create table t1 (a int, b int as (a % 2) comment 'my comment'); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) VIRTUAL COMMENT 'my comment' +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES NULL VIRTUAL +drop table t1; +create table t1 (a int, b int as (a % 2)); +alter table t1 modify b int as (a % 2) comment 'my comment'; +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) VIRTUAL COMMENT 'my comment' +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES NULL VIRTUAL +insert into t1 (a) values (1); +select * from t1; +a b +1 1 +insert into t1 values (2,default); +select a,b from t1; +a b +1 1 +2 0 +create table t2 like t1; +show create table t2; +Table Create Table +t2 CREATE TABLE `t2` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) VIRTUAL COMMENT 'my comment' +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +describe t2; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES NULL VIRTUAL +insert into t2 (a) values (1); +select * from t2; +a b +1 1 +insert into t2 values (2,default); +select a,b from t2; +a b +1 1 +2 0 +drop table t2; +drop table t1; +create table t1 (a int, b int as (a % 2) persistent); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) PERSISTENT +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES NULL VIRTUAL +insert into t1 (a) values (1); +select * from t1; +a b +1 1 +insert into t1 values (2,default); +select a,b from t1; +a b +1 1 +2 0 +drop table t1; +create table t2 (a int); +create table t1 (a int, b int as (a % 2) persistent references t2(a)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) PERSISTENT +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +create table t1 (a int, b int as (a % 2)); +alter table t1 modify b int as (a % 2) persistent references t2(a); +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'references t2(a)' at line 1 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_csv.result b/mysql-test/suite/vcol/r/vcol_csv.result new file mode 100644 index 00000000000..920e614c0b1 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_csv.result @@ -0,0 +1,7 @@ +SET @@session.storage_engine = 'CSV'; +create table t1 (a int, b int as (a+1)); +ERROR HY000: CSV storage engine does not support computed columns +create table t1 (a int not null); +alter table t1 add column b int as (a+1); +ERROR HY000: CSV storage engine does not support computed columns +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_handler_innodb.result b/mysql-test/suite/vcol/r/vcol_handler_innodb.result new file mode 100644 index 00000000000..f7576299e9a --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_handler_innodb.result @@ -0,0 +1,76 @@ +SET @@session.storage_engine = 'InnoDB'; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent, +d char(1), +index (a), +index (c)); +insert into t1 (a,d) values (4,'a'), (2,'b'), (1,'c'), (3,'d'); +select * from t1; +a b c d +4 -4 -4 a +2 -2 -2 b +1 -1 -1 c +3 -3 -3 d +# HANDLER tbl_name OPEN +handler t1 open; +# HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) +handler t1 read a > (2); +a b c d +3 -3 -3 d +# HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) WHERE non-vcol_field=expr +handler t1 read a > (2) where d='c'; +a b c d +# HANDLER tbl_name READ vcol_index_name = (value1,value2,...) +handler t1 read c = (-2); +a b c d +2 -2 -2 b +# HANDLER tbl_name READ vcol_index_name = (value1,value2,...) WHERE non-vcol_field=expr +handler t1 read c = (-2) where d='c'; +a b c d +# HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) WHERE vcol_field=expr +handler t1 read a > (2) where b=-3 && c=-3; +a b c d +3 -3 -3 d +# HANDLER tbl_name READ vcol_index_name <= (value1,value2,...) +handler t1 read c <= (-2); +a b c d +2 -2 -2 b +# HANDLER tbl_name READ vcol_index_name > (value1,value2,...) WHERE vcol_field=expr +handler t1 read c <= (-2) where b=-3; +a b c d +3 -3 -3 d +# HANDLER tbl_name READ vcol_index_name FIRST +handler t1 read c first; +a b c d +4 -4 -4 a +# HANDLER tbl_name READ vcol_index_name NEXT +handler t1 read c next; +a b c d +3 -3 -3 d +# HANDLER tbl_name READ vcol_index_name PREV +handler t1 read c prev; +a b c d +4 -4 -4 a +# HANDLER tbl_name READ vcol_index_name LAST +handler t1 read c last; +a b c d +1 -1 -1 c +# HANDLER tbl_name READ FIRST where non-vcol=expr +handler t1 read FIRST where a >= 2; +a b c d +4 -4 -4 a +# HANDLER tbl_name READ FIRST where vcol=expr +handler t1 read FIRST where b >= -2; +a b c d +2 -2 -2 b +# HANDLER tbl_name READ NEXT where non-vcol=expr +handler t1 read NEXT where d='c'; +a b c d +1 -1 -1 c +# HANDLER tbl_name READ NEXT where vcol=expr +handler t1 read NEXT where b<=-4; +a b c d +# HANDLER tbl_name CLOSE +handler t1 close; +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_handler_maria.result b/mysql-test/suite/vcol/r/vcol_handler_maria.result new file mode 100644 index 00000000000..df36d0fbbf3 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_handler_maria.result @@ -0,0 +1,76 @@ +SET @@session.storage_engine = 'maria'; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent, +d char(1), +index (a), +index (c)); +insert into t1 (a,d) values (4,'a'), (2,'b'), (1,'c'), (3,'d'); +select * from t1; +a b c d +4 -4 -4 a +2 -2 -2 b +1 -1 -1 c +3 -3 -3 d +# HANDLER tbl_name OPEN +handler t1 open; +# HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) +handler t1 read a > (2); +a b c d +3 -3 -3 d +# HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) WHERE non-vcol_field=expr +handler t1 read a > (2) where d='c'; +a b c d +# HANDLER tbl_name READ vcol_index_name = (value1,value2,...) +handler t1 read c = (-2); +a b c d +2 -2 -2 b +# HANDLER tbl_name READ vcol_index_name = (value1,value2,...) WHERE non-vcol_field=expr +handler t1 read c = (-2) where d='c'; +a b c d +# HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) WHERE vcol_field=expr +handler t1 read a > (2) where b=-3 && c=-3; +a b c d +3 -3 -3 d +# HANDLER tbl_name READ vcol_index_name <= (value1,value2,...) +handler t1 read c <= (-2); +a b c d +2 -2 -2 b +# HANDLER tbl_name READ vcol_index_name > (value1,value2,...) WHERE vcol_field=expr +handler t1 read c <= (-2) where b=-3; +a b c d +3 -3 -3 d +# HANDLER tbl_name READ vcol_index_name FIRST +handler t1 read c first; +a b c d +4 -4 -4 a +# HANDLER tbl_name READ vcol_index_name NEXT +handler t1 read c next; +a b c d +3 -3 -3 d +# HANDLER tbl_name READ vcol_index_name PREV +handler t1 read c prev; +a b c d +4 -4 -4 a +# HANDLER tbl_name READ vcol_index_name LAST +handler t1 read c last; +a b c d +1 -1 -1 c +# HANDLER tbl_name READ FIRST where non-vcol=expr +handler t1 read FIRST where a >= 2; +a b c d +4 -4 -4 a +# HANDLER tbl_name READ FIRST where vcol=expr +handler t1 read FIRST where b >= -2; +a b c d +2 -2 -2 b +# HANDLER tbl_name READ NEXT where non-vcol=expr +handler t1 read NEXT where d='c'; +a b c d +1 -1 -1 c +# HANDLER tbl_name READ NEXT where vcol=expr +handler t1 read NEXT where b<=-4; +a b c d +# HANDLER tbl_name CLOSE +handler t1 close; +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_handler_myisam.result b/mysql-test/suite/vcol/r/vcol_handler_myisam.result new file mode 100644 index 00000000000..ff93756adc5 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_handler_myisam.result @@ -0,0 +1,76 @@ +SET @@session.storage_engine = 'MyISAM'; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent, +d char(1), +index (a), +index (c)); +insert into t1 (a,d) values (4,'a'), (2,'b'), (1,'c'), (3,'d'); +select * from t1; +a b c d +4 -4 -4 a +2 -2 -2 b +1 -1 -1 c +3 -3 -3 d +# HANDLER tbl_name OPEN +handler t1 open; +# HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) +handler t1 read a > (2); +a b c d +3 -3 -3 d +# HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) WHERE non-vcol_field=expr +handler t1 read a > (2) where d='c'; +a b c d +# HANDLER tbl_name READ vcol_index_name = (value1,value2,...) +handler t1 read c = (-2); +a b c d +2 -2 -2 b +# HANDLER tbl_name READ vcol_index_name = (value1,value2,...) WHERE non-vcol_field=expr +handler t1 read c = (-2) where d='c'; +a b c d +# HANDLER tbl_name READ non-vcol_index_name > (value1,value2,...) WHERE vcol_field=expr +handler t1 read a > (2) where b=-3 && c=-3; +a b c d +3 -3 -3 d +# HANDLER tbl_name READ vcol_index_name <= (value1,value2,...) +handler t1 read c <= (-2); +a b c d +2 -2 -2 b +# HANDLER tbl_name READ vcol_index_name > (value1,value2,...) WHERE vcol_field=expr +handler t1 read c <= (-2) where b=-3; +a b c d +3 -3 -3 d +# HANDLER tbl_name READ vcol_index_name FIRST +handler t1 read c first; +a b c d +4 -4 -4 a +# HANDLER tbl_name READ vcol_index_name NEXT +handler t1 read c next; +a b c d +3 -3 -3 d +# HANDLER tbl_name READ vcol_index_name PREV +handler t1 read c prev; +a b c d +4 -4 -4 a +# HANDLER tbl_name READ vcol_index_name LAST +handler t1 read c last; +a b c d +1 -1 -1 c +# HANDLER tbl_name READ FIRST where non-vcol=expr +handler t1 read FIRST where a >= 2; +a b c d +4 -4 -4 a +# HANDLER tbl_name READ FIRST where vcol=expr +handler t1 read FIRST where b >= -2; +a b c d +2 -2 -2 b +# HANDLER tbl_name READ NEXT where non-vcol=expr +handler t1 read NEXT where d='c'; +a b c d +1 -1 -1 c +# HANDLER tbl_name READ NEXT where vcol=expr +handler t1 read NEXT where b<=-4; +a b c d +# HANDLER tbl_name CLOSE +handler t1 close; +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_ins_upd_innodb.result b/mysql-test/suite/vcol/r/vcol_ins_upd_innodb.result new file mode 100644 index 00000000000..a2ebc7a8cd8 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_ins_upd_innodb.result @@ -0,0 +1,427 @@ +SET @@session.storage_engine = 'InnoDB'; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent); +set sql_warnings = 1; +# +# *** INSERT *** +# +# INSERT INTO tbl_name VALUES... DEFAULT is specified against vcols +insert into t1 values (1,default,default); +select * from t1; +a b c +1 -1 -1 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name VALUES... NULL is specified against vcols +insert into t1 values (1,null,null); +select * from t1; +a b c +1 -1 -1 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name VALUES... a non-NULL value is specified against vcols +insert into t1 values (1,2,3); +Warnings: +Warning 1647 The value specified for computed column 'b' in table 't1' ignored +Warning 1647 The value specified for computed column 'c' in table 't1' ignored +select * from t1; +a b c +1 -1 -1 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name (<non_vcol_list>) VALUES... +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name (<normal+vcols>) VALUES... DEFAULT is specified +# against vcols +insert into t1 (a,b) values (1,default), (2,default); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name (<normal+vcols>) VALUES... NULL is specified against vcols +insert into t1 (a,b) values (1,null), (2,null); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name (<normal+vcols>) VALUES... a non-NULL value is specified +# against vcols +insert into t1 (a,b) values (1,3), (2,4); +Warnings: +Warning 1647 The value specified for computed column 'b' in table 't1' ignored +Warning 1647 The value specified for computed column 'b' in table 't1' ignored +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +drop table t1; +# Table with UNIQUE non-vcol field. INSERT INTO tbl_name VALUES... ON DUPLICATE +# KEY UPDATE <non_vcol>=expr, <vcol>=expr +create table t1 (a int unique, +b int as (-a), +c int as (-a) persistent); +insert into t1 values (1,default,default); +insert into t1 values (1,default,default) +on duplicate key update a=2, b=default; +select a,b,c from t1; +a b c +2 -2 -2 +delete from t1 where b in (1,2); +select * from t1; +a b c +2 -2 -2 +drop table t1; +# Table with UNIQUE vcol field. INSERT INTO tbl_name VALUES... ON DUPLICATE +# KEY UPDATE <non_vcol>=expr, <vcol>=expr +create table t1 (a int, +b int as (-a), +c int as (-a) persistent unique); +insert into t1 values (1,default,default); +insert into t1 values (1,default,default) +on duplicate key update a=2, b=default; +select a,b,c from t1; +a b c +2 -2 -2 +# CREATE new_table ... LIKE old_table +# INSERT INTO new_table SELECT * from old_table +create table t2 like t1; +insert into t2 select * from t1; +Warnings: +Warning 1647 The value specified for computed column 'b' in table 't2' ignored +Warning 1647 The value specified for computed column 'c' in table 't2' ignored +select * from t1; +a b c +2 -2 -2 +drop table t2; +# CREATE new_table ... LIKE old_table INSERT INTO new_table (<non-vcols>, <vcols>) +# SELECT <non-vcols>, <vcols> from old_table +insert into t1 values (1,default,default); +select * from t1; +a b c +2 -2 -2 +1 -1 -1 +create table t2 like t1; +insert into t2 (a,b) select a,b from t1; +Warnings: +Warning 1647 The value specified for computed column 'b' in table 't2' ignored +Warning 1647 The value specified for computed column 'b' in table 't2' ignored +select * from t2; +a b c +2 -2 -2 +1 -1 -1 +drop table t2; +drop table t1; +# +# *** UPDATE *** +# +# UPDATE tbl_name SET non-vcol=expr WHERE non-vcol=expr +create table t1 (a int, +b int as (-a), +c int as (-a) persistent); +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set a=3 where a=2; +select * from t1; +a b c +1 -1 -1 +3 -3 -3 +delete from t1; +select * from t1; +a b c +# UPDATE tbl_name SET vcol=expr WHERE non-vcol=expr +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set c=3 where a=2; +Warnings: +Warning 1647 The value specified for computed column 'c' in table 't1' ignored +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +# UPDATE tbl_name SET non-vcol=expr WHERE vcol=expr +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set a=3 where b=-2; +select * from t1; +a b c +1 -1 -1 +3 -3 -3 +delete from t1; +select * from t1; +a b c +# UPDATE tbl_name SET vcol=expr WHERE vcol=expr +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set c=3 where b=-2; +Warnings: +Warning 1647 The value specified for computed column 'c' in table 't1' ignored +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +drop table t1; +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr WHERE vcol=const +create table t1 (a int, +b int as (-a), +c int as (-a) persistent unique); +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set a=3 where c=-2; +select * from t1; +a b c +1 -1 -1 +3 -3 -3 +delete from t1; +select * from t1; +a b c +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr WHERE vcol=between const1 and const2 +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set a=3 where c between -3 and -2; +select * from t1; +a b c +1 -1 -1 +3 -3 -3 +delete from t1; +select * from t1; +a b c +# No INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr WHERE vcol=between const1 and const2 +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set a=3 where b between -3 and -2; +select * from t1; +a b c +1 -1 -1 +3 -3 -3 +delete from t1; +select * from t1; +a b c +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr +# WHERE vcol=between const1 and const2 ORDER BY vcol +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +update t1 set a=6 where c between -1 and 0 +order by c; +select * from t1; +a b c +6 -6 -6 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +delete from t1 where c between -6 and 0; +select * from t1; +a b c +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr +# WHERE vcol=between const1 and const2 ORDER BY vcol LIMIT 2 +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +update t1 set a=6 where c between -1 and 0 +order by c limit 2; +select * from t1; +a b c +6 -6 -6 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +delete from t1 where c between -2 and 0 order by c; +select * from t1; +a b c +6 -6 -6 +3 -3 -3 +4 -4 -4 +5 -5 -5 +delete from t1; +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr +# WHERE indexed vcol=between const1 and const2 and non-indexed vcol=const3 +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +update t1 set a=6 where (c between -2 and 0) and (b=-1); +select * from t1; +a b c +6 -6 -6 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +delete from t1; +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr +# WHERE indexed vcol=between const1 and const2 and non-indexed vcol=const3 +# ORDER BY indexed vcol +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +update t1 set a=6 where (c between -2 and 0) and (b=-1) order by c; +select * from t1; +a b c +6 -6 -6 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +delete from t1; +drop table t1; +# +# Verify ON UPDATE/DELETE actions of FOREIGN KEYs +create table t2 (a int primary key, name varchar(10)); +create table t1 (a int primary key, b int as (a % 10) persistent); +insert into t2 values (1, 'value1'), (2,'value2'), (3,'value3'); +insert into t1 (a) values (1),(2),(3); +select * from t1; +a b +1 1 +2 2 +3 3 +select * from t2; +a name +1 value1 +2 value2 +3 value3 +select t1.a, t1.b, t2.name from t1,t2 where t1.b=t2.a; +a b name +1 1 value1 +2 2 value2 +3 3 value3 +# - ON UPDATE RESTRICT +alter table t1 add foreign key (b) references t2(a) on update restrict; +insert into t1 (a) values (4); +ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t1`, CONSTRAINT `t1_ibfk_1` FOREIGN KEY (`b`) REFERENCES `t2` (`a`)) +update t2 set a=4 where a=3; +ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t1`, CONSTRAINT `t1_ibfk_1` FOREIGN KEY (`b`) REFERENCES `t2` (`a`)) +select t1.a, t1.b, t2.name from t1,t2 where t1.b=t2.a; +a b name +1 1 value1 +2 2 value2 +3 3 value3 +alter table t1 drop foreign key t1_ibfk_1; +# - ON DELETE RESTRICT +alter table t1 add foreign key (b) references t2(a) on delete restrict; +delete from t2 where a=3; +ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t1`, CONSTRAINT `t1_ibfk_1` FOREIGN KEY (`b`) REFERENCES `t2` (`a`)) +select t1.a, t1.b, t2.name from t1,t2 where t1.b=t2.a; +a b name +1 1 value1 +2 2 value2 +3 3 value3 +select t1.a, t1.b, t2.name from t1 left outer join t2 on (t1.b=t2.a); +a b name +1 1 value1 +2 2 value2 +3 3 value3 +alter table t1 drop foreign key t1_ibfk_1; +# - ON DELETE CASCADE +alter table t1 add foreign key (b) references t2(a) on delete cascade; +delete from t2 where a=3; +select t1.a, t1.b, t2.name from t1,t2 where t1.b=t2.a; +a b name +1 1 value1 +2 2 value2 +select t1.a, t1.b, t2.name from t1 left outer join t2 on (t1.b=t2.a); +a b name +1 1 value1 +2 2 value2 +alter table t1 drop foreign key t1_ibfk_1; +drop table t1; +drop table t2; +# +# *** REPLACE *** +# +# UNIQUE INDEX on vcol +# REPLACE tbl_name (non-vcols) VALUES (non-vcols); +create table t1 (a int, +b int as (-a), +c int as (-a) persistent unique, +d varchar(16)); +insert into t1 (a,d) values (1,'a'), (2,'b'); +select * from t1; +a b c d +1 -1 -1 a +2 -2 -2 b +replace t1 (a,d) values (1,'c'); +select * from t1; +a b c d +1 -1 -1 c +2 -2 -2 b +delete from t1; +select * from t1; +a b c d +set sql_warnings = 0; +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_ins_upd_myisam.result b/mysql-test/suite/vcol/r/vcol_ins_upd_myisam.result new file mode 100644 index 00000000000..161a82171ce --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_ins_upd_myisam.result @@ -0,0 +1,365 @@ +SET @@session.storage_engine = 'MyISAM'; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent); +set sql_warnings = 1; +# +# *** INSERT *** +# +# INSERT INTO tbl_name VALUES... DEFAULT is specified against vcols +insert into t1 values (1,default,default); +select * from t1; +a b c +1 -1 -1 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name VALUES... NULL is specified against vcols +insert into t1 values (1,null,null); +select * from t1; +a b c +1 -1 -1 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name VALUES... a non-NULL value is specified against vcols +insert into t1 values (1,2,3); +Warnings: +Warning 1647 The value specified for computed column 'b' in table 't1' ignored +Warning 1647 The value specified for computed column 'c' in table 't1' ignored +select * from t1; +a b c +1 -1 -1 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name (<non_vcol_list>) VALUES... +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name (<normal+vcols>) VALUES... DEFAULT is specified +# against vcols +insert into t1 (a,b) values (1,default), (2,default); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name (<normal+vcols>) VALUES... NULL is specified against vcols +insert into t1 (a,b) values (1,null), (2,null); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +# INSERT INTO tbl_name (<normal+vcols>) VALUES... a non-NULL value is specified +# against vcols +insert into t1 (a,b) values (1,3), (2,4); +Warnings: +Warning 1647 The value specified for computed column 'b' in table 't1' ignored +Warning 1647 The value specified for computed column 'b' in table 't1' ignored +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +drop table t1; +# Table with UNIQUE non-vcol field. INSERT INTO tbl_name VALUES... ON DUPLICATE +# KEY UPDATE <non_vcol>=expr, <vcol>=expr +create table t1 (a int unique, +b int as (-a), +c int as (-a) persistent); +insert into t1 values (1,default,default); +insert into t1 values (1,default,default) +on duplicate key update a=2, b=default; +select a,b,c from t1; +a b c +2 -2 -2 +delete from t1 where b in (1,2); +select * from t1; +a b c +2 -2 -2 +drop table t1; +# Table with UNIQUE vcol field. INSERT INTO tbl_name VALUES... ON DUPLICATE +# KEY UPDATE <non_vcol>=expr, <vcol>=expr +create table t1 (a int, +b int as (-a), +c int as (-a) persistent unique); +insert into t1 values (1,default,default); +insert into t1 values (1,default,default) +on duplicate key update a=2, b=default; +select a,b,c from t1; +a b c +2 -2 -2 +# CREATE new_table ... LIKE old_table +# INSERT INTO new_table SELECT * from old_table +create table t2 like t1; +insert into t2 select * from t1; +Warnings: +Warning 1647 The value specified for computed column 'b' in table 't2' ignored +Warning 1647 The value specified for computed column 'c' in table 't2' ignored +select * from t1; +a b c +2 -2 -2 +drop table t2; +# CREATE new_table ... LIKE old_table INSERT INTO new_table (<non-vcols>, <vcols>) +# SELECT <non-vcols>, <vcols> from old_table +insert into t1 values (1,default,default); +select * from t1; +a b c +2 -2 -2 +1 -1 -1 +create table t2 like t1; +insert into t2 (a,b) select a,b from t1; +Warnings: +Warning 1647 The value specified for computed column 'b' in table 't2' ignored +Warning 1647 The value specified for computed column 'b' in table 't2' ignored +select * from t2; +a b c +2 -2 -2 +1 -1 -1 +drop table t2; +drop table t1; +# +# *** UPDATE *** +# +# UPDATE tbl_name SET non-vcol=expr WHERE non-vcol=expr +create table t1 (a int, +b int as (-a), +c int as (-a) persistent); +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set a=3 where a=2; +select * from t1; +a b c +1 -1 -1 +3 -3 -3 +delete from t1; +select * from t1; +a b c +# UPDATE tbl_name SET vcol=expr WHERE non-vcol=expr +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set c=3 where a=2; +Warnings: +Warning 1647 The value specified for computed column 'c' in table 't1' ignored +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +# UPDATE tbl_name SET non-vcol=expr WHERE vcol=expr +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set a=3 where b=-2; +select * from t1; +a b c +1 -1 -1 +3 -3 -3 +delete from t1; +select * from t1; +a b c +# UPDATE tbl_name SET vcol=expr WHERE vcol=expr +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set c=3 where b=-2; +Warnings: +Warning 1647 The value specified for computed column 'c' in table 't1' ignored +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +delete from t1; +select * from t1; +a b c +drop table t1; +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr WHERE vcol=const +create table t1 (a int, +b int as (-a), +c int as (-a) persistent unique); +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set a=3 where c=-2; +select * from t1; +a b c +1 -1 -1 +3 -3 -3 +delete from t1; +select * from t1; +a b c +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr WHERE vcol=between const1 and const2 +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set a=3 where c between -3 and -2; +select * from t1; +a b c +1 -1 -1 +3 -3 -3 +delete from t1; +select * from t1; +a b c +# No INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr WHERE vcol=between const1 and const2 +insert into t1 (a) values (1), (2); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +update t1 set a=3 where b between -3 and -2; +select * from t1; +a b c +1 -1 -1 +3 -3 -3 +delete from t1; +select * from t1; +a b c +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr +# WHERE vcol=between const1 and const2 ORDER BY vcol +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +update t1 set a=6 where c between -1 and 0 +order by c; +select * from t1; +a b c +6 -6 -6 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +delete from t1 where c between -6 and 0; +select * from t1; +a b c +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr +# WHERE vcol=between const1 and const2 ORDER BY vcol LIMIT 2 +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +a b c +5 -5 -5 +4 -4 -4 +3 -3 -3 +2 -2 -2 +1 -1 -1 +update t1 set a=6 where c between -1 and 0 +order by c limit 2; +select * from t1; +a b c +5 -5 -5 +4 -4 -4 +3 -3 -3 +2 -2 -2 +6 -6 -6 +delete from t1 where c between -2 and 0 order by c; +select * from t1; +a b c +5 -5 -5 +4 -4 -4 +3 -3 -3 +6 -6 -6 +delete from t1; +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr +# WHERE indexed vcol=between const1 and const2 and non-indexed vcol=const3 +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +update t1 set a=6 where (c between -2 and 0) and (b=-1); +select * from t1; +a b c +6 -6 -6 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +delete from t1; +# INDEX created on vcol +# UPDATE tbl_name SET non-vcol=expr +# WHERE indexed vcol=between const1 and const2 and non-indexed vcol=const3 +# ORDER BY indexed vcol +insert into t1 (a) values (1), (2), (3), (4), (5); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +update t1 set a=6 where (c between -2 and 0) and (b=-1) order by c; +select * from t1; +a b c +6 -6 -6 +2 -2 -2 +3 -3 -3 +4 -4 -4 +5 -5 -5 +delete from t1; +drop table t1; +# +# *** REPLACE *** +# +# UNIQUE INDEX on vcol +# REPLACE tbl_name (non-vcols) VALUES (non-vcols); +create table t1 (a int, +b int as (-a), +c int as (-a) persistent unique, +d varchar(16)); +insert into t1 (a,d) values (1,'a'), (2,'b'); +select * from t1; +a b c d +1 -1 -1 a +2 -2 -2 b +replace t1 (a,d) values (1,'c'); +select * from t1; +a b c d +1 -1 -1 c +2 -2 -2 b +delete from t1; +select * from t1; +a b c d +set sql_warnings = 0; +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_keys_innodb.result b/mysql-test/suite/vcol/r/vcol_keys_innodb.result new file mode 100644 index 00000000000..857dcb8423f --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_keys_innodb.result @@ -0,0 +1,151 @@ +SET @@session.storage_engine = 'InnoDB'; +# - UNIQUE KEY +# - INDEX +# - FULLTEXT INDEX +# - SPATIAL INDEX (not supported) +# - FOREIGN INDEX (partially supported) +# - CHECK (allowed but not used) +# UNIQUE +create table t1 (a int, b int as (a*2) unique); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +create table t1 (a int, b int as (a*2) persistent unique); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a*2) PERSISTENT, + UNIQUE KEY `b` (`b`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES UNI NULL VIRTUAL +drop table t1; +create table t1 (a int, b int as (a*2), unique key (b)); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +create table t1 (a int, b int as (a*2) persistent, unique (b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a*2) PERSISTENT, + UNIQUE KEY `b` (`b`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES UNI NULL VIRTUAL +drop table t1; +create table t1 (a int, b int as (a*2)); +alter table t1 add unique key (b); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +drop table t1; +create table t1 (a int, b int as (a*2) persistent); +alter table t1 add unique key (b); +drop table t1; +# Testing data manipulation operations involving UNIQUE keys +# on virtual columns can be found in: +# - vcol_ins_upd.inc +# - vcol_select.inc +# +# INDEX +create table t1 (a int, b int as (a*2), index (b)); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +create table t1 (a int, b int as (a*2), index (a,b)); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +create table t1 (a int, b int as (a*2) persistent, index (b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a*2) PERSISTENT, + KEY `b` (`b`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES MUL NULL VIRTUAL +drop table t1; +create table t1 (a int, b int as (a*2) persistent, index (a,b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a*2) PERSISTENT, + KEY `a` (`a`,`b`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES MUL NULL +b int(11) YES NULL VIRTUAL +drop table t1; +create table t1 (a int, b int as (a*2)); +alter table t1 add index (b); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +alter table t1 add index (a,b); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +drop table t1; +create table t1 (a int, b int as (a*2) persistent); +alter table t1 add index (b); +drop table t1; +create table t1 (a int, b int as (a*2) persistent); +alter table t1 add index (a,b); +create table t2 like t1; +drop table t2; +drop table t1; +# Testing data manipulation operations involving INDEX +# on virtual columns can be found in: +# - vcol_select.inc +# +# TODO: FULLTEXT INDEX +# SPATIAL INDEX +# FOREIGN KEY +# Rejected FK options. +create table t1 (a int, b int as (a+1) persistent, +foreign key (b) references t2(a) on update set null); +ERROR HY000: Cannot define foreign key with ON UPDATE SET NULL clause on a computed column +create table t1 (a int, b int as (a+1) persistent, +foreign key (b) references t2(a) on update cascade); +ERROR HY000: Cannot define foreign key with ON UPDATE CASCADE clause on a computed column +create table t1 (a int, b int as (a+1) persistent, +foreign key (b) references t2(a) on delete set null); +ERROR HY000: Cannot define foreign key with ON DELETE SET NULL clause on a computed column +create table t1 (a int, b int as (a+1) persistent); +alter table t1 add foreign key (b) references t2(a) on update set null; +ERROR HY000: Cannot define foreign key with ON UPDATE SET NULL clause on a computed column +alter table t1 add foreign key (b) references t2(a) on update cascade; +ERROR HY000: Cannot define foreign key with ON UPDATE CASCADE clause on a computed column +alter table t1 add foreign key (b) references t2(a) on delete set null; +ERROR HY000: Cannot define foreign key with ON DELETE SET NULL clause on a computed column +drop table t1; +create table t1 (a int, b int as (a+1), +foreign key (b) references t2(a)); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +create table t1 (a int, b int as (a+1)); +alter table t1 add foreign key (b) references t2(a); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +drop table t1; +# Allowed FK options. +create table t2 (a int primary key, b char(5)); +create table t1 (a int, b int as (a % 10) persistent, +foreign key (b) references t2(a) on update restrict); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, +foreign key (b) references t2(a) on update no action); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, +foreign key (b) references t2(a) on delete restrict); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, +foreign key (b) references t2(a) on delete cascade); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, +foreign key (b) references t2(a) on delete no action); +drop table t1; + +# Testing data manipulation operations involving FOREIGN KEY +# on virtual columns can be found in: +# - vcol_ins_upd.inc +# - vcol_select.inc +# +# TODO: CHECK diff --git a/mysql-test/suite/vcol/r/vcol_keys_myisam.result b/mysql-test/suite/vcol/r/vcol_keys_myisam.result new file mode 100644 index 00000000000..f7b47316ca8 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_keys_myisam.result @@ -0,0 +1,157 @@ +SET @@session.storage_engine = 'MyISAM'; +# - UNIQUE KEY +# - INDEX +# - FULLTEXT INDEX +# - SPATIAL INDEX (not supported) +# - FOREIGN INDEX (partially supported) +# - CHECK (allowed but not used) +# UNIQUE +create table t1 (a int, b int as (a*2) unique); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +create table t1 (a int, b int as (a*2) persistent unique); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a*2) PERSISTENT, + UNIQUE KEY `b` (`b`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES UNI NULL VIRTUAL +drop table t1; +create table t1 (a int, b int as (a*2), unique key (b)); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +create table t1 (a int, b int as (a*2) persistent, unique (b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a*2) PERSISTENT, + UNIQUE KEY `b` (`b`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES UNI NULL VIRTUAL +drop table t1; +create table t1 (a int, b int as (a*2)); +alter table t1 add unique key (b); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +drop table t1; +create table t1 (a int, b int as (a*2) persistent); +alter table t1 add unique key (b); +drop table t1; +# Testing data manipulation operations involving UNIQUE keys +# on virtual columns can be found in: +# - vcol_ins_upd.inc +# - vcol_select.inc +# +# INDEX +create table t1 (a int, b int as (a*2), index (b)); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +create table t1 (a int, b int as (a*2), index (a,b)); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +create table t1 (a int, b int as (a*2) persistent, index (b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a*2) PERSISTENT, + KEY `b` (`b`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES NULL +b int(11) YES MUL NULL VIRTUAL +drop table t1; +create table t1 (a int, b int as (a*2) persistent, index (a,b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a*2) PERSISTENT, + KEY `a` (`a`,`b`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +describe t1; +Field Type Null Key Default Extra +a int(11) YES MUL NULL +b int(11) YES NULL VIRTUAL +drop table t1; +create table t1 (a int, b int as (a*2)); +alter table t1 add index (b); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +alter table t1 add index (a,b); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +drop table t1; +create table t1 (a int, b int as (a*2) persistent); +alter table t1 add index (b); +drop table t1; +create table t1 (a int, b int as (a*2) persistent); +alter table t1 add index (a,b); +create table t2 like t1; +drop table t2; +drop table t1; +# Testing data manipulation operations involving INDEX +# on virtual columns can be found in: +# - vcol_select.inc +# +# TODO: FULLTEXT INDEX +# SPATIAL INDEX +create table t1 (a int, b int as (a+1) persistent, spatial index (b)); +ERROR HY000: Incorrect arguments to SPATIAL INDEX +create table t1 (a int, b int as (a+1) persistent); +alter table t1 add spatial index (b); +ERROR HY000: Incorrect arguments to SPATIAL INDEX +drop table t1; +# FOREIGN KEY +# Rejected FK options. +create table t1 (a int, b int as (a+1) persistent, +foreign key (b) references t2(a) on update set null); +ERROR HY000: Cannot define foreign key with ON UPDATE SET NULL clause on a computed column +create table t1 (a int, b int as (a+1) persistent, +foreign key (b) references t2(a) on update cascade); +ERROR HY000: Cannot define foreign key with ON UPDATE CASCADE clause on a computed column +create table t1 (a int, b int as (a+1) persistent, +foreign key (b) references t2(a) on delete set null); +ERROR HY000: Cannot define foreign key with ON DELETE SET NULL clause on a computed column +create table t1 (a int, b int as (a+1) persistent); +alter table t1 add foreign key (b) references t2(a) on update set null; +ERROR HY000: Cannot define foreign key with ON UPDATE SET NULL clause on a computed column +alter table t1 add foreign key (b) references t2(a) on update cascade; +ERROR HY000: Cannot define foreign key with ON UPDATE CASCADE clause on a computed column +alter table t1 add foreign key (b) references t2(a) on delete set null; +ERROR HY000: Cannot define foreign key with ON DELETE SET NULL clause on a computed column +drop table t1; +create table t1 (a int, b int as (a+1), +foreign key (b) references t2(a)); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +create table t1 (a int, b int as (a+1)); +alter table t1 add foreign key (b) references t2(a); +ERROR HY000: Key/Index cannot be defined on a non-stored computed column +drop table t1; +# Allowed FK options. +create table t2 (a int primary key, b char(5)); +create table t1 (a int, b int as (a % 10) persistent, +foreign key (b) references t2(a) on update restrict); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, +foreign key (b) references t2(a) on update no action); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, +foreign key (b) references t2(a) on delete restrict); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, +foreign key (b) references t2(a) on delete cascade); +drop table t1; +create table t1 (a int, b int as (a % 10) persistent, +foreign key (b) references t2(a) on delete no action); +drop table t1; + +# Testing data manipulation operations involving FOREIGN KEY +# on virtual columns can be found in: +# - vcol_ins_upd.inc +# - vcol_select.inc +# +# TODO: CHECK diff --git a/mysql-test/suite/vcol/r/vcol_memory.result b/mysql-test/suite/vcol/r/vcol_memory.result new file mode 100644 index 00000000000..4503c51e39a --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_memory.result @@ -0,0 +1,7 @@ +SET @@session.storage_engine = 'memory'; +create table t1 (a int, b int as (a+1)); +ERROR HY000: MEMORY storage engine does not support computed columns +create table t1 (a int not null); +alter table t1 add column b int as (a+1); +ERROR HY000: MEMORY storage engine does not support computed columns +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_merge.result b/mysql-test/suite/vcol/r/vcol_merge.result new file mode 100644 index 00000000000..4b5ed838c3a --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_merge.result @@ -0,0 +1,8 @@ +drop table if exists t1, t2, t3; +create table t1 (a int, b int as (a % 10)); +create table t2 (a int, b int as (a % 10)); +insert into t1 values (1,default); +insert into t2 values (2,default); +create table t3 (a int, b int as (a % 10)) engine=MERGE UNION=(t1,t2); +ERROR HY000: MRG_MYISAM storage engine does not support computed columns +drop table t1,t2; diff --git a/mysql-test/suite/vcol/r/vcol_misc.result b/mysql-test/suite/vcol/r/vcol_misc.result new file mode 100644 index 00000000000..d5061fa4d5f --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_misc.result @@ -0,0 +1,148 @@ +drop table if exists t1,t2; +create table t1 (a int, b int, v int as (a+1), index idx(b)); +insert into t1(a, b) values +(4, 40), (3, 30), (5, 50), (7, 70), (8, 80), (2, 20), (1, 10); +select * from t1 order by b; +a b v +1 10 2 +2 20 3 +3 30 4 +4 40 5 +5 50 6 +7 70 8 +8 80 9 +delete from t1 where v > 6 order by b limit 1; +select * from t1 order by b; +a b v +1 10 2 +2 20 3 +3 30 4 +4 40 5 +5 50 6 +8 80 9 +update t1 set a=v order by b limit 1; +select * from t1 order by b; +a b v +2 10 3 +2 20 3 +3 30 4 +4 40 5 +5 50 6 +8 80 9 +drop table t1; +CREATE TABLE t1 ( +a int NOT NULL DEFAULT '0', +v double AS ((1, a)) VIRTUAL +); +ERROR HY000: Expression for computed column cannot return a row +CREATE TABLE t1 ( +a CHAR(255) BINARY NOT NULL DEFAULT 0, +b CHAR(255) BINARY NOT NULL DEFAULT 0, +v CHAR(255) BINARY AS (CONCAT(a,b)) VIRTUAL ); +INSERT INTO t1(a,b) VALUES ('4','7'), ('4','6'); +SELECT 1 AS C FROM t1 ORDER BY v; +C +1 +1 +DROP TABLE t1; +CREATE TABLE t1(a int, b int DEFAULT 0, v INT AS (b+10) PERSISTENT); +INSERT INTO t1(a) VALUES (1); +SELECT b, v FROM t1; +b v +0 10 +DROP TABLE t1; +CREATE TABLE t1(a int DEFAULT 100, v int AS (a+1) PERSISTENT); +INSERT INTO t1 () VALUES (); +CREATE TABLE t2(a int DEFAULT 100 , v int AS (a+1)); +INSERT INTO t2 () VALUES (); +SELECT a, v FROM t1; +a v +100 101 +SELECT a, v FROM t2; +a v +100 101 +DROP TABLE t1,t2; +CREATE TABLE t1 ( +a datetime NOT NULL DEFAULT '2000-01-01', +v boolean AS (a < '2001-01-01') +); +INSERT INTO t1(a) VALUES ('2002-02-15'); +INSERT INTO t1(a) VALUES ('2000-10-15'); +SELECT a, v FROM t1; +a v +2002-02-15 00:00:00 0 +2000-10-15 00:00:00 1 +SELECT a, v FROM t1; +a v +2002-02-15 00:00:00 0 +2000-10-15 00:00:00 1 +CREATE TABLE t2 ( +a datetime NOT NULL DEFAULT '2000-01-01', +v boolean AS (a < '2001-01-01') PERSISTENT +); +INSERT INTO t2(a) VALUES ('2002-02-15'); +INSERT INTO t2(a) VALUES ('2000-10-15'); +SELECT * FROM t2; +a v +2002-02-15 00:00:00 0 +2000-10-15 00:00:00 1 +DROP TABLE t1, t2; +CREATE TABLE t1 ( +a char(255), b char(255), c char(255), d char(255), +v char(255) AS (CONCAT(c,d) ) VIRTUAL +); +INSERT INTO t1(a,b,c,d) VALUES ('w','x','y','z'), ('W','X','Y','Z'); +SELECT v FROM t1 ORDER BY CONCAT(a,b); +v +yz +YZ +DROP TABLE t1; +CREATE TABLE t1 (f1 INTEGER, v1 INTEGER AS (f1) VIRTUAL); +CREATE TABLE t2 AS SELECT v1 FROM t1; +SHOW CREATE TABLE t2; +Table Create Table +t2 CREATE TABLE `t2` ( + `v1` int(11) DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +DROP TABLE t1,t2; +CREATE TABLE t1 (p int, a double NOT NULL, v double AS (ROUND(a,p)) VIRTUAL); +INSERT INTO t1 VALUES (0,1,0); +Warnings: +Warning 1647 The value specified for computed column 'v' in table 't1' ignored +INSERT INTO t1 VALUES (NULL,0,0); +Warnings: +Warning 1647 The value specified for computed column 'v' in table 't1' ignored +SELECT a, p, v, ROUND(a,p), ROUND(a,p+NULL) FROM t1; +a p v ROUND(a,p) ROUND(a,p+NULL) +1 0 1 1 NULL +0 NULL NULL NULL NULL +DROP TABLE t1; +CREATE TABLE t1 (p int, a double NOT NULL); +INSERT INTO t1(p,a) VALUES (0,1); +INSERT INTO t1(p,a) VALUES (NULL,0); +SELECT a, p, ROUND(a,p), ROUND(a,p+NULL) FROM t1; +a p ROUND(a,p) ROUND(a,p+NULL) +1 0 1 NULL +0 NULL NULL NULL +DROP TABLE t1; +CREATE TABLE t1 (a char(32), v char(32) CHARACTER SET ucs2 AS (a) VIRTUAL); +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` char(32) DEFAULT NULL, + `v` char(32) CHARACTER SET ucs2 AS (a) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +DROP TABLE t1; +CREATE TABLE t1 (a int, b int); +CREATE TABLE t2 (a int, b int as (a+1) VIRTUAL); +SELECT table_schema, table_name, column_name, column_type, extra +FROM information_schema.columns WHERE table_name = 't1'; +table_schema table_name column_name column_type extra +test t1 a int(11) +test t1 b int(11) +SELECT table_schema, table_name, column_name, column_type, extra +FROM information_schema.columns WHERE table_name = 't2'; +table_schema table_name column_name column_type extra +test t2 a int(11) +test t2 b int(11) VIRTUAL +DROP TABLE t1,t2; diff --git a/mysql-test/suite/vcol/r/vcol_non_stored_columns_innodb.result b/mysql-test/suite/vcol/r/vcol_non_stored_columns_innodb.result new file mode 100644 index 00000000000..0379a71922d --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_non_stored_columns_innodb.result @@ -0,0 +1,242 @@ +SET @@session.storage_engine = 'InnoDB'; +# Case 1. All non-stored columns. +# This scenario is currently impossible due to the fact that virtual columns +# with a constant expression are not allowed. +# Case 2. CREATE +# - Column1: "real" +# - Column 2: virtual non-stored +create table t1 (a int, b int as (-a)); +insert into t1 values (1,default); +select * from t1; +a b +1 -1 +insert into t1 values (2,default); +select * from t1; +a b +1 -1 +2 -2 +drop table t1; +# Case 3. CREATE +# - Column1: "real" +# - Column 2: virtual stored +create table t1 (a int, b int as (-a) persistent); +insert into t1 values (1,default); +select * from t1; +a b +1 -1 +insert into t1 values (2,default); +select * from t1; +a b +1 -1 +2 -2 +drop table t1; +# Case 4. CREATE +# - Column1: virtual non-stored +# - Column2: "real" +create table t1 (a int as (-b), b int); +insert into t1 values (default,1); +select * from t1; +a b +-1 1 +insert into t1 values (default,2); +select * from t1; +a b +-1 1 +-2 2 +drop table t1; +# Case 5. CREATE +# - Column1: virtual stored +# - Column2: "real" +create table t1 (a int as (-b) persistent, b int); +insert into t1 values (default,1); +select * from t1; +a b +-1 1 +insert into t1 values (default,2); +select * from t1; +a b +-1 1 +-2 2 +drop table t1; +# Case 6. CREATE +# - Column1: "real" +# - Column2: virtual non-stored +# - Column3: virtual stored +create table t1 (a int, b int as (-a), c int as (-a) persistent); +insert into t1 values (1,default,default); +select * from t1; +a b c +1 -1 -1 +insert into t1 values (2,default,default); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +drop table t1; +# Case 7. ALTER. Modify virtual stored -> virtual non-stored +create table t1 (a int, b int as (a % 2) persistent); +alter table t1 modify b int as (a % 2); +ERROR HY000: This is not yet supported for computed columns +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) PERSISTENT +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +drop table t1; +# Case 8. ALTER. Modify virtual non-stored -> virtual stored +create table t1 (a int, b int as (a % 2)); +alter table t1 modify b int as (a % 2) persistent; +ERROR HY000: This is not yet supported for computed columns +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +drop table t1; +# Case 9. CREATE LIKE +# - Column1: "real" +# - Column2: virtual non-stored +# - Column3: virtual stored +create table t1 (a int, b int as (-a), c int as (-a) persistent); +create table t2 like t1; +insert into t2 values (1,default,default); +select * from t2; +a b c +1 -1 -1 +insert into t2 values (2,default,default); +select * from t2; +a b c +1 -1 -1 +2 -2 -2 +drop table t2; +drop table t1; +# Case 10. ALTER. Dropping a virtual non-stored column. +# - Column1: virtual non-stored +# - Column2: "real" +create table t1 (a int as (-b), b int, c varchar(5)); +insert into t1 values (default,1,'v1'); +insert into t1 values (default,2,'v2'); +select * from t1; +a b c +-1 1 v1 +-2 2 v2 +alter table t1 drop column a; +select * from t1; +b c +1 v1 +2 v2 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `b` int(11) DEFAULT NULL, + `c` varchar(5) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +drop table t1; +# Case 11. ALTER. Dropping a virtual stored column. +# - Column1: virtual stored +# - Column2: "real" +create table t1 (a int as (-b) persistent, b int, c char(5)); +insert into t1 values (default,1,'v1'); +insert into t1 values (default,2,'v2'); +select * from t1; +a b c +-1 1 v1 +-2 2 v2 +alter table t1 drop column a; +select * from t1; +b c +1 v1 +2 v2 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `b` int(11) DEFAULT NULL, + `c` char(5) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +drop table t1; +# Case 12. ALTER. Adding a new virtual non-stored column. +create table t1 (a int, b datetime); +insert into t1 values (1,'2008-09-04'); +insert into t1 values (2,'2008-09-05'); +select * from t1; +a b +1 2008-09-04 00:00:00 +2 2008-09-05 00:00:00 +alter table t1 add column c int as (dayofyear(b)) after a; +select * from t1; +a c b +1 248 2008-09-04 00:00:00 +2 249 2008-09-05 00:00:00 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `c` int(11) AS (dayofyear(b)) VIRTUAL, + `b` datetime DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +drop table t1; +# Case 13. ALTER. Adding a new virtual stored column. +create table t1 (a int, b datetime); +insert into t1 values (1,'2008-09-04'); +insert into t1 values (2,'2008-09-05'); +select * from t1; +a b +1 2008-09-04 00:00:00 +2 2008-09-05 00:00:00 +alter table t1 add column c int as (dayofyear(b)) persistent after a; +select * from t1; +a c b +1 248 2008-09-04 00:00:00 +2 249 2008-09-05 00:00:00 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `c` int(11) AS (dayofyear(b)) PERSISTENT, + `b` datetime DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +drop table t1; +# Case 14. ALTER. Changing the expression of a virtual stored column. +create table t1 (a int, b datetime, c int as (week(b)) persistent); +insert into t1 values (1,'2008-09-04',default); +insert into t1 values (2,'2008-09-05',default); +select * from t1; +a b c +1 2008-09-04 00:00:00 35 +2 2008-09-05 00:00:00 35 +alter table t1 change column c c int as (week(b,1)) persistent; +select * from t1; +a b c +1 2008-09-04 00:00:00 36 +2 2008-09-05 00:00:00 36 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` datetime DEFAULT NULL, + `c` int(11) AS (week(b,1)) PERSISTENT +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +drop table t1; +# Case 15. ALTER. Changing the expression of a virtual non-stored column. +create table t1 (a int, b datetime, c int as (week(b))); +insert into t1 values (1,'2008-09-04',default); +insert into t1 values (2,'2008-09-05',default); +select * from t1; +a b c +1 2008-09-04 00:00:00 35 +2 2008-09-05 00:00:00 35 +alter table t1 change column c c int as (week(b,1)); +select * from t1; +a b c +1 2008-09-04 00:00:00 36 +2 2008-09-05 00:00:00 36 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` datetime DEFAULT NULL, + `c` int(11) AS (week(b,1)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_non_stored_columns_myisam.result b/mysql-test/suite/vcol/r/vcol_non_stored_columns_myisam.result new file mode 100644 index 00000000000..de9a962ac2c --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_non_stored_columns_myisam.result @@ -0,0 +1,242 @@ +SET @@session.storage_engine = 'MyISAM'; +# Case 1. All non-stored columns. +# This scenario is currently impossible due to the fact that virtual columns +# with a constant expression are not allowed. +# Case 2. CREATE +# - Column1: "real" +# - Column 2: virtual non-stored +create table t1 (a int, b int as (-a)); +insert into t1 values (1,default); +select * from t1; +a b +1 -1 +insert into t1 values (2,default); +select * from t1; +a b +1 -1 +2 -2 +drop table t1; +# Case 3. CREATE +# - Column1: "real" +# - Column 2: virtual stored +create table t1 (a int, b int as (-a) persistent); +insert into t1 values (1,default); +select * from t1; +a b +1 -1 +insert into t1 values (2,default); +select * from t1; +a b +1 -1 +2 -2 +drop table t1; +# Case 4. CREATE +# - Column1: virtual non-stored +# - Column2: "real" +create table t1 (a int as (-b), b int); +insert into t1 values (default,1); +select * from t1; +a b +-1 1 +insert into t1 values (default,2); +select * from t1; +a b +-1 1 +-2 2 +drop table t1; +# Case 5. CREATE +# - Column1: virtual stored +# - Column2: "real" +create table t1 (a int as (-b) persistent, b int); +insert into t1 values (default,1); +select * from t1; +a b +-1 1 +insert into t1 values (default,2); +select * from t1; +a b +-1 1 +-2 2 +drop table t1; +# Case 6. CREATE +# - Column1: "real" +# - Column2: virtual non-stored +# - Column3: virtual stored +create table t1 (a int, b int as (-a), c int as (-a) persistent); +insert into t1 values (1,default,default); +select * from t1; +a b c +1 -1 -1 +insert into t1 values (2,default,default); +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +drop table t1; +# Case 7. ALTER. Modify virtual stored -> virtual non-stored +create table t1 (a int, b int as (a % 2) persistent); +alter table t1 modify b int as (a % 2); +ERROR HY000: This is not yet supported for computed columns +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) PERSISTENT +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +# Case 8. ALTER. Modify virtual non-stored -> virtual stored +create table t1 (a int, b int as (a % 2)); +alter table t1 modify b int as (a % 2) persistent; +ERROR HY000: This is not yet supported for computed columns +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 2) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +# Case 9. CREATE LIKE +# - Column1: "real" +# - Column2: virtual non-stored +# - Column3: virtual stored +create table t1 (a int, b int as (-a), c int as (-a) persistent); +create table t2 like t1; +insert into t2 values (1,default,default); +select * from t2; +a b c +1 -1 -1 +insert into t2 values (2,default,default); +select * from t2; +a b c +1 -1 -1 +2 -2 -2 +drop table t2; +drop table t1; +# Case 10. ALTER. Dropping a virtual non-stored column. +# - Column1: virtual non-stored +# - Column2: "real" +create table t1 (a int as (-b), b int, c varchar(5)); +insert into t1 values (default,1,'v1'); +insert into t1 values (default,2,'v2'); +select * from t1; +a b c +-1 1 v1 +-2 2 v2 +alter table t1 drop column a; +select * from t1; +b c +1 v1 +2 v2 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `b` int(11) DEFAULT NULL, + `c` varchar(5) DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +# Case 11. ALTER. Dropping a virtual stored column. +# - Column1: virtual stored +# - Column2: "real" +create table t1 (a int as (-b) persistent, b int, c char(5)); +insert into t1 values (default,1,'v1'); +insert into t1 values (default,2,'v2'); +select * from t1; +a b c +-1 1 v1 +-2 2 v2 +alter table t1 drop column a; +select * from t1; +b c +1 v1 +2 v2 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `b` int(11) DEFAULT NULL, + `c` char(5) DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +# Case 12. ALTER. Adding a new virtual non-stored column. +create table t1 (a int, b datetime); +insert into t1 values (1,'2008-09-04'); +insert into t1 values (2,'2008-09-05'); +select * from t1; +a b +1 2008-09-04 00:00:00 +2 2008-09-05 00:00:00 +alter table t1 add column c int as (dayofyear(b)) after a; +select * from t1; +a c b +1 248 2008-09-04 00:00:00 +2 249 2008-09-05 00:00:00 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `c` int(11) AS (dayofyear(b)) VIRTUAL, + `b` datetime DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +# Case 13. ALTER. Adding a new virtual stored column. +create table t1 (a int, b datetime); +insert into t1 values (1,'2008-09-04'); +insert into t1 values (2,'2008-09-05'); +select * from t1; +a b +1 2008-09-04 00:00:00 +2 2008-09-05 00:00:00 +alter table t1 add column c int as (dayofyear(b)) persistent after a; +select * from t1; +a c b +1 248 2008-09-04 00:00:00 +2 249 2008-09-05 00:00:00 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `c` int(11) AS (dayofyear(b)) PERSISTENT, + `b` datetime DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +# Case 14. ALTER. Changing the expression of a virtual stored column. +create table t1 (a int, b datetime, c int as (week(b)) persistent); +insert into t1 values (1,'2008-09-04',default); +insert into t1 values (2,'2008-09-05',default); +select * from t1; +a b c +1 2008-09-04 00:00:00 35 +2 2008-09-05 00:00:00 35 +alter table t1 change column c c int as (week(b,1)) persistent; +select * from t1; +a b c +1 2008-09-04 00:00:00 36 +2 2008-09-05 00:00:00 36 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` datetime DEFAULT NULL, + `c` int(11) AS (week(b,1)) PERSISTENT +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +# Case 15. ALTER. Changing the expression of a virtual non-stored column. +create table t1 (a int, b datetime, c int as (week(b))); +insert into t1 values (1,'2008-09-04',default); +insert into t1 values (2,'2008-09-05',default); +select * from t1; +a b c +1 2008-09-04 00:00:00 35 +2 2008-09-05 00:00:00 35 +alter table t1 change column c c int as (week(b,1)); +select * from t1; +a b c +1 2008-09-04 00:00:00 36 +2 2008-09-05 00:00:00 36 +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` datetime DEFAULT NULL, + `c` int(11) AS (week(b,1)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_partition_innodb.result b/mysql-test/suite/vcol/r/vcol_partition_innodb.result new file mode 100644 index 00000000000..466c1851800 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_partition_innodb.result @@ -0,0 +1,80 @@ +SET @@session.storage_engine = 'InnoDB'; +drop table if exists t1; +# Case 1. Partitioning by RANGE based on a non-stored virtual column. +CREATE TABLE t1 ( +a DATE NOT NULL, +b int as (year(a)) +) +PARTITION BY RANGE( b ) ( +PARTITION p0 VALUES LESS THAN (2006), +PARTITION p2 VALUES LESS THAN (2008) +); +insert into t1 values ('2006-01-01',default); +insert into t1 values ('2007-01-01',default); +insert into t1 values ('2005-01-01',default); +select * from t1; +a b +2005-01-01 2005 +2006-01-01 2006 +2007-01-01 2007 +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +partition_name table_rows data_length +p0 1 16384 +p2 2 16384 +# Modify the expression of virtual column b +ALTER TABLE t1 modify b int as (year(a)-1); +select * from t1; +a b +2005-01-01 2004 +2006-01-01 2005 +2007-01-01 2006 +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +partition_name table_rows data_length +p0 2 16384 +p2 1 16384 +drop table t1; +# Case 2. Partitioning by LIST based on a stored virtual column. +CREATE TABLE t1 (a int, b int as (a % 3 ) persistent) +PARTITION BY LIST (a+1) +(PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)); +insert into t1 values (1,default); +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +partition_name table_rows data_length +p1 0 16384 +p2 1 16384 +select * from t1; +a b +1 1 +select * from t1; +a b +1 1 +drop table t1; +# Case 3. Partitioning by HASH based on a non-stored virtual column. +CREATE TABLE t1 ( +a DATE NOT NULL, +b int as (year(a)) +) +PARTITION BY HASH( b % 3 ) PARTITIONS 3; +insert into t1 values ('2005-01-01',default); +insert into t1 values ('2006-01-01',default); +select * from t1; +a b +2005-01-01 2005 +2006-01-01 2006 +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +partition_name table_rows data_length +p0 0 16384 +p1 1 16384 +p2 1 16384 +# Modify the expression of virtual column b +ALTER TABLE t1 modify b int as (year(a)-1); +select * from t1; +a b +2005-01-01 2004 +2006-01-01 2005 +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +partition_name table_rows data_length +p0 1 16384 +p1 1 16384 +p2 0 16384 +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_partition_myisam.result b/mysql-test/suite/vcol/r/vcol_partition_myisam.result new file mode 100644 index 00000000000..9a92f308c45 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_partition_myisam.result @@ -0,0 +1,80 @@ +SET @@session.storage_engine = 'MyISAM'; +drop table if exists t1; +# Case 1. Partitioning by RANGE based on a non-stored virtual column. +CREATE TABLE t1 ( +a DATE NOT NULL, +b int as (year(a)) +) +PARTITION BY RANGE( b ) ( +PARTITION p0 VALUES LESS THAN (2006), +PARTITION p2 VALUES LESS THAN (2008) +); +insert into t1 values ('2006-01-01',default); +insert into t1 values ('2007-01-01',default); +insert into t1 values ('2005-01-01',default); +select * from t1; +a b +2005-01-01 2005 +2006-01-01 2006 +2007-01-01 2007 +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +partition_name table_rows data_length +p0 1 7 +p2 2 14 +# Modify the expression of virtual column b +ALTER TABLE t1 modify b int as (year(a)-1); +select * from t1; +a b +2005-01-01 2004 +2006-01-01 2005 +2007-01-01 2006 +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +partition_name table_rows data_length +p0 2 14 +p2 1 7 +drop table t1; +# Case 2. Partitioning by LIST based on a stored virtual column. +CREATE TABLE t1 (a int, b int as (a % 3 ) persistent) +PARTITION BY LIST (a+1) +(PARTITION p1 VALUES IN (1), PARTITION p2 VALUES IN (2)); +insert into t1 values (1,default); +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +partition_name table_rows data_length +p1 0 0 +p2 1 9 +select * from t1; +a b +1 1 +select * from t1; +a b +1 1 +drop table t1; +# Case 3. Partitioning by HASH based on a non-stored virtual column. +CREATE TABLE t1 ( +a DATE NOT NULL, +b int as (year(a)) +) +PARTITION BY HASH( b % 3 ) PARTITIONS 3; +insert into t1 values ('2005-01-01',default); +insert into t1 values ('2006-01-01',default); +select * from t1; +a b +2005-01-01 2005 +2006-01-01 2006 +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +partition_name table_rows data_length +p0 0 0 +p1 1 7 +p2 1 7 +# Modify the expression of virtual column b +ALTER TABLE t1 modify b int as (year(a)-1); +select * from t1; +a b +2005-01-01 2004 +2006-01-01 2005 +select partition_name,table_rows,data_length from information_schema.partitions where table_name = 't1'; +partition_name table_rows data_length +p0 1 7 +p1 1 7 +p2 0 0 +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_select_innodb.result b/mysql-test/suite/vcol/r/vcol_select_innodb.result new file mode 100644 index 00000000000..0612d5a06b3 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_select_innodb.result @@ -0,0 +1,264 @@ +SET @@session.storage_engine = 'InnoDB'; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent, +index (c)); +insert into t1 (a) values (2), (1), (1), (3), (NULL); +create table t2 like t1; +insert into t2 (a) values (1); +create table t3 (a int primary key, +b int as (-a), +c int as (-a) persistent unique); +insert into t3 (a) values (2),(1),(3); +# select_type=SIMPLE, type=system +select * from t2; +a b c +1 -1 -1 +explain select * from t2; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 1 +select * from t2 where c=-1; +a b c +1 -1 -1 +explain select * from t2 where c=-1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t2 ref c c 5 const 1 Using where +# select_type=SIMPLE, type=ALL +select * from t1 where b=-1; +a b c +1 -1 -1 +1 -1 -1 +explain select * from t1 where b=-1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where +# select_type=SIMPLE, type=const +select * from t3 where a=1; +a b c +1 -1 -1 +explain select * from t3 where a=1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 const PRIMARY PRIMARY 4 const 1 +# select_type=SIMPLE, type=range +select * from t3 where c>=-1; +a b c +1 -1 -1 +explain select * from t3 where c>=-1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 1 Using where +# select_type=SIMPLE, type=ref +select * from t1,t3 where t1.c=t3.c and t3.c=-1; +a b c a b c +1 -1 -1 1 -1 -1 +1 -1 -1 1 -1 -1 +explain select * from t1,t3 where t1.c=t3.c and t3.c=-1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 const c c 5 const 1 +1 SIMPLE t1 ref c c 5 const 2 Using where +# select_type=PRIMARY, type=index,ALL +select * from t1 where b in (select c from t3); +a b c +2 -2 -2 +1 -1 -1 +1 -1 -1 +3 -3 -3 +explain select * from t1 where b in (select c from t3); +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 5 Using where +2 DEPENDENT SUBQUERY t3 index_subquery c c 5 func 1 Using index; Using where +# select_type=PRIMARY, type=range,ref +select * from t1 where c in (select c from t3 where c between -2 and -1); +a b c +2 -2 -2 +1 -1 -1 +1 -1 -1 +explain select * from t1 where c in (select c from t3 where c between -2 and -1); +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 5 Using where +2 DEPENDENT SUBQUERY t3 index_subquery c c 5 func 1 Using index; Using where +# select_type=UNION, type=system +# select_type=UNION RESULT, type=<union1,2> +select * from t1 union select * from t2; +a b c +2 -2 -2 +1 -1 -1 +3 -3 -3 +NULL NULL NULL +explain select * from t1 union select * from t2; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 5 +2 UNION t2 ALL NULL NULL NULL NULL 1 +NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL +# select_type=DERIVED, type=system +select * from (select a,b,c from t1) as t11; +a b c +2 -2 -2 +1 -1 -1 +1 -1 -1 +3 -3 -3 +NULL NULL NULL +explain select * from (select a,b,c from t1) as t11; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 5 +2 DERIVED t1 ALL NULL NULL NULL NULL 5 +### +### Using aggregate functions with/without DISTINCT +### +# SELECT COUNT(*) FROM tbl_name +select count(*) from t1; +count(*) +5 +explain select count(*) from t1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 index NULL c 5 NULL 5 Using index +# SELECT COUNT(DISTINCT <non-vcol>) FROM tbl_name +select count(distinct a) from t1; +count(distinct a) +3 +explain select count(distinct a) from t1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 +# SELECT COUNT(DISTINCT <non-stored vcol>) FROM tbl_name +select count(distinct b) from t1; +count(distinct b) +3 +explain select count(distinct b) from t1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 +# SELECT COUNT(DISTINCT <stored vcol>) FROM tbl_name +select count(distinct c) from t1; +count(distinct c) +3 +explain select count(distinct c) from t1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 index NULL c 5 NULL 5 Using index +### +### filesort & range-based utils +### +# SELECT * FROM tbl_name WHERE <vcol expr> +select * from t3 where c >= -2; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where c >= -2; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 2 Using where +# SELECT * FROM tbl_name WHERE <non-vcol expr> +select * from t3 where a between 1 and 2; +a b c +1 -1 -1 +2 -2 -2 +explain select * from t3 where a between 1 and 2; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range PRIMARY PRIMARY 4 NULL 2 Using where +# SELECT * FROM tbl_name WHERE <non-indexed vcol expr> +select * from t3 where b between -2 and -1; +a b c +1 -1 -1 +2 -2 -2 +explain select * from t3 where b between -2 and -1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 Using where +# SELECT * FROM tbl_name WHERE <indexed vcol expr> +select * from t3 where c between -2 and -1; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where c between -2 and -1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 2 Using where +# SELECT * FROM tbl_name WHERE <non-vcol expr> ORDER BY <non-indexed vcol> +select * from t3 where a between 1 and 2 order by b; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where a between 1 and 2 order by b; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range PRIMARY PRIMARY 4 NULL 2 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <non-vcol expr> ORDER BY <indexed vcol> +select * from t3 where a between 1 and 2 order by c; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where a between 1 and 2 order by c; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range PRIMARY PRIMARY 4 NULL 2 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <non-indexed vcol expr> ORDER BY <non-vcol> +select * from t3 where b between -2 and -1 order by a; +a b c +1 -1 -1 +2 -2 -2 +explain select * from t3 where b between -2 and -1 order by a; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 index NULL PRIMARY 4 NULL 3 Using where +# SELECT * FROM tbl_name WHERE <non-indexed vcol expr> ORDER BY <non-indexed vcol> +select * from t3 where b between -2 and -1 order by b; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where b between -2 and -1 order by b; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <indexed vcol expr> ORDER BY <non-indexed vcol> +select * from t3 where c between -2 and -1 order by b; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where c between -2 and -1 order by b; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 2 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <non-indexed vcol expr> ORDER BY <indexed vcol> +select * from t3 where b between -2 and -1 order by c; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where b between -2 and -1 order by c; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <indexed vcol expr> ORDER BY <indexed vcol> +select * from t3 where c between -2 and -1 order by c; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where c between -2 and -1 order by c; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 2 Using where +# SELECT sum(<non-indexed vcol>) FROM tbl_name GROUP BY <non-indexed vcol> +select sum(b) from t1 group by b; +sum(b) +NULL +-3 +-2 +-2 +explain select sum(b) from t1 group by b; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using temporary; Using filesort +# SELECT sum(<indexed vcol>) FROM tbl_name GROUP BY <indexed vcol> +select sum(c) from t1 group by c; +sum(c) +NULL +-3 +-2 +-2 +explain select sum(c) from t1 group by c; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 index NULL c 5 NULL 5 Using index +# SELECT sum(<non-indexed vcol>) FROM tbl_name GROUP BY <indexed vcol> +select sum(b) from t1 group by c; +sum(b) +NULL +-3 +-2 +-2 +explain select sum(b) from t1 group by c; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 index NULL c 5 NULL 5 +# SELECT sum(<indexed vcol>) FROM tbl_name GROUP BY <non-indexed vcol> +select sum(c) from t1 group by b; +sum(c) +NULL +-3 +-2 +-2 +explain select sum(c) from t1 group by b; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using temporary; Using filesort diff --git a/mysql-test/suite/vcol/r/vcol_select_myisam.result b/mysql-test/suite/vcol/r/vcol_select_myisam.result new file mode 100644 index 00000000000..04ae7e0f7cd --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_select_myisam.result @@ -0,0 +1,294 @@ +SET @@session.storage_engine = 'MyISAM'; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent, +index (c)); +insert into t1 (a) values (2), (1), (1), (3), (NULL); +create table t2 like t1; +insert into t2 (a) values (1); +create table t3 (a int primary key, +b int as (-a), +c int as (-a) persistent unique); +insert into t3 (a) values (2),(1),(3); +# select_type=SIMPLE, type=system +select * from t2; +a b c +1 -1 -1 +explain select * from t2; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t2 system NULL NULL NULL NULL 1 +select * from t2 where c=-1; +a b c +1 -1 -1 +explain select * from t2 where c=-1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t2 system c NULL NULL NULL 1 +# select_type=SIMPLE, type=ALL +select * from t1 where b=-1; +a b c +1 -1 -1 +1 -1 -1 +explain select * from t1 where b=-1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where +# select_type=SIMPLE, type=const +select * from t3 where a=1; +a b c +1 -1 -1 +explain select * from t3 where a=1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 const PRIMARY PRIMARY 4 const 1 +# select_type=SIMPLE, type=range +select * from t3 where c>=-1; +a b c +1 -1 -1 +explain select * from t3 where c>=-1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 2 Using where +# select_type=SIMPLE, type=ref +select * from t1,t3 where t1.c=t3.c and t3.c=-1; +a b c a b c +1 -1 -1 1 -1 -1 +1 -1 -1 1 -1 -1 +explain select * from t1,t3 where t1.c=t3.c and t3.c=-1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 const c c 5 const 1 +1 SIMPLE t1 ref c c 5 const 2 Using where +# select_type=PRIMARY, type=index,ALL +select * from t1 where b in (select c from t3); +a b c +2 -2 -2 +1 -1 -1 +1 -1 -1 +3 -3 -3 +explain select * from t1 where b in (select c from t3); +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 5 Using where +2 DEPENDENT SUBQUERY t3 index_subquery c c 5 func 2 Using index; Using where +# select_type=PRIMARY, type=range,ref +select * from t1 where c in (select c from t3 where c between -2 and -1); +a b c +2 -2 -2 +1 -1 -1 +1 -1 -1 +explain select * from t1 where c in (select c from t3 where c between -2 and -1); +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 5 Using where +2 DEPENDENT SUBQUERY t3 index_subquery c c 5 func 2 Using index; Using where +# select_type=UNION, type=system +# select_type=UNION RESULT, type=<union1,2> +select * from t1 union select * from t2; +a b c +2 -2 -2 +1 -1 -1 +3 -3 -3 +NULL NULL NULL +explain select * from t1 union select * from t2; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY t1 ALL NULL NULL NULL NULL 5 +2 UNION t2 system NULL NULL NULL NULL 1 +NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL +# select_type=DERIVED, type=system +select * from (select a,b,c from t1) as t11; +a b c +2 -2 -2 +1 -1 -1 +1 -1 -1 +3 -3 -3 +NULL NULL NULL +explain select * from (select a,b,c from t1) as t11; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 5 +2 DERIVED t1 ALL NULL NULL NULL NULL 5 +### +### Using aggregate functions with/without DISTINCT +### +# SELECT COUNT(*) FROM tbl_name +select count(*) from t1; +count(*) +5 +explain select count(*) from t1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away +# SELECT COUNT(DISTINCT <non-vcol>) FROM tbl_name +select count(distinct a) from t1; +count(distinct a) +3 +explain select count(distinct a) from t1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 +# SELECT COUNT(DISTINCT <non-stored vcol>) FROM tbl_name +select count(distinct b) from t1; +count(distinct b) +3 +explain select count(distinct b) from t1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 +# SELECT COUNT(DISTINCT <stored vcol>) FROM tbl_name +select count(distinct c) from t1; +count(distinct c) +3 +explain select count(distinct c) from t1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 index NULL c 5 NULL 5 Using index +### +### filesort & range-based utils +### +# SELECT * FROM tbl_name WHERE <vcol expr> +select * from t3 where c >= -2; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where c >= -2; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 2 Using where +# SELECT * FROM tbl_name WHERE <non-vcol expr> +select * from t3 where a between 1 and 2; +a b c +1 -1 -1 +2 -2 -2 +explain select * from t3 where a between 1 and 2; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range PRIMARY PRIMARY 4 NULL 1 Using where +# SELECT * FROM tbl_name WHERE <non-indexed vcol expr> +select * from t3 where b between -2 and -1; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where b between -2 and -1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 Using where +# SELECT * FROM tbl_name WHERE <indexed vcol expr> +select * from t3 where c between -2 and -1; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where c between -2 and -1; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 1 Using where +# SELECT * FROM tbl_name WHERE <non-vcol expr> ORDER BY <indexed vcol> +select * from t3 where a between 1 and 2 order by c; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where a between 1 and 2 order by c; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range PRIMARY PRIMARY 4 NULL 1 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <non-indexed vcol expr> ORDER BY <non-vcol> +select * from t3 where b between -2 and -1 order by a; +a b c +1 -1 -1 +2 -2 -2 +explain select * from t3 where b between -2 and -1 order by a; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <indexed vcol expr> ORDER BY <non-vcol> +select * from t3 where c between -2 and -1 order by a; +a b c +1 -1 -1 +2 -2 -2 +explain select * from t3 where c between -2 and -1 order by a; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 1 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <non-indexed vcol expr> ORDER BY <non-indexed vcol> +select * from t3 where b between -2 and -1 order by b; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where b between -2 and -1 order by b; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <indexed vcol expr> ORDER BY <non-indexed vcol> +select * from t3 where c between -2 and -1 order by b; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where c between -2 and -1 order by b; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 1 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <non-indexed vcol expr> ORDER BY <indexed vcol> +select * from t3 where b between -2 and -1 order by c; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where b between -2 and -1 order by c; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 Using where; Using filesort +# SELECT * FROM tbl_name WHERE <indexed vcol expr> ORDER BY <indexed vcol> +select * from t3 where c between -2 and -1 order by c; +a b c +2 -2 -2 +1 -1 -1 +explain select * from t3 where c between -2 and -1 order by c; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t3 range c c 5 NULL 1 Using where +# SELECT sum(<non-indexed vcol>) FROM tbl_name GROUP BY <non-indexed vcol> +select sum(b) from t1 group by b; +sum(b) +NULL +-3 +-2 +-2 +explain select sum(b) from t1 group by b; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using temporary; Using filesort +# SELECT sum(<indexed vcol>) FROM tbl_name GROUP BY <indexed vcol> +select sum(c) from t1 group by c; +sum(c) +NULL +-3 +-2 +-2 +explain select sum(c) from t1 group by c; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 index NULL c 5 NULL 5 Using index +# SELECT sum(<non-indexed vcol>) FROM tbl_name GROUP BY <indexed vcol> +select sum(b) from t1 group by c; +sum(b) +NULL +-3 +-2 +-2 +explain select sum(b) from t1 group by c; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using temporary; Using filesort +# SELECT sum(<indexed vcol>) FROM tbl_name GROUP BY <non-indexed vcol> +select sum(c) from t1 group by b; +sum(c) +NULL +-3 +-2 +-2 +explain select sum(c) from t1 group by b; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using temporary; Using filesort +# +# Bug #806057: join with USING over a virtual column +# +CREATE TABLE t1 (b int); +INSERT INTO t1 VALUES (NULL),( 78), (185), (0), (154); +CREATE TABLE t2 (a int, b int AS (a) VIRTUAL); +INSERT INTO t2 VALUES (187,187), (9,9), (187,187); +Warnings: +Warning 1647 The value specified for computed column 'b' in table 't2' ignored +Warning 1647 The value specified for computed column 'b' in table 't2' ignored +Warning 1647 The value specified for computed column 'b' in table 't2' ignored +EXPLAIN EXTENDED +SELECT * FROM t1 JOIN t2 USING (b); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00 Using where; Using join buffer +Warnings: +Note 1003 select `test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a` from `test`.`t1` join `test`.`t2` where (`test`.`t1`.`b` = `test`.`t2`.`b`) +SELECT * FROM t1 JOIN t2 USING (b); +b a +EXPLAIN EXTENDED +SELECT * FROM t1 NATURAL JOIN t2; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00 Using where; Using join buffer +Warnings: +Note 1003 select `test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a` from `test`.`t1` join `test`.`t2` where (`test`.`t1`.`b` = `test`.`t2`.`b`) +SELECT * FROM t1 NATURAL JOIN t2; +b a +DROP TABLE t1,t2; diff --git a/mysql-test/suite/vcol/r/vcol_supported_sql_funcs_innodb.result b/mysql-test/suite/vcol/r/vcol_supported_sql_funcs_innodb.result new file mode 100644 index 00000000000..83f755a2e7f --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_supported_sql_funcs_innodb.result @@ -0,0 +1,2943 @@ +SET @@session.storage_engine = 'InnoDB'; +# +# NUMERIC FUNCTIONS +# +# ABS() +set sql_warnings = 1; +create table t1 (a int, b int as (abs(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (abs(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (-1, default); +select * from t1; +a b +-1 1 +drop table t1; +set sql_warnings = 0; +# ACOS() +set sql_warnings = 1; +create table t1 (a double, b double as (format(acos(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(acos(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1, default); +insert into t1 values (1.0001,default); +insert into t1 values (0,default); +select * from t1; +a b +1 0 +1.0001 NULL +0 1.570796 +drop table t1; +set sql_warnings = 0; +# ASIN() +set sql_warnings = 1; +create table t1 (a double, b double as (format(asin(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(asin(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (0.2, default); +insert into t1 values (1.0001,default); +select * from t1; +a b +0.2 0.201358 +1.0001 NULL +drop table t1; +set sql_warnings = 0; +#ATAN +set sql_warnings = 1; +create table t1 (a double, b double, c double as (format(atan(a,b),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double DEFAULT NULL, + `c` double AS (format(atan(a,b),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (-2,2,default); +insert into t1 values (format(PI(),6),0,default); +select * from t1; +a b c +-2 2 -0.785398 +3.141593 0 1.570796 +drop table t1; +set sql_warnings = 0; +set sql_warnings = 1; +create table t1 (a double, c double as (format(atan(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `c` double AS (format(atan(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (-2,default); +insert into t1 values (format(PI(),6),default); +select * from t1; +a c +-2 -1.107149 +3.141593 1.262627 +drop table t1; +set sql_warnings = 0; +# ATAN2 +set sql_warnings = 1; +create table t1 (a double, b double, c double as (format(atan2(a,b),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double DEFAULT NULL, + `c` double AS (format(atan2(a,b),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (-2,2,default); +insert into t1 values (format(PI(),6),0,default); +select * from t1; +a b c +-2 2 -0.785398 +3.141593 0 1.570796 +drop table t1; +set sql_warnings = 0; +# CEIL() +set sql_warnings = 1; +create table t1 (a double, b int as (ceil(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` int(11) AS (ceil(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1.23,default); +insert into t1 values (-1.23,default); +select * from t1; +a b +1.23 2 +-1.23 -1 +drop table t1; +set sql_warnings = 0; +# CONV() +set sql_warnings = 1; +create table t1 (a varchar(10), b int, c int, d varchar(10) as (conv(a,b,c))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` int(11) DEFAULT NULL, + `d` varchar(10) AS (conv(a,b,c)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('a',16,2,default); +insert into t1 values ('6e',18,8,default); +insert into t1 values (-17,10,-18,default); +insert into t1 values (10+'10'+'10'+0xa,10,10,default); +select * from t1; +a b c d +a 16 2 1010 +6e 18 8 172 +-17 10 -18 -H +40 10 10 40 +drop table t1; +set sql_warnings = 0; +# COS() +set sql_warnings = 1; +create table t1 (a double, b double as (format(cos(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(cos(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (format(PI(),6),default); +select * from t1; +a b +3.141593 -1 +drop table t1; +set sql_warnings = 0; +# COT() +set sql_warnings = 1; +create table t1 (a double, b double as (format(cot(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(cot(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (12,default); +insert into t1 values (0,default); +select * from t1; +a b +12 -1.572673 +0 NULL +drop table t1; +set sql_warnings = 0; +# CRC32() +set sql_warnings = 1; +create table t1 (a varchar(10), b long as (crc32(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` mediumtext AS (crc32(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +insert into t1 values ('mysql',default); +select * from t1; +a b +MySQL 3259397556 +mysql 2501908538 +drop table t1; +set sql_warnings = 0; +# DEGREES() +set sql_warnings = 1; +create table t1 (a double, b double as (format(degrees(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(degrees(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (format(PI(),6),default); +insert into t1 values (format(PI()/2,6),default); +select * from t1; +a b +3.141593 180.00002 +1.570796 89.999981 +drop table t1; +set sql_warnings = 0; +# / +set sql_warnings = 1; +create table t1 (a double, b double as (a/2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (a/2) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +select * from t1; +a b +2 1 +drop table t1; +set sql_warnings = 0; +# EXP() +set sql_warnings = 1; +create table t1 (a double, b double as (format(exp(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(exp(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +insert into t1 values (-2,default); +insert into t1 values (0,default); +select * from t1; +a b +2 7.389056 +-2 0.135335 +0 1 +drop table t1; +set sql_warnings = 0; +# FLOOR() +set sql_warnings = 1; +create table t1 (a double, b long as (floor(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` mediumtext AS (floor(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1.23,default); +insert into t1 values (-1.23,default); +select * from t1; +a b +1.23 1 +-1.23 -2 +drop table t1; +set sql_warnings = 0; +# LN() +set sql_warnings = 1; +create table t1 (a double, b double as (format(ln(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(ln(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +insert into t1 values (-2,default); +select * from t1; +a b +2 0.693147 +-2 NULL +drop table t1; +set sql_warnings = 0; +# LOG() +set sql_warnings = 1; +create table t1 (a double, b double, c double as (format(log(a,b),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double DEFAULT NULL, + `c` double AS (format(log(a,b),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (2,65536,default); +insert into t1 values (10,100,default); +insert into t1 values (1,100,default); +select * from t1; +a b c +2 65536 16 +10 100 2 +1 100 NULL +drop table t1; +set sql_warnings = 0; +set sql_warnings = 1; +create table t1 (a double, b double as (format(log(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(log(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +insert into t1 values (-2,default); +select * from t1; +a b +2 0.693147 +-2 NULL +drop table t1; +set sql_warnings = 0; +# LOG2() +set sql_warnings = 1; +create table t1 (a double, b double as (format(log2(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(log2(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (65536,default); +insert into t1 values (-100,default); +select * from t1; +a b +65536 16 +-100 NULL +drop table t1; +set sql_warnings = 0; +# LOG10() +set sql_warnings = 1; +create table t1 (a double, b double as (format(log10(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(log10(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +insert into t1 values (100,default); +insert into t1 values (-100,default); +select * from t1; +a b +2 0.30103 +100 2 +-100 NULL +drop table t1; +set sql_warnings = 0; +# - +set sql_warnings = 1; +create table t1 (a double, b double as (a-1)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (a-1) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +select * from t1; +a b +2 1 +drop table t1; +set sql_warnings = 0; +# MOD() +set sql_warnings = 1; +create table t1 (a int, b int as (mod(a,10))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (mod(a,10)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (11,default); +select * from t1; +a b +1 1 +11 1 +drop table t1; +set sql_warnings = 0; +# % +set sql_warnings = 1; +create table t1 (a int, b int as (a % 10)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 10) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (11,default); +select * from t1; +a b +1 1 +11 1 +drop table t1; +set sql_warnings = 0; +# OCT() +set sql_warnings = 1; +create table t1 (a double, b varchar(10) as (oct(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` varchar(10) AS (oct(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (12,default); +select * from t1; +a b +12 14 +drop table t1; +set sql_warnings = 0; +# PI() +set sql_warnings = 1; +create table t1 (a double, b double as (format(PI()*a*a,6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(PI()*a*a,6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +select * from t1; +a b +1 3.141593 +drop table t1; +set sql_warnings = 0; +# + +set sql_warnings = 1; +create table t1 (a int, b int as (a+1)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a+1) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +select * from t1; +a b +1 2 +drop table t1; +set sql_warnings = 0; +# POW, POWER +set sql_warnings = 1; +create table t1 (a int, b int as (pow(a,2)), c int as (power(a,2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (pow(a,2)) VIRTUAL, + `c` int(11) AS (power(a,2)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default,default); +insert into t1 values (2,default,default); +select * from t1; +a b c +1 1 1 +2 4 4 +drop table t1; +set sql_warnings = 0; +# RADIANS() +set sql_warnings = 1; +create table t1 (a double, b double as (format(radians(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(radians(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (90,default); +select * from t1; +a b +90 1.570796 +drop table t1; +set sql_warnings = 0; +# ROUND() +set sql_warnings = 1; +create table t1 (a double, b int as (round(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` int(11) AS (round(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (-1.23,default); +insert into t1 values (-1.58,default); +insert into t1 values (1.58,default); +select * from t1; +a b +-1.23 -1 +-1.58 -2 +1.58 2 +drop table t1; +set sql_warnings = 0; +set sql_warnings = 1; +create table t1 (a double, b double, c int as (round(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double DEFAULT NULL, + `c` int(11) AS (round(a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1.298,1,default); +insert into t1 values (1.298,0,default); +insert into t1 values (23.298,-1,default); +select * from t1; +a b c +1.298 1 1 +1.298 0 1 +23.298 -1 20 +drop table t1; +set sql_warnings = 0; +# SIGN() +set sql_warnings = 1; +create table t1 (a double, b int as (sign(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` int(11) AS (sign(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (-32,default); +insert into t1 values (0,default); +insert into t1 values (234,default); +select * from t1; +a b +-32 -1 +0 0 +234 1 +drop table t1; +set sql_warnings = 0; +# SIN() +set sql_warnings = 1; +create table t1 (a double, b double as (format(sin(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(sin(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (format(PI()/2,6),default); +select * from t1; +a b +1.570796 1 +drop table t1; +set sql_warnings = 0; +# SQRT() +set sql_warnings = 1; +create table t1 (a double, b double as (format(sqrt(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(sqrt(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (4,default); +insert into t1 values (20,default); +insert into t1 values (-16,default); +select * from t1; +a b +4 2 +20 4.472136 +-16 NULL +drop table t1; +set sql_warnings = 0; +# TAN() +set sql_warnings = 1; +create table t1 (a double, b double as (format(tan(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(tan(a),6)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (format(PI(),6),default); +insert into t1 values (format(PI()+1,6),default); +select * from t1; +a b +3.141593 0 +4.141593 1.557409 +drop table t1; +set sql_warnings = 0; +# * +set sql_warnings = 1; +create table t1 (a double, b double as (a*3)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (a*3) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (0,default); +insert into t1 values (1,default); +insert into t1 values (2,default); +select * from t1; +a b +0 0 +1 3 +2 6 +drop table t1; +set sql_warnings = 0; +# TRUNCATE() +set sql_warnings = 1; +create table t1 (a double, b double as (truncate(a,4))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (truncate(a,4)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1.223,default); +insert into t1 values (1.999,default); +insert into t1 values (1.999,default); +insert into t1 values (122,default); +select * from t1; +a b +1.223 1.223 +1.999 1.999 +1.999 1.999 +122 122 +drop table t1; +set sql_warnings = 0; +# Unary - +set sql_warnings = 1; +create table t1 (a double, b double as (-a)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (-a) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (-1,default); +select * from t1; +a b +1 -1 +-1 1 +drop table t1; +set sql_warnings = 0; +# +# STRING FUNCTIONS +# +# ASCII() +set sql_warnings = 1; +create table t1 (a char(2), b int as (ascii(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` char(2) DEFAULT NULL, + `b` int(11) AS (ascii(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2',default); +insert into t1 values (2,default); +insert into t1 values ('dx',default); +select * from t1; +a b +2 50 +2 50 +dx 100 +drop table t1; +set sql_warnings = 0; +# BIN() +set sql_warnings = 1; +create table t1 (a int, b varchar(10) as (bin(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` varchar(10) AS (bin(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (12,default); +select * from t1; +a b +12 1100 +drop table t1; +set sql_warnings = 0; +# BIT_LENGTH() +set sql_warnings = 1; +create table t1 (a varchar(10), b long as (bit_length(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` mediumtext AS (bit_length(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('text',default); +select * from t1; +a b +text 32 +drop table t1; +set sql_warnings = 0; +# CHAR_LENGTH() +set sql_warnings = 1; +create table t1 (a varchar(10), b long as (char_length(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` mediumtext AS (char_length(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('text',default); +select * from t1; +a b +text 4 +drop table t1; +set sql_warnings = 0; +# CHAR() +set sql_warnings = 1; +create table t1 (a int, b int, c varbinary(10) as (char(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` varbinary(10) AS (char(a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (77,121,default); +select * from t1; +a b c +77 121 My +drop table t1; +set sql_warnings = 0; +# CHARACTER_LENGTH() +set sql_warnings = 1; +create table t1 (a varchar(10), b long as (character_length(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` mediumtext AS (character_length(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('text',default); +select * from t1; +a b +text 4 +drop table t1; +set sql_warnings = 0; +# CONCAT_WS() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c varchar(20) as (concat_ws(',',a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` varchar(20) AS (concat_ws(',',a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('value1','value2',default); +select * from t1; +a b c +value1 value2 value1,value2 +drop table t1; +set sql_warnings = 0; +# CONCAT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c varchar(20) as (concat(a,',',b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` varchar(20) AS (concat(a,',',b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('value1','value2',default); +select * from t1; +a b c +value1 value2 value1,value2 +drop table t1; +set sql_warnings = 0; +# ELT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c int, d varchar(10) as (elt(c,a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` int(11) DEFAULT NULL, + `d` varchar(10) AS (elt(c,a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('value1','value2',1,default); +insert into t1 values ('value1','value2',2,default); +select * from t1; +a b c d +value1 value2 1 value1 +value1 value2 2 value2 +drop table t1; +set sql_warnings = 0; +# EXPORT_SET() +set sql_warnings = 1; +create table t1 (a int, b varchar(10) as (export_set(a,'1','0','',10))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` varchar(10) AS (export_set(a,'1','0','',10)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (6,default); +select * from t1; +a b +6 0110000000 +drop table t1; +set sql_warnings = 0; +# FIELD() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c int as (field('aa',a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` int(11) AS (field('aa',a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('aa','bb',default); +insert into t1 values ('bb','aa',default); +select * from t1; +a b c +aa bb 1 +bb aa 2 +drop table t1; +set sql_warnings = 0; +# FIND_IN_SET() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c int as (find_in_set(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` int(11) AS (find_in_set(a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('aa','aa,bb,cc',default); +insert into t1 values ('aa','bb,aa,cc',default); +select * from t1; +a b c +aa aa,bb,cc 1 +aa bb,aa,cc 2 +drop table t1; +set sql_warnings = 0; +# FORMAT() +set sql_warnings = 1; +create table t1 (a double, b varchar(20) as (format(a,2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` varchar(20) AS (format(a,2)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (12332.123456,default); +select * from t1; +a b +12332.123456 12,332.12 +drop table t1; +set sql_warnings = 0; +# HEX() +set sql_warnings = 1; +create table t1 (a int, b varchar(10) as (hex(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` varchar(10) AS (hex(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (17,default); +select * from t1; +a b +17 11 +drop table t1; +set sql_warnings = 0; +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (hex(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (hex(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc 616263 +drop table t1; +set sql_warnings = 0; +# INSERT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c varchar(20) as (insert(a,length(a),length(b),b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` varchar(20) AS (insert(a,length(a),length(b),b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('start,','end',default); +select * from t1; +a b c +start, end startend +drop table t1; +set sql_warnings = 0; +# INSTR() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c int as (instr(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` int(11) AS (instr(a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar,','bar',default); +insert into t1 values ('xbar,','foobar',default); +select * from t1; +a b c +foobarbar, bar 4 +xbar, foobar 0 +drop table t1; +set sql_warnings = 0; +# LCASE() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (lcase(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (lcase(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL mysql +drop table t1; +set sql_warnings = 0; +# LEFT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(5) as (left(a,5))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(5) AS (left(a,5)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar',default); +select * from t1; +a b +foobarbar fooba +drop table t1; +set sql_warnings = 0; +# LENGTH() +set sql_warnings = 1; +create table t1 (a varchar(10), b int as (length(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` int(11) AS (length(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('text',default); +select * from t1; +a b +text 4 +drop table t1; +set sql_warnings = 0; +# LIKE +set sql_warnings = 1; +create table t1 (a varchar(10), b bool as (a like 'H%!o' escape '!')); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` tinyint(1) AS (a like 'H%!o' escape '!') VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +insert into t1 values ('MySQL',default); +select * from t1; +a b +Hello 1 +MySQL 0 +drop table t1; +set sql_warnings = 0; +# LOCATE() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (locate('bar',a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (locate('bar',a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar',default); +select * from t1; +a b +foobarbar 4 +drop table t1; +set sql_warnings = 0; +# LOWER() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (lower(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (lower(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL mysql +drop table t1; +set sql_warnings = 0; +# LPAD() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (lpad(a,4,' '))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (lpad(a,4,' ')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +insert into t1 values ('M',default); +select * from t1; +a b +MySQL MySQ +M M +drop table t1; +set sql_warnings = 0; +# LTRIM() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (ltrim(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (ltrim(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (' MySQL',default); +insert into t1 values ('MySQL',default); +select * from t1; +a b + MySQL MySQL +MySQL MySQL +drop table t1; +set sql_warnings = 0; +# MAKE_SET() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c int, d varchar(30) as (make_set(c,a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` int(11) DEFAULT NULL, + `d` varchar(30) AS (make_set(c,a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('a','b',1,default); +insert into t1 values ('a','b',3,default); +select * from t1; +a b c d +a b 1 a +a b 3 a,b +drop table t1; +set sql_warnings = 0; +# MID() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (mid(a,1,2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (mid(a,1,2)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar',default); +select * from t1; +a b +foobarbar fo +drop table t1; +set sql_warnings = 0; +# NOT LIKE +set sql_warnings = 1; +create table t1 (a varchar(10), b bool as (a not like 'H%o')); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` tinyint(1) AS (a not like 'H%o') VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +insert into t1 values ('MySQL',default); +select * from t1; +a b +Hello 0 +MySQL 1 +drop table t1; +set sql_warnings = 0; +# NOT REGEXP +set sql_warnings = 1; +create table t1 (a varchar(10), b bool as (a not regexp 'H.+o')); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` tinyint(1) AS (a not regexp 'H.+o') VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +insert into t1 values ('hello',default); +select * from t1; +a b +Hello 0 +hello 0 +drop table t1; +set sql_warnings = 0; +# OCTET_LENGTH() +set sql_warnings = 1; +create table t1 (a varchar(10), b int as (octet_length(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` int(11) AS (octet_length(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('text',default); +select * from t1; +a b +text 4 +drop table t1; +set sql_warnings = 0; +# ORD() +set sql_warnings = 1; +create table t1 (a varchar(10), b long as (ord(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` mediumtext AS (ord(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2',default); +select * from t1; +a b +2 50 +drop table t1; +set sql_warnings = 0; +# POSITION() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (position('bar' in a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (position('bar' in a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar',default); +select * from t1; +a b +foobarbar 4 +drop table t1; +set sql_warnings = 0; +# QUOTE() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (quote(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (quote(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Don\'t',default); +select * from t1; +a b +Don't 'Don\'t' +drop table t1; +set sql_warnings = 0; +# REGEXP() +set sql_warnings = 1; +create table t1 (a varchar(10), b bool as (a regexp 'H.+o')); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` tinyint(1) AS (a regexp 'H.+o') VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +insert into t1 values ('hello',default); +select * from t1; +a b +Hello 1 +hello 1 +drop table t1; +set sql_warnings = 0; +# REPEAT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(30) as (repeat(a,3))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(30) AS (repeat(a,3)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL MySQLMySQLMySQL +drop table t1; +set sql_warnings = 0; +# REPLACE() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(30) as (replace(a,'aa','bb'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(30) AS (replace(a,'aa','bb')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('maa',default); +select * from t1; +a b +maa mbb +drop table t1; +set sql_warnings = 0; +# REVERSE() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(30) as (reverse(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(30) AS (reverse(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('maa',default); +select * from t1; +a b +maa aam +drop table t1; +set sql_warnings = 0; +# RIGHT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (right(a,4))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (right(a,4)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar',default); +select * from t1; +a b +foobarbar rbar +drop table t1; +set sql_warnings = 0; +# RLIKE() +set sql_warnings = 1; +create table t1 (a varchar(10), b bool as (a rlike 'H.+o')); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` tinyint(1) AS (a rlike 'H.+o') VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +insert into t1 values ('MySQL',default); +select * from t1; +a b +Hello 1 +MySQL 0 +drop table t1; +set sql_warnings = 0; +# RPAD() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (rpad(a,4,'??'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (rpad(a,4,'??')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('He',default); +select * from t1; +a b +He He?? +drop table t1; +set sql_warnings = 0; +# RTRIM(); +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (rtrim(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (rtrim(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello ',default); +select * from t1; +a b +Hello Hello +drop table t1; +set sql_warnings = 0; +# SOUNDEX() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(20) as (soundex(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(20) AS (soundex(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +select * from t1; +a b +Hello H400 +drop table t1; +set sql_warnings = 0; +# SOUNDS LIKE +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a sounds like b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a sounds like b) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello','Hello',default); +insert into t1 values ('Hello','MySQL',default); +insert into t1 values ('Hello','hello',default); +select * from t1; +a b c +Hello Hello 1 +Hello MySQL 0 +Hello hello 1 +drop table t1; +set sql_warnings = 0; +# SPACE() +set sql_warnings = 1; +create table t1 (a varchar(5), b varchar(10) as (concat(a,space(5)))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(5) DEFAULT NULL, + `b` varchar(10) AS (concat(a,space(5))) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello', default); +select * from t1; +a b +Hello Hello +drop table t1; +set sql_warnings = 0; +# STRCMP() +set sql_warnings = 1; +create table t1 (a varchar(9), b varchar(9), c tinyint(1) as (strcmp(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(9) DEFAULT NULL, + `b` varchar(9) DEFAULT NULL, + `c` tinyint(1) AS (strcmp(a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello','Hello', default); +insert into t1 values ('Hello','Hello1', default); +select * from t1; +a b c +Hello Hello 0 +Hello Hello1 -1 +drop table t1; +set sql_warnings = 0; +# SUBSTR() +set sql_warnings = 1; +create table t1 (a varchar(5), b varchar(10) as (substr(a,2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(5) DEFAULT NULL, + `b` varchar(10) AS (substr(a,2)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +select * from t1; +a b +Hello ello +drop table t1; +set sql_warnings = 0; +# SUBSTRING_INDEX() +set sql_warnings = 1; +create table t1 (a varchar(15), b varchar(10) as (substring_index(a,'.',2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(15) DEFAULT NULL, + `b` varchar(10) AS (substring_index(a,'.',2)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('www.mysql.com',default); +select * from t1; +a b +www.mysql.com www.mysql +drop table t1; +set sql_warnings = 0; +# SUBSTRING() +set sql_warnings = 1; +create table t1 (a varchar(5), b varchar(10) as (substring(a from 2 for 2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(5) DEFAULT NULL, + `b` varchar(10) AS (substring(a from 2 for 2)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +select * from t1; +a b +Hello el +drop table t1; +set sql_warnings = 0; +# TRIM() +set sql_warnings = 1; +create table t1 (a varchar(15), b varchar(10) as (trim(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(15) DEFAULT NULL, + `b` varchar(10) AS (trim(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (' aa ',default); +select * from t1; +a b + aa aa +drop table t1; +set sql_warnings = 0; +# UCASE() +set sql_warnings = 1; +create table t1 (a varchar(5), b varchar(10) as (ucase(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(5) DEFAULT NULL, + `b` varchar(10) AS (ucase(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL MYSQL +drop table t1; +set sql_warnings = 0; +# UNHEX() +set sql_warnings = 1; +create table t1 (a varchar(15), b varchar(10) as (unhex(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(15) DEFAULT NULL, + `b` varchar(10) AS (unhex(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('4D7953514C',default); +select * from t1; +a b +4D7953514C MySQL +drop table t1; +set sql_warnings = 0; +# UPPER() +set sql_warnings = 1; +create table t1 (a varchar(5), b varchar(10) as (upper(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(5) DEFAULT NULL, + `b` varchar(10) AS (upper(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL MYSQL +drop table t1; +set sql_warnings = 0; +# +# CONTROL FLOW FUNCTIONS +# +# CASE +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(16) as (case a when NULL then 'asd' when 'b' then 'B' else a end)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(16) AS (case a when NULL then 'asd' when 'b' then 'B' else a end) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (NULL,default); +insert into t1 values ('b',default); +insert into t1 values ('c',default); +select * from t1; +a b +NULL NULL +b B +c c +drop table t1; +set sql_warnings = 0; +# IF +set sql_warnings = 1; +create table t1 (a int, b int, c int as (if(a=1,a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` int(11) AS (if(a=1,a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,2,default); +insert into t1 values (3,4,default); +select * from t1; +a b c +1 2 1 +3 4 4 +drop table t1; +set sql_warnings = 0; +# IFNULL +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c varchar(10) as (ifnull(a,'DEFAULT'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` varchar(10) AS (ifnull(a,'DEFAULT')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (NULL,'adf',default); +insert into t1 values ('a','adf',default); +select * from t1; +a b c +NULL adf DEFAULT +a adf a +drop table t1; +set sql_warnings = 0; +# NULLIF +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (nullif(a,'DEFAULT'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (nullif(a,'DEFAULT')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('DEFAULT',default); +insert into t1 values ('a',default); +select * from t1; +a b +DEFAULT NULL +a a +drop table t1; +set sql_warnings = 0; +# +# OPERATORS +# +# AND, && +set sql_warnings = 1; +create table t1 (a int, b bool as (a>0 && a<2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` tinyint(1) AS (a>0 && a<2) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (-1,default); +insert into t1 values (1,default); +select * from t1; +a b +-1 0 +1 1 +drop table t1; +set sql_warnings = 0; +# BETWEEN ... AND ... +set sql_warnings = 1; +create table t1 (a int, b bool as (a between 0 and 2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` tinyint(1) AS (a between 0 and 2) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (-1,default); +insert into t1 values (1,default); +select * from t1; +a b +-1 0 +1 1 +drop table t1; +set sql_warnings = 0; +# BINARY +set sql_warnings = 1; +create table t1 (a varchar(10), b varbinary(10) as (binary a)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varbinary(10) AS (binary a) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('11',default); +insert into t1 values (1,default); +select * from t1; +a b +11 11 +1 1 +drop table t1; +set sql_warnings = 0; +# & +set sql_warnings = 1; +create table t1 (a int, b int as (a & 5)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a & 5) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (0,default); +select * from t1; +a b +1 1 +0 0 +drop table t1; +set sql_warnings = 0; +# ~ +set sql_warnings = 1; +create table t1 (a int, b int as (~a)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (~a) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +Warnings: +Warning 1264 Out of range value for column 'b' at row 1 +select * from t1; +a b +1 2147483647 +drop table t1; +set sql_warnings = 0; +# | +set sql_warnings = 1; +create table t1 (a int, b int as (a | 5)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a | 5) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (0,default); +insert into t1 values (2,default); +select * from t1; +a b +1 5 +0 5 +2 7 +drop table t1; +set sql_warnings = 0; +# ^ +set sql_warnings = 1; +create table t1 (a int, b int as (a ^ 5)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a ^ 5) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (0,default); +insert into t1 values (2,default); +select * from t1; +a b +1 4 +0 5 +2 7 +drop table t1; +set sql_warnings = 0; +# DIV +set sql_warnings = 1; +create table t1 (a int, b int as (a div 5)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a div 5) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (7,default); +select * from t1; +a b +1 0 +7 1 +drop table t1; +set sql_warnings = 0; +# <=> +set sql_warnings = 1; +create table t1 (a int, b int, c bool as (a <=> b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` tinyint(1) AS (a <=> b) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,1,default); +insert into t1 values (NULL,NULL,default); +insert into t1 values (1,NULL,default); +select * from t1; +a b c +1 1 1 +NULL NULL 1 +1 NULL 0 +drop table t1; +set sql_warnings = 0; +# = +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a=b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a=b) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('a','b',default); +insert into t1 values ('a','a',default); +select * from t1; +a b c +a b 0 +a a 1 +drop table t1; +set sql_warnings = 0; +# >= +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a >= b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a >= b) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('a','b',default); +insert into t1 values ('a','a',default); +select * from t1; +a b c +a b 0 +a a 1 +drop table t1; +set sql_warnings = 0; +# > +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a > b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a > b) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('a','b',default); +insert into t1 values ('a','a',default); +select * from t1; +a b c +a b 0 +a a 0 +drop table t1; +set sql_warnings = 0; +# IS NOT NULL +set sql_warnings = 1; +create table t1 (a int, b bool as (a is not null)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` tinyint(1) AS (a is not null) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (NULL,default); +select * from t1; +a b +1 1 +NULL 0 +drop table t1; +set sql_warnings = 0; +# IS NULL +set sql_warnings = 1; +create table t1 (a int, b bool as (a is null)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` tinyint(1) AS (a is null) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (NULL,default); +select * from t1; +a b +1 0 +NULL 1 +drop table t1; +set sql_warnings = 0; +# << +set sql_warnings = 1; +create table t1 (a int, b int as (a << 2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a << 2) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (3,default); +select * from t1; +a b +1 4 +3 12 +drop table t1; +set sql_warnings = 0; +# <= +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a <= b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a <= b) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('b','a',default); +insert into t1 values ('b','b',default); +insert into t1 values ('b','c',default); +select * from t1; +a b c +b a 0 +b b 1 +b c 1 +drop table t1; +set sql_warnings = 0; +# < +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a < b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a < b) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('b','a',default); +insert into t1 values ('b','b',default); +insert into t1 values ('b','c',default); +select * from t1; +a b c +b a 0 +b b 0 +b c 1 +drop table t1; +set sql_warnings = 0; +# NOT BETWEEN ... AND ... +set sql_warnings = 1; +create table t1 (a int, b bool as (a not between 0 and 2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` tinyint(1) AS (a not between 0 and 2) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (-1,default); +insert into t1 values (1,default); +select * from t1; +a b +-1 1 +1 0 +drop table t1; +set sql_warnings = 0; +# <> +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a <> b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a <> b) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('b','a',default); +insert into t1 values ('b','b',default); +insert into t1 values ('b','c',default); +select * from t1; +a b c +b a 1 +b b 0 +b c 1 +drop table t1; +set sql_warnings = 0; +# != +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a != b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a != b) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('b','a',default); +insert into t1 values ('b','b',default); +insert into t1 values ('b','c',default); +select * from t1; +a b c +b a 1 +b b 0 +b c 1 +drop table t1; +set sql_warnings = 0; +# ||, OR +set sql_warnings = 1; +create table t1 (a int, b int as (a>5 || a<3)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a>5 || a<3) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (4,default); +select * from t1; +a b +1 1 +4 0 +drop table t1; +set sql_warnings = 0; +# >> +set sql_warnings = 1; +create table t1 (a int, b int as (a >> 2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a >> 2) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (8,default); +insert into t1 values (3,default); +select * from t1; +a b +8 2 +3 0 +drop table t1; +set sql_warnings = 0; +# XOR +set sql_warnings = 1; +create table t1 (a int, b int as (a xor 5)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a xor 5) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (0,default); +insert into t1 values (1,default); +insert into t1 values (2,default); +select * from t1; +a b +0 1 +1 0 +2 0 +drop table t1; +set sql_warnings = 0; +# +# DATE AND TIME FUNCTIONS +# +# ADDDATE() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (adddate(a,interval 1 month))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (adddate(a,interval 1 month)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-09-30 00:00:00 +drop table t1; +set sql_warnings = 0; +# ADDTIME() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (addtime(a,'02:00:00'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (addtime(a,'02:00:00')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-08-31 02:00:00 +drop table t1; +set sql_warnings = 0; +# CONVERT_TZ() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (convert_tz(a,'MET','UTC'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (convert_tz(a,'MET','UTC')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-08-30 22:00:00 +drop table t1; +set sql_warnings = 0; +# DATE_ADD() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (date_add(a,interval 1 month))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (date_add(a,interval 1 month)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-09-30 00:00:00 +drop table t1; +set sql_warnings = 0; +# DATE_FORMAT() +set sql_warnings = 1; +create table t1 (a datetime, b varchar(64) as (date_format(a,'%W %M %D'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` varchar(64) AS (date_format(a,'%W %M %D')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 Sunday August 31st +drop table t1; +set sql_warnings = 0; +# DATE_SUB() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (date_sub(a,interval 1 month))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (date_sub(a,interval 1 month)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-07-31 00:00:00 +drop table t1; +set sql_warnings = 0; +# DATE() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (date(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (date(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31 02:00:00',default); +select * from t1; +a b +2008-08-31 02:00:00 2008-08-31 00:00:00 +drop table t1; +set sql_warnings = 0; +# DATEDIFF() +set sql_warnings = 1; +create table t1 (a datetime, b long as (datediff(a,'2000-01-01'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` mediumtext AS (datediff(a,'2000-01-01')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 3165 +drop table t1; +set sql_warnings = 0; +# DAY() +set sql_warnings = 1; +create table t1 (a datetime, b int as (day(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (day(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 31 +drop table t1; +set sql_warnings = 0; +# DAYNAME() +set sql_warnings = 1; +create table t1 (a datetime, b varchar(10) as (dayname(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` varchar(10) AS (dayname(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 Sunday +drop table t1; +set sql_warnings = 0; +# DAYOFMONTH() +set sql_warnings = 1; +create table t1 (a datetime, b int as (dayofmonth(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (dayofmonth(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 31 +drop table t1; +set sql_warnings = 0; +# DAYOFWEEK() +set sql_warnings = 1; +create table t1 (a datetime, b int as (dayofweek(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (dayofweek(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 1 +drop table t1; +set sql_warnings = 0; +# DAYOFYEAR() +set sql_warnings = 1; +create table t1 (a datetime, b int as (dayofyear(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (dayofyear(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 244 +drop table t1; +set sql_warnings = 0; +# EXTRACT +set sql_warnings = 1; +create table t1 (a datetime, b int as (extract(year from a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (extract(year from a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008 +drop table t1; +set sql_warnings = 0; +# FROM_DAYS() +set sql_warnings = 1; +create table t1 (a long, b datetime as (from_days(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` mediumtext, + `b` datetime AS (from_days(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (730669,default); +select * from t1; +a b +730669 2000-07-03 00:00:00 +drop table t1; +set sql_warnings = 0; +# FROM_UNIXTIME() +set time_zone='UTC'; +set sql_warnings = 1; +create table t1 (a long, b datetime as (from_unixtime(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` mediumtext, + `b` datetime AS (from_unixtime(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1196440219,default); +select * from t1; +a b +1196440219 2007-11-30 16:30:19 +drop table t1; +set sql_warnings = 0; +# GET_FORMAT() +set sql_warnings = 1; +create table t1 (a datetime, b varchar(32) as (date_format(a,get_format(DATE,'EUR')))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` varchar(32) AS (date_format(a,get_format(DATE,'EUR'))) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 31.08.2008 +drop table t1; +set sql_warnings = 0; +# HOUR() +set sql_warnings = 1; +create table t1 (a time, b long as (hour(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` time DEFAULT NULL, + `b` mediumtext AS (hour(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('10:05:03',default); +select * from t1; +a b +10:05:03 10 +drop table t1; +set sql_warnings = 0; +# LAST_DAY() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (last_day(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (last_day(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2003-02-05',default); +insert into t1 values ('2003-02-32',default); +Warnings: +Warning 1264 Out of range value for column 'a' at row 1 +select * from t1; +a b +2003-02-05 00:00:00 2003-02-28 00:00:00 +0000-00-00 00:00:00 NULL +drop table t1; +set sql_warnings = 0; +# MAKEDATE() +set sql_warnings = 1; +create table t1 (a int, b datetime as (makedate(a,1))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` datetime AS (makedate(a,1)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (2001,default); +select * from t1; +a b +2001 2001-01-01 00:00:00 +drop table t1; +set sql_warnings = 0; +# MAKETIME() +set sql_warnings = 1; +create table t1 (a int, b time as (maketime(a,1,3))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` time AS (maketime(a,1,3)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (12,default); +select * from t1; +a b +12 12:01:03 +drop table t1; +set sql_warnings = 0; +# MICROSECOND() +set sql_warnings = 1; +create table t1 (a datetime, b long as (microsecond(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` mediumtext AS (microsecond(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2009-12-31 12:00:00.123456',default); +insert into t1 values ('2009-12-31 23:59:59.000010',default); +select * from t1; +a b +2009-12-31 12:00:00 0 +2009-12-31 23:59:59 0 +drop table t1; +set sql_warnings = 0; +# MINUTE() +set sql_warnings = 1; +create table t1 (a datetime, b int as (minute(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (minute(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2009-12-31 23:59:59.000010',default); +select * from t1; +a b +2009-12-31 23:59:59 59 +drop table t1; +set sql_warnings = 0; +# MONTH() +set sql_warnings = 1; +create table t1 (a datetime, b int as (month(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (month(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2009-12-31 23:59:59.000010',default); +select * from t1; +a b +2009-12-31 23:59:59 12 +drop table t1; +set sql_warnings = 0; +# MONTHNAME() +set sql_warnings = 1; +create table t1 (a datetime, b varchar(16) as (monthname(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` varchar(16) AS (monthname(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2009-12-31 23:59:59.000010',default); +select * from t1; +a b +2009-12-31 23:59:59 December +drop table t1; +set sql_warnings = 0; +# PERIOD_ADD() +set sql_warnings = 1; +create table t1 (a int, b int as (period_add(a,2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (period_add(a,2)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (200801,default); +select * from t1; +a b +200801 200803 +drop table t1; +set sql_warnings = 0; +# PERIOD_DIFF() +set sql_warnings = 1; +create table t1 (a int, b int, c int as (period_diff(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` int(11) AS (period_diff(a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (200802,200703,default); +select * from t1; +a b c +200802 200703 11 +drop table t1; +set sql_warnings = 0; +# QUARTER() +set sql_warnings = 1; +create table t1 (a datetime, b int as (quarter(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (quarter(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 3 +drop table t1; +set sql_warnings = 0; +# SEC_TO_TIME() +set sql_warnings = 1; +create table t1 (a long, b time as (sec_to_time(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` mediumtext, + `b` time AS (sec_to_time(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (2378,default); +select * from t1; +a b +2378 00:39:38 +drop table t1; +set sql_warnings = 0; +# SECOND() +set sql_warnings = 1; +create table t1 (a datetime, b int as (second(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (second(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('10:05:03',default); +select * from t1; +a b +2010-05-03 00:00:00 0 +drop table t1; +set sql_warnings = 0; +# STR_TO_DATE() +set sql_warnings = 1; +create table t1 (a varchar(64), b datetime as (str_to_date(a,'%m/%d/%Y'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(64) DEFAULT NULL, + `b` datetime AS (str_to_date(a,'%m/%d/%Y')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('04/30/2004',default); +select * from t1; +a b +04/30/2004 2004-04-30 00:00:00 +drop table t1; +set sql_warnings = 0; +# SUBDATE() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (subdate(a,interval 1 month))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (subdate(a,interval 1 month)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-07-31 00:00:00 +drop table t1; +set sql_warnings = 0; +# SUBTIME() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (subtime(a,'02:00:00'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (subtime(a,'02:00:00')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-08-30 22:00:00 +drop table t1; +set sql_warnings = 0; +# TIME_FORMAT() +set sql_warnings = 1; +create table t1 (a datetime, b varchar(32) as (time_format(a,'%r'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` varchar(32) AS (time_format(a,'%r')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31 02:03:04',default); +select * from t1; +a b +2008-08-31 02:03:04 02:03:04 AM +drop table t1; +set sql_warnings = 0; +# TIME_TO_SEC() +set sql_warnings = 1; +create table t1 (a time, b long as (time_to_sec(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` time DEFAULT NULL, + `b` mediumtext AS (time_to_sec(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('22:23:00',default); +select * from t1; +a b +22:23:00 80580 +drop table t1; +set sql_warnings = 0; +# TIME() +set sql_warnings = 1; +create table t1 (a datetime, b time as (time(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` time AS (time(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31 02:03:04',default); +select * from t1; +a b +2008-08-31 02:03:04 02:03:04 +drop table t1; +set sql_warnings = 0; +# TIMEDIFF() +set sql_warnings = 1; +create table t1 (a datetime, b datetime, c long as (timediff(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime DEFAULT NULL, + `c` mediumtext AS (timediff(a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-12-31 23:59:59.000001','2008-12-30 01:01:01.000002',default); +select * from t1; +a b c +2008-12-31 23:59:59 2008-12-30 01:01:01 46:58:58 +drop table t1; +set sql_warnings = 0; +# TIMESTAMP() +set sql_warnings = 1; +create table t1 (a datetime, b timestamp as (timestamp(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` timestamp AS (timestamp(a)) VIRTUAL NULL ON UPDATE CURRENT_TIMESTAMP +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-12-31',default); +select * from t1; +a b +2008-12-31 00:00:00 2008-12-31 00:00:00 +drop table t1; +set sql_warnings = 0; +# TIMESTAMPADD() +set sql_warnings = 1; +create table t1 (a datetime, b timestamp as (timestampadd(minute,1,a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` timestamp AS (timestampadd(minute,1,a)) VIRTUAL NULL ON UPDATE CURRENT_TIMESTAMP +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2003-01-02',default); +select * from t1; +a b +2003-01-02 00:00:00 2003-01-02 00:01:00 +drop table t1; +set sql_warnings = 0; +# TIMESTAMPDIFF() +set sql_warnings = 1; +create table t1 (a timestamp, b timestamp, c long as (timestampdiff(MONTH, a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `b` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00', + `c` mediumtext AS (timestampdiff(MONTH, a,b)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2003-02-01','2003-05-01',default); +select * from t1; +a b c +2003-02-01 00:00:00 2003-05-01 00:00:00 3 +drop table t1; +set sql_warnings = 0; +# TO_DAYS() +set sql_warnings = 1; +create table t1 (a datetime, b long as (to_days(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` mediumtext AS (to_days(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2007-10-07',default); +select * from t1; +a b +2007-10-07 00:00:00 733321 +drop table t1; +set sql_warnings = 0; +# WEEK() +set sql_warnings = 1; +create table t1 (a datetime, b int as (week(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (week(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-09-01',default); +select * from t1; +a b +2008-09-01 00:00:00 35 +drop table t1; +set sql_warnings = 0; +# WEEKDAY() +set sql_warnings = 1; +create table t1 (a datetime, b int as (weekday(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (weekday(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-09-01',default); +select * from t1; +a b +2008-09-01 00:00:00 0 +drop table t1; +set sql_warnings = 0; +# WEEKOFYEAR() +set sql_warnings = 1; +create table t1 (a datetime, b int as (weekofyear(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (weekofyear(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-09-01',default); +select * from t1; +a b +2008-09-01 00:00:00 36 +drop table t1; +set sql_warnings = 0; +# YEAR() +set sql_warnings = 1; +create table t1 (a datetime, b int as (year(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (year(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-09-01',default); +select * from t1; +a b +2008-09-01 00:00:00 2008 +drop table t1; +set sql_warnings = 0; +# YEARWEEK() +set sql_warnings = 1; +create table t1 (a datetime, b int as (yearweek(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (yearweek(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('2008-09-01',default); +select * from t1; +a b +2008-09-01 00:00:00 200835 +drop table t1; +set sql_warnings = 0; +# +# FULL TEXT SEARCH FUNCTIONS +# +# None. +# +# CAST FUNCTIONS AND OPERATORS +# +# CAST() +set sql_warnings = 1; +create table t1 (a int, b long as (cast(a as unsigned))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` mediumtext AS (cast(a as unsigned)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (-1,default); +select * from t1; +a b +1 1 +-1 18446744073709551615 +drop table t1; +set sql_warnings = 0; +# Convert() +set sql_warnings = 1; +create table t1 (a int, b long as (convert(a,unsigned))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` mediumtext AS (convert(a,unsigned)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (-1,default); +select * from t1; +a b +1 1 +-1 18446744073709551615 +drop table t1; +set sql_warnings = 0; +# +# XML FUNCTIONS +# +# None. +# +# OTHER FUNCTIONS +# +# AES_DECRYPT(), AES_ENCRYPT() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (aes_encrypt(aes_decrypt(a,'adf'),'adf'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (aes_encrypt(aes_decrypt(a,'adf'),'adf')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL NULL +drop table t1; +set sql_warnings = 0; +# BIT_COUNT() +set sql_warnings = 1; +create table t1 (a int, b int as (bit_count(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (bit_count(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values (5,default); +select * from t1; +a b +5 2 +drop table t1; +set sql_warnings = 0; +# CHARSET() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (charset(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (charset(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc latin1 +drop table t1; +set sql_warnings = 0; +# COERCIBILITY() +set sql_warnings = 1; +create table t1 (a varchar(1024), b int as (coercibility(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` int(11) AS (coercibility(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc 2 +drop table t1; +set sql_warnings = 0; +# COLLATION() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (collation(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (collation(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc latin1_swedish_ci +drop table t1; +set sql_warnings = 0; +# COMPRESS(), UNCOMPRESS() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (uncompress(compress(a)))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (uncompress(compress(a))) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL MySQL +drop table t1; +set sql_warnings = 0; +# ENCODE(), DECODE() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (decode(encode(a,'abc'),'abc'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (decode(encode(a,'abc'),'abc')) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL MySQL +drop table t1; +set sql_warnings = 0; +# DEFAULT() +set sql_warnings = 1; +create table t1 (a varchar(1024) default 'aaa', b varchar(1024) as (ifnull(a,default(a)))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT 'aaa', + `b` varchar(1024) AS (ifnull(a,default(a))) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('any value',default); +select * from t1; +a b +any value any value +drop table t1; +set sql_warnings = 0; +# INET_ATON(), INET_NTOA() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (inet_ntoa(inet_aton(a)))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (inet_ntoa(inet_aton(a))) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('127.0.0.1',default); +select * from t1; +a b +127.0.0.1 127.0.0.1 +drop table t1; +set sql_warnings = 0; +# MD5() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varbinary(32) as (md5(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varbinary(32) AS (md5(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('testing',default); +select * from t1; +a b +testing ae2b1fca515949e5d54fb22b8ed95575 +drop table t1; +set sql_warnings = 0; +# OLD_PASSWORD() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (old_password(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (old_password(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('badpwd',default); +select * from t1; +a b +badpwd 7f84554057dd964b +drop table t1; +set sql_warnings = 0; +# PASSWORD() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (password(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (password(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('badpwd',default); +select * from t1; +a b +badpwd *AAB3E285149C0135D51A520E1940DD3263DC008C +drop table t1; +set sql_warnings = 0; +# SHA1() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (sha1(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (sha1(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc a9993e364706816aba3e25717850c26c9cd0d89d +drop table t1; +set sql_warnings = 0; +# SHA() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (sha(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (sha(a)) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc a9993e364706816aba3e25717850c26c9cd0d89d +drop table t1; +set sql_warnings = 0; +# UNCOMPRESSED_LENGTH() +set sql_warnings = 1; +create table t1 (a char, b varchar(1024) as (uncompressed_length(compress(repeat(a,30))))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` char(1) DEFAULT NULL, + `b` varchar(1024) AS (uncompressed_length(compress(repeat(a,30)))) VIRTUAL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +insert into t1 values ('a',default); +select * from t1; +a b +a 30 +drop table t1; +set sql_warnings = 0; diff --git a/mysql-test/suite/vcol/r/vcol_supported_sql_funcs_myisam.result b/mysql-test/suite/vcol/r/vcol_supported_sql_funcs_myisam.result new file mode 100644 index 00000000000..844aae38af2 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_supported_sql_funcs_myisam.result @@ -0,0 +1,2943 @@ +SET @@session.storage_engine = 'MyISAM'; +# +# NUMERIC FUNCTIONS +# +# ABS() +set sql_warnings = 1; +create table t1 (a int, b int as (abs(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (abs(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (-1, default); +select * from t1; +a b +-1 1 +drop table t1; +set sql_warnings = 0; +# ACOS() +set sql_warnings = 1; +create table t1 (a double, b double as (format(acos(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(acos(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1, default); +insert into t1 values (1.0001,default); +insert into t1 values (0,default); +select * from t1; +a b +1 0 +1.0001 NULL +0 1.570796 +drop table t1; +set sql_warnings = 0; +# ASIN() +set sql_warnings = 1; +create table t1 (a double, b double as (format(asin(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(asin(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (0.2, default); +insert into t1 values (1.0001,default); +select * from t1; +a b +0.2 0.201358 +1.0001 NULL +drop table t1; +set sql_warnings = 0; +#ATAN +set sql_warnings = 1; +create table t1 (a double, b double, c double as (format(atan(a,b),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double DEFAULT NULL, + `c` double AS (format(atan(a,b),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (-2,2,default); +insert into t1 values (format(PI(),6),0,default); +select * from t1; +a b c +-2 2 -0.785398 +3.141593 0 1.570796 +drop table t1; +set sql_warnings = 0; +set sql_warnings = 1; +create table t1 (a double, c double as (format(atan(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `c` double AS (format(atan(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (-2,default); +insert into t1 values (format(PI(),6),default); +select * from t1; +a c +-2 -1.107149 +3.141593 1.262627 +drop table t1; +set sql_warnings = 0; +# ATAN2 +set sql_warnings = 1; +create table t1 (a double, b double, c double as (format(atan2(a,b),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double DEFAULT NULL, + `c` double AS (format(atan2(a,b),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (-2,2,default); +insert into t1 values (format(PI(),6),0,default); +select * from t1; +a b c +-2 2 -0.785398 +3.141593 0 1.570796 +drop table t1; +set sql_warnings = 0; +# CEIL() +set sql_warnings = 1; +create table t1 (a double, b int as (ceil(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` int(11) AS (ceil(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1.23,default); +insert into t1 values (-1.23,default); +select * from t1; +a b +1.23 2 +-1.23 -1 +drop table t1; +set sql_warnings = 0; +# CONV() +set sql_warnings = 1; +create table t1 (a varchar(10), b int, c int, d varchar(10) as (conv(a,b,c))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` int(11) DEFAULT NULL, + `d` varchar(10) AS (conv(a,b,c)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('a',16,2,default); +insert into t1 values ('6e',18,8,default); +insert into t1 values (-17,10,-18,default); +insert into t1 values (10+'10'+'10'+0xa,10,10,default); +select * from t1; +a b c d +a 16 2 1010 +6e 18 8 172 +-17 10 -18 -H +40 10 10 40 +drop table t1; +set sql_warnings = 0; +# COS() +set sql_warnings = 1; +create table t1 (a double, b double as (format(cos(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(cos(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (format(PI(),6),default); +select * from t1; +a b +3.141593 -1 +drop table t1; +set sql_warnings = 0; +# COT() +set sql_warnings = 1; +create table t1 (a double, b double as (format(cot(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(cot(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (12,default); +insert into t1 values (0,default); +select * from t1; +a b +12 -1.572673 +0 NULL +drop table t1; +set sql_warnings = 0; +# CRC32() +set sql_warnings = 1; +create table t1 (a varchar(10), b long as (crc32(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` mediumtext AS (crc32(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +insert into t1 values ('mysql',default); +select * from t1; +a b +MySQL 3259397556 +mysql 2501908538 +drop table t1; +set sql_warnings = 0; +# DEGREES() +set sql_warnings = 1; +create table t1 (a double, b double as (format(degrees(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(degrees(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (format(PI(),6),default); +insert into t1 values (format(PI()/2,6),default); +select * from t1; +a b +3.141593 180.00002 +1.570796 89.999981 +drop table t1; +set sql_warnings = 0; +# / +set sql_warnings = 1; +create table t1 (a double, b double as (a/2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (a/2) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +select * from t1; +a b +2 1 +drop table t1; +set sql_warnings = 0; +# EXP() +set sql_warnings = 1; +create table t1 (a double, b double as (format(exp(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(exp(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +insert into t1 values (-2,default); +insert into t1 values (0,default); +select * from t1; +a b +2 7.389056 +-2 0.135335 +0 1 +drop table t1; +set sql_warnings = 0; +# FLOOR() +set sql_warnings = 1; +create table t1 (a double, b long as (floor(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` mediumtext AS (floor(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1.23,default); +insert into t1 values (-1.23,default); +select * from t1; +a b +1.23 1 +-1.23 -2 +drop table t1; +set sql_warnings = 0; +# LN() +set sql_warnings = 1; +create table t1 (a double, b double as (format(ln(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(ln(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +insert into t1 values (-2,default); +select * from t1; +a b +2 0.693147 +-2 NULL +drop table t1; +set sql_warnings = 0; +# LOG() +set sql_warnings = 1; +create table t1 (a double, b double, c double as (format(log(a,b),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double DEFAULT NULL, + `c` double AS (format(log(a,b),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (2,65536,default); +insert into t1 values (10,100,default); +insert into t1 values (1,100,default); +select * from t1; +a b c +2 65536 16 +10 100 2 +1 100 NULL +drop table t1; +set sql_warnings = 0; +set sql_warnings = 1; +create table t1 (a double, b double as (format(log(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(log(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +insert into t1 values (-2,default); +select * from t1; +a b +2 0.693147 +-2 NULL +drop table t1; +set sql_warnings = 0; +# LOG2() +set sql_warnings = 1; +create table t1 (a double, b double as (format(log2(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(log2(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (65536,default); +insert into t1 values (-100,default); +select * from t1; +a b +65536 16 +-100 NULL +drop table t1; +set sql_warnings = 0; +# LOG10() +set sql_warnings = 1; +create table t1 (a double, b double as (format(log10(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(log10(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +insert into t1 values (100,default); +insert into t1 values (-100,default); +select * from t1; +a b +2 0.30103 +100 2 +-100 NULL +drop table t1; +set sql_warnings = 0; +# - +set sql_warnings = 1; +create table t1 (a double, b double as (a-1)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (a-1) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (2,default); +select * from t1; +a b +2 1 +drop table t1; +set sql_warnings = 0; +# MOD() +set sql_warnings = 1; +create table t1 (a int, b int as (mod(a,10))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (mod(a,10)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (11,default); +select * from t1; +a b +1 1 +11 1 +drop table t1; +set sql_warnings = 0; +# % +set sql_warnings = 1; +create table t1 (a int, b int as (a % 10)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a % 10) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (11,default); +select * from t1; +a b +1 1 +11 1 +drop table t1; +set sql_warnings = 0; +# OCT() +set sql_warnings = 1; +create table t1 (a double, b varchar(10) as (oct(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` varchar(10) AS (oct(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (12,default); +select * from t1; +a b +12 14 +drop table t1; +set sql_warnings = 0; +# PI() +set sql_warnings = 1; +create table t1 (a double, b double as (format(PI()*a*a,6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(PI()*a*a,6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +select * from t1; +a b +1 3.141593 +drop table t1; +set sql_warnings = 0; +# + +set sql_warnings = 1; +create table t1 (a int, b int as (a+1)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a+1) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +select * from t1; +a b +1 2 +drop table t1; +set sql_warnings = 0; +# POW, POWER +set sql_warnings = 1; +create table t1 (a int, b int as (pow(a,2)), c int as (power(a,2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (pow(a,2)) VIRTUAL, + `c` int(11) AS (power(a,2)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default,default); +insert into t1 values (2,default,default); +select * from t1; +a b c +1 1 1 +2 4 4 +drop table t1; +set sql_warnings = 0; +# RADIANS() +set sql_warnings = 1; +create table t1 (a double, b double as (format(radians(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(radians(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (90,default); +select * from t1; +a b +90 1.570796 +drop table t1; +set sql_warnings = 0; +# ROUND() +set sql_warnings = 1; +create table t1 (a double, b int as (round(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` int(11) AS (round(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (-1.23,default); +insert into t1 values (-1.58,default); +insert into t1 values (1.58,default); +select * from t1; +a b +-1.23 -1 +-1.58 -2 +1.58 2 +drop table t1; +set sql_warnings = 0; +set sql_warnings = 1; +create table t1 (a double, b double, c int as (round(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double DEFAULT NULL, + `c` int(11) AS (round(a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1.298,1,default); +insert into t1 values (1.298,0,default); +insert into t1 values (23.298,-1,default); +select * from t1; +a b c +1.298 1 1 +1.298 0 1 +23.298 -1 20 +drop table t1; +set sql_warnings = 0; +# SIGN() +set sql_warnings = 1; +create table t1 (a double, b int as (sign(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` int(11) AS (sign(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (-32,default); +insert into t1 values (0,default); +insert into t1 values (234,default); +select * from t1; +a b +-32 -1 +0 0 +234 1 +drop table t1; +set sql_warnings = 0; +# SIN() +set sql_warnings = 1; +create table t1 (a double, b double as (format(sin(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(sin(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (format(PI()/2,6),default); +select * from t1; +a b +1.570796 1 +drop table t1; +set sql_warnings = 0; +# SQRT() +set sql_warnings = 1; +create table t1 (a double, b double as (format(sqrt(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(sqrt(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (4,default); +insert into t1 values (20,default); +insert into t1 values (-16,default); +select * from t1; +a b +4 2 +20 4.472136 +-16 NULL +drop table t1; +set sql_warnings = 0; +# TAN() +set sql_warnings = 1; +create table t1 (a double, b double as (format(tan(a),6))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (format(tan(a),6)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (format(PI(),6),default); +insert into t1 values (format(PI()+1,6),default); +select * from t1; +a b +3.141593 0 +4.141593 1.557409 +drop table t1; +set sql_warnings = 0; +# * +set sql_warnings = 1; +create table t1 (a double, b double as (a*3)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (a*3) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (0,default); +insert into t1 values (1,default); +insert into t1 values (2,default); +select * from t1; +a b +0 0 +1 3 +2 6 +drop table t1; +set sql_warnings = 0; +# TRUNCATE() +set sql_warnings = 1; +create table t1 (a double, b double as (truncate(a,4))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (truncate(a,4)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1.223,default); +insert into t1 values (1.999,default); +insert into t1 values (1.999,default); +insert into t1 values (122,default); +select * from t1; +a b +1.223 1.223 +1.999 1.999 +1.999 1.999 +122 122 +drop table t1; +set sql_warnings = 0; +# Unary - +set sql_warnings = 1; +create table t1 (a double, b double as (-a)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` double AS (-a) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (-1,default); +select * from t1; +a b +1 -1 +-1 1 +drop table t1; +set sql_warnings = 0; +# +# STRING FUNCTIONS +# +# ASCII() +set sql_warnings = 1; +create table t1 (a char(2), b int as (ascii(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` char(2) DEFAULT NULL, + `b` int(11) AS (ascii(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2',default); +insert into t1 values (2,default); +insert into t1 values ('dx',default); +select * from t1; +a b +2 50 +2 50 +dx 100 +drop table t1; +set sql_warnings = 0; +# BIN() +set sql_warnings = 1; +create table t1 (a int, b varchar(10) as (bin(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` varchar(10) AS (bin(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (12,default); +select * from t1; +a b +12 1100 +drop table t1; +set sql_warnings = 0; +# BIT_LENGTH() +set sql_warnings = 1; +create table t1 (a varchar(10), b long as (bit_length(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` mediumtext AS (bit_length(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('text',default); +select * from t1; +a b +text 32 +drop table t1; +set sql_warnings = 0; +# CHAR_LENGTH() +set sql_warnings = 1; +create table t1 (a varchar(10), b long as (char_length(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` mediumtext AS (char_length(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('text',default); +select * from t1; +a b +text 4 +drop table t1; +set sql_warnings = 0; +# CHAR() +set sql_warnings = 1; +create table t1 (a int, b int, c varbinary(10) as (char(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` varbinary(10) AS (char(a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (77,121,default); +select * from t1; +a b c +77 121 My +drop table t1; +set sql_warnings = 0; +# CHARACTER_LENGTH() +set sql_warnings = 1; +create table t1 (a varchar(10), b long as (character_length(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` mediumtext AS (character_length(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('text',default); +select * from t1; +a b +text 4 +drop table t1; +set sql_warnings = 0; +# CONCAT_WS() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c varchar(20) as (concat_ws(',',a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` varchar(20) AS (concat_ws(',',a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('value1','value2',default); +select * from t1; +a b c +value1 value2 value1,value2 +drop table t1; +set sql_warnings = 0; +# CONCAT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c varchar(20) as (concat(a,',',b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` varchar(20) AS (concat(a,',',b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('value1','value2',default); +select * from t1; +a b c +value1 value2 value1,value2 +drop table t1; +set sql_warnings = 0; +# ELT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c int, d varchar(10) as (elt(c,a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` int(11) DEFAULT NULL, + `d` varchar(10) AS (elt(c,a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('value1','value2',1,default); +insert into t1 values ('value1','value2',2,default); +select * from t1; +a b c d +value1 value2 1 value1 +value1 value2 2 value2 +drop table t1; +set sql_warnings = 0; +# EXPORT_SET() +set sql_warnings = 1; +create table t1 (a int, b varchar(10) as (export_set(a,'1','0','',10))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` varchar(10) AS (export_set(a,'1','0','',10)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (6,default); +select * from t1; +a b +6 0110000000 +drop table t1; +set sql_warnings = 0; +# FIELD() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c int as (field('aa',a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` int(11) AS (field('aa',a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('aa','bb',default); +insert into t1 values ('bb','aa',default); +select * from t1; +a b c +aa bb 1 +bb aa 2 +drop table t1; +set sql_warnings = 0; +# FIND_IN_SET() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c int as (find_in_set(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` int(11) AS (find_in_set(a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('aa','aa,bb,cc',default); +insert into t1 values ('aa','bb,aa,cc',default); +select * from t1; +a b c +aa aa,bb,cc 1 +aa bb,aa,cc 2 +drop table t1; +set sql_warnings = 0; +# FORMAT() +set sql_warnings = 1; +create table t1 (a double, b varchar(20) as (format(a,2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` double DEFAULT NULL, + `b` varchar(20) AS (format(a,2)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (12332.123456,default); +select * from t1; +a b +12332.123456 12,332.12 +drop table t1; +set sql_warnings = 0; +# HEX() +set sql_warnings = 1; +create table t1 (a int, b varchar(10) as (hex(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` varchar(10) AS (hex(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (17,default); +select * from t1; +a b +17 11 +drop table t1; +set sql_warnings = 0; +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (hex(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (hex(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc 616263 +drop table t1; +set sql_warnings = 0; +# INSERT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c varchar(20) as (insert(a,length(a),length(b),b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` varchar(20) AS (insert(a,length(a),length(b),b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('start,','end',default); +select * from t1; +a b c +start, end startend +drop table t1; +set sql_warnings = 0; +# INSTR() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c int as (instr(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` int(11) AS (instr(a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar,','bar',default); +insert into t1 values ('xbar,','foobar',default); +select * from t1; +a b c +foobarbar, bar 4 +xbar, foobar 0 +drop table t1; +set sql_warnings = 0; +# LCASE() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (lcase(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (lcase(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL mysql +drop table t1; +set sql_warnings = 0; +# LEFT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(5) as (left(a,5))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(5) AS (left(a,5)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar',default); +select * from t1; +a b +foobarbar fooba +drop table t1; +set sql_warnings = 0; +# LENGTH() +set sql_warnings = 1; +create table t1 (a varchar(10), b int as (length(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` int(11) AS (length(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('text',default); +select * from t1; +a b +text 4 +drop table t1; +set sql_warnings = 0; +# LIKE +set sql_warnings = 1; +create table t1 (a varchar(10), b bool as (a like 'H%!o' escape '!')); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` tinyint(1) AS (a like 'H%!o' escape '!') VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +insert into t1 values ('MySQL',default); +select * from t1; +a b +Hello 1 +MySQL 0 +drop table t1; +set sql_warnings = 0; +# LOCATE() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (locate('bar',a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (locate('bar',a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar',default); +select * from t1; +a b +foobarbar 4 +drop table t1; +set sql_warnings = 0; +# LOWER() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (lower(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (lower(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL mysql +drop table t1; +set sql_warnings = 0; +# LPAD() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (lpad(a,4,' '))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (lpad(a,4,' ')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +insert into t1 values ('M',default); +select * from t1; +a b +MySQL MySQ +M M +drop table t1; +set sql_warnings = 0; +# LTRIM() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (ltrim(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (ltrim(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (' MySQL',default); +insert into t1 values ('MySQL',default); +select * from t1; +a b + MySQL MySQL +MySQL MySQL +drop table t1; +set sql_warnings = 0; +# MAKE_SET() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c int, d varchar(30) as (make_set(c,a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` int(11) DEFAULT NULL, + `d` varchar(30) AS (make_set(c,a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('a','b',1,default); +insert into t1 values ('a','b',3,default); +select * from t1; +a b c d +a b 1 a +a b 3 a,b +drop table t1; +set sql_warnings = 0; +# MID() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (mid(a,1,2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (mid(a,1,2)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar',default); +select * from t1; +a b +foobarbar fo +drop table t1; +set sql_warnings = 0; +# NOT LIKE +set sql_warnings = 1; +create table t1 (a varchar(10), b bool as (a not like 'H%o')); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` tinyint(1) AS (a not like 'H%o') VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +insert into t1 values ('MySQL',default); +select * from t1; +a b +Hello 0 +MySQL 1 +drop table t1; +set sql_warnings = 0; +# NOT REGEXP +set sql_warnings = 1; +create table t1 (a varchar(10), b bool as (a not regexp 'H.+o')); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` tinyint(1) AS (a not regexp 'H.+o') VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +insert into t1 values ('hello',default); +select * from t1; +a b +Hello 0 +hello 0 +drop table t1; +set sql_warnings = 0; +# OCTET_LENGTH() +set sql_warnings = 1; +create table t1 (a varchar(10), b int as (octet_length(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` int(11) AS (octet_length(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('text',default); +select * from t1; +a b +text 4 +drop table t1; +set sql_warnings = 0; +# ORD() +set sql_warnings = 1; +create table t1 (a varchar(10), b long as (ord(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` mediumtext AS (ord(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2',default); +select * from t1; +a b +2 50 +drop table t1; +set sql_warnings = 0; +# POSITION() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (position('bar' in a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (position('bar' in a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar',default); +select * from t1; +a b +foobarbar 4 +drop table t1; +set sql_warnings = 0; +# QUOTE() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (quote(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (quote(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Don\'t',default); +select * from t1; +a b +Don't 'Don\'t' +drop table t1; +set sql_warnings = 0; +# REGEXP() +set sql_warnings = 1; +create table t1 (a varchar(10), b bool as (a regexp 'H.+o')); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` tinyint(1) AS (a regexp 'H.+o') VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +insert into t1 values ('hello',default); +select * from t1; +a b +Hello 1 +hello 1 +drop table t1; +set sql_warnings = 0; +# REPEAT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(30) as (repeat(a,3))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(30) AS (repeat(a,3)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL MySQLMySQLMySQL +drop table t1; +set sql_warnings = 0; +# REPLACE() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(30) as (replace(a,'aa','bb'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(30) AS (replace(a,'aa','bb')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('maa',default); +select * from t1; +a b +maa mbb +drop table t1; +set sql_warnings = 0; +# REVERSE() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(30) as (reverse(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(30) AS (reverse(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('maa',default); +select * from t1; +a b +maa aam +drop table t1; +set sql_warnings = 0; +# RIGHT() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (right(a,4))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (right(a,4)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('foobarbar',default); +select * from t1; +a b +foobarbar rbar +drop table t1; +set sql_warnings = 0; +# RLIKE() +set sql_warnings = 1; +create table t1 (a varchar(10), b bool as (a rlike 'H.+o')); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` tinyint(1) AS (a rlike 'H.+o') VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +insert into t1 values ('MySQL',default); +select * from t1; +a b +Hello 1 +MySQL 0 +drop table t1; +set sql_warnings = 0; +# RPAD() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (rpad(a,4,'??'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (rpad(a,4,'??')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('He',default); +select * from t1; +a b +He He?? +drop table t1; +set sql_warnings = 0; +# RTRIM(); +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (rtrim(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (rtrim(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello ',default); +select * from t1; +a b +Hello Hello +drop table t1; +set sql_warnings = 0; +# SOUNDEX() +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(20) as (soundex(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(20) AS (soundex(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +select * from t1; +a b +Hello H400 +drop table t1; +set sql_warnings = 0; +# SOUNDS LIKE +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a sounds like b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a sounds like b) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello','Hello',default); +insert into t1 values ('Hello','MySQL',default); +insert into t1 values ('Hello','hello',default); +select * from t1; +a b c +Hello Hello 1 +Hello MySQL 0 +Hello hello 1 +drop table t1; +set sql_warnings = 0; +# SPACE() +set sql_warnings = 1; +create table t1 (a varchar(5), b varchar(10) as (concat(a,space(5)))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(5) DEFAULT NULL, + `b` varchar(10) AS (concat(a,space(5))) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello', default); +select * from t1; +a b +Hello Hello +drop table t1; +set sql_warnings = 0; +# STRCMP() +set sql_warnings = 1; +create table t1 (a varchar(9), b varchar(9), c tinyint(1) as (strcmp(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(9) DEFAULT NULL, + `b` varchar(9) DEFAULT NULL, + `c` tinyint(1) AS (strcmp(a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello','Hello', default); +insert into t1 values ('Hello','Hello1', default); +select * from t1; +a b c +Hello Hello 0 +Hello Hello1 -1 +drop table t1; +set sql_warnings = 0; +# SUBSTR() +set sql_warnings = 1; +create table t1 (a varchar(5), b varchar(10) as (substr(a,2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(5) DEFAULT NULL, + `b` varchar(10) AS (substr(a,2)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +select * from t1; +a b +Hello ello +drop table t1; +set sql_warnings = 0; +# SUBSTRING_INDEX() +set sql_warnings = 1; +create table t1 (a varchar(15), b varchar(10) as (substring_index(a,'.',2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(15) DEFAULT NULL, + `b` varchar(10) AS (substring_index(a,'.',2)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('www.mysql.com',default); +select * from t1; +a b +www.mysql.com www.mysql +drop table t1; +set sql_warnings = 0; +# SUBSTRING() +set sql_warnings = 1; +create table t1 (a varchar(5), b varchar(10) as (substring(a from 2 for 2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(5) DEFAULT NULL, + `b` varchar(10) AS (substring(a from 2 for 2)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('Hello',default); +select * from t1; +a b +Hello el +drop table t1; +set sql_warnings = 0; +# TRIM() +set sql_warnings = 1; +create table t1 (a varchar(15), b varchar(10) as (trim(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(15) DEFAULT NULL, + `b` varchar(10) AS (trim(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (' aa ',default); +select * from t1; +a b + aa aa +drop table t1; +set sql_warnings = 0; +# UCASE() +set sql_warnings = 1; +create table t1 (a varchar(5), b varchar(10) as (ucase(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(5) DEFAULT NULL, + `b` varchar(10) AS (ucase(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL MYSQL +drop table t1; +set sql_warnings = 0; +# UNHEX() +set sql_warnings = 1; +create table t1 (a varchar(15), b varchar(10) as (unhex(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(15) DEFAULT NULL, + `b` varchar(10) AS (unhex(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('4D7953514C',default); +select * from t1; +a b +4D7953514C MySQL +drop table t1; +set sql_warnings = 0; +# UPPER() +set sql_warnings = 1; +create table t1 (a varchar(5), b varchar(10) as (upper(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(5) DEFAULT NULL, + `b` varchar(10) AS (upper(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL MYSQL +drop table t1; +set sql_warnings = 0; +# +# CONTROL FLOW FUNCTIONS +# +# CASE +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(16) as (case a when NULL then 'asd' when 'b' then 'B' else a end)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(16) AS (case a when NULL then 'asd' when 'b' then 'B' else a end) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (NULL,default); +insert into t1 values ('b',default); +insert into t1 values ('c',default); +select * from t1; +a b +NULL NULL +b B +c c +drop table t1; +set sql_warnings = 0; +# IF +set sql_warnings = 1; +create table t1 (a int, b int, c int as (if(a=1,a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` int(11) AS (if(a=1,a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,2,default); +insert into t1 values (3,4,default); +select * from t1; +a b c +1 2 1 +3 4 4 +drop table t1; +set sql_warnings = 0; +# IFNULL +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c varchar(10) as (ifnull(a,'DEFAULT'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` varchar(10) AS (ifnull(a,'DEFAULT')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (NULL,'adf',default); +insert into t1 values ('a','adf',default); +select * from t1; +a b c +NULL adf DEFAULT +a adf a +drop table t1; +set sql_warnings = 0; +# NULLIF +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10) as (nullif(a,'DEFAULT'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) AS (nullif(a,'DEFAULT')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('DEFAULT',default); +insert into t1 values ('a',default); +select * from t1; +a b +DEFAULT NULL +a a +drop table t1; +set sql_warnings = 0; +# +# OPERATORS +# +# AND, && +set sql_warnings = 1; +create table t1 (a int, b bool as (a>0 && a<2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` tinyint(1) AS (a>0 && a<2) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (-1,default); +insert into t1 values (1,default); +select * from t1; +a b +-1 0 +1 1 +drop table t1; +set sql_warnings = 0; +# BETWEEN ... AND ... +set sql_warnings = 1; +create table t1 (a int, b bool as (a between 0 and 2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` tinyint(1) AS (a between 0 and 2) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (-1,default); +insert into t1 values (1,default); +select * from t1; +a b +-1 0 +1 1 +drop table t1; +set sql_warnings = 0; +# BINARY +set sql_warnings = 1; +create table t1 (a varchar(10), b varbinary(10) as (binary a)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varbinary(10) AS (binary a) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('11',default); +insert into t1 values (1,default); +select * from t1; +a b +11 11 +1 1 +drop table t1; +set sql_warnings = 0; +# & +set sql_warnings = 1; +create table t1 (a int, b int as (a & 5)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a & 5) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (0,default); +select * from t1; +a b +1 1 +0 0 +drop table t1; +set sql_warnings = 0; +# ~ +set sql_warnings = 1; +create table t1 (a int, b int as (~a)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (~a) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +Warnings: +Warning 1264 Out of range value for column 'b' at row 1 +select * from t1; +a b +1 2147483647 +drop table t1; +set sql_warnings = 0; +# | +set sql_warnings = 1; +create table t1 (a int, b int as (a | 5)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a | 5) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (0,default); +insert into t1 values (2,default); +select * from t1; +a b +1 5 +0 5 +2 7 +drop table t1; +set sql_warnings = 0; +# ^ +set sql_warnings = 1; +create table t1 (a int, b int as (a ^ 5)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a ^ 5) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (0,default); +insert into t1 values (2,default); +select * from t1; +a b +1 4 +0 5 +2 7 +drop table t1; +set sql_warnings = 0; +# DIV +set sql_warnings = 1; +create table t1 (a int, b int as (a div 5)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a div 5) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (7,default); +select * from t1; +a b +1 0 +7 1 +drop table t1; +set sql_warnings = 0; +# <=> +set sql_warnings = 1; +create table t1 (a int, b int, c bool as (a <=> b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` tinyint(1) AS (a <=> b) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,1,default); +insert into t1 values (NULL,NULL,default); +insert into t1 values (1,NULL,default); +select * from t1; +a b c +1 1 1 +NULL NULL 1 +1 NULL 0 +drop table t1; +set sql_warnings = 0; +# = +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a=b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a=b) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('a','b',default); +insert into t1 values ('a','a',default); +select * from t1; +a b c +a b 0 +a a 1 +drop table t1; +set sql_warnings = 0; +# >= +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a >= b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a >= b) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('a','b',default); +insert into t1 values ('a','a',default); +select * from t1; +a b c +a b 0 +a a 1 +drop table t1; +set sql_warnings = 0; +# > +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a > b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a > b) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('a','b',default); +insert into t1 values ('a','a',default); +select * from t1; +a b c +a b 0 +a a 0 +drop table t1; +set sql_warnings = 0; +# IS NOT NULL +set sql_warnings = 1; +create table t1 (a int, b bool as (a is not null)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` tinyint(1) AS (a is not null) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (NULL,default); +select * from t1; +a b +1 1 +NULL 0 +drop table t1; +set sql_warnings = 0; +# IS NULL +set sql_warnings = 1; +create table t1 (a int, b bool as (a is null)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` tinyint(1) AS (a is null) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (NULL,default); +select * from t1; +a b +1 0 +NULL 1 +drop table t1; +set sql_warnings = 0; +# << +set sql_warnings = 1; +create table t1 (a int, b int as (a << 2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a << 2) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (3,default); +select * from t1; +a b +1 4 +3 12 +drop table t1; +set sql_warnings = 0; +# <= +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a <= b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a <= b) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('b','a',default); +insert into t1 values ('b','b',default); +insert into t1 values ('b','c',default); +select * from t1; +a b c +b a 0 +b b 1 +b c 1 +drop table t1; +set sql_warnings = 0; +# < +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a < b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a < b) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('b','a',default); +insert into t1 values ('b','b',default); +insert into t1 values ('b','c',default); +select * from t1; +a b c +b a 0 +b b 0 +b c 1 +drop table t1; +set sql_warnings = 0; +# NOT BETWEEN ... AND ... +set sql_warnings = 1; +create table t1 (a int, b bool as (a not between 0 and 2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` tinyint(1) AS (a not between 0 and 2) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (-1,default); +insert into t1 values (1,default); +select * from t1; +a b +-1 1 +1 0 +drop table t1; +set sql_warnings = 0; +# <> +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a <> b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a <> b) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('b','a',default); +insert into t1 values ('b','b',default); +insert into t1 values ('b','c',default); +select * from t1; +a b c +b a 1 +b b 0 +b c 1 +drop table t1; +set sql_warnings = 0; +# != +set sql_warnings = 1; +create table t1 (a varchar(10), b varchar(10), c bool as (a != b)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(10) DEFAULT NULL, + `b` varchar(10) DEFAULT NULL, + `c` tinyint(1) AS (a != b) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('b','a',default); +insert into t1 values ('b','b',default); +insert into t1 values ('b','c',default); +select * from t1; +a b c +b a 1 +b b 0 +b c 1 +drop table t1; +set sql_warnings = 0; +# ||, OR +set sql_warnings = 1; +create table t1 (a int, b int as (a>5 || a<3)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a>5 || a<3) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (4,default); +select * from t1; +a b +1 1 +4 0 +drop table t1; +set sql_warnings = 0; +# >> +set sql_warnings = 1; +create table t1 (a int, b int as (a >> 2)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a >> 2) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (8,default); +insert into t1 values (3,default); +select * from t1; +a b +8 2 +3 0 +drop table t1; +set sql_warnings = 0; +# XOR +set sql_warnings = 1; +create table t1 (a int, b int as (a xor 5)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a xor 5) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (0,default); +insert into t1 values (1,default); +insert into t1 values (2,default); +select * from t1; +a b +0 1 +1 0 +2 0 +drop table t1; +set sql_warnings = 0; +# +# DATE AND TIME FUNCTIONS +# +# ADDDATE() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (adddate(a,interval 1 month))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (adddate(a,interval 1 month)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-09-30 00:00:00 +drop table t1; +set sql_warnings = 0; +# ADDTIME() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (addtime(a,'02:00:00'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (addtime(a,'02:00:00')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-08-31 02:00:00 +drop table t1; +set sql_warnings = 0; +# CONVERT_TZ() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (convert_tz(a,'MET','UTC'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (convert_tz(a,'MET','UTC')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-08-30 22:00:00 +drop table t1; +set sql_warnings = 0; +# DATE_ADD() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (date_add(a,interval 1 month))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (date_add(a,interval 1 month)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-09-30 00:00:00 +drop table t1; +set sql_warnings = 0; +# DATE_FORMAT() +set sql_warnings = 1; +create table t1 (a datetime, b varchar(64) as (date_format(a,'%W %M %D'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` varchar(64) AS (date_format(a,'%W %M %D')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 Sunday August 31st +drop table t1; +set sql_warnings = 0; +# DATE_SUB() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (date_sub(a,interval 1 month))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (date_sub(a,interval 1 month)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-07-31 00:00:00 +drop table t1; +set sql_warnings = 0; +# DATE() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (date(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (date(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31 02:00:00',default); +select * from t1; +a b +2008-08-31 02:00:00 2008-08-31 00:00:00 +drop table t1; +set sql_warnings = 0; +# DATEDIFF() +set sql_warnings = 1; +create table t1 (a datetime, b long as (datediff(a,'2000-01-01'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` mediumtext AS (datediff(a,'2000-01-01')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 3165 +drop table t1; +set sql_warnings = 0; +# DAY() +set sql_warnings = 1; +create table t1 (a datetime, b int as (day(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (day(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 31 +drop table t1; +set sql_warnings = 0; +# DAYNAME() +set sql_warnings = 1; +create table t1 (a datetime, b varchar(10) as (dayname(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` varchar(10) AS (dayname(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 Sunday +drop table t1; +set sql_warnings = 0; +# DAYOFMONTH() +set sql_warnings = 1; +create table t1 (a datetime, b int as (dayofmonth(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (dayofmonth(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 31 +drop table t1; +set sql_warnings = 0; +# DAYOFWEEK() +set sql_warnings = 1; +create table t1 (a datetime, b int as (dayofweek(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (dayofweek(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 1 +drop table t1; +set sql_warnings = 0; +# DAYOFYEAR() +set sql_warnings = 1; +create table t1 (a datetime, b int as (dayofyear(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (dayofyear(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 244 +drop table t1; +set sql_warnings = 0; +# EXTRACT +set sql_warnings = 1; +create table t1 (a datetime, b int as (extract(year from a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (extract(year from a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008 +drop table t1; +set sql_warnings = 0; +# FROM_DAYS() +set sql_warnings = 1; +create table t1 (a long, b datetime as (from_days(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` mediumtext, + `b` datetime AS (from_days(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (730669,default); +select * from t1; +a b +730669 2000-07-03 00:00:00 +drop table t1; +set sql_warnings = 0; +# FROM_UNIXTIME() +set time_zone='UTC'; +set sql_warnings = 1; +create table t1 (a long, b datetime as (from_unixtime(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` mediumtext, + `b` datetime AS (from_unixtime(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1196440219,default); +select * from t1; +a b +1196440219 2007-11-30 16:30:19 +drop table t1; +set sql_warnings = 0; +# GET_FORMAT() +set sql_warnings = 1; +create table t1 (a datetime, b varchar(32) as (date_format(a,get_format(DATE,'EUR')))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` varchar(32) AS (date_format(a,get_format(DATE,'EUR'))) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 31.08.2008 +drop table t1; +set sql_warnings = 0; +# HOUR() +set sql_warnings = 1; +create table t1 (a time, b long as (hour(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` time DEFAULT NULL, + `b` mediumtext AS (hour(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('10:05:03',default); +select * from t1; +a b +10:05:03 10 +drop table t1; +set sql_warnings = 0; +# LAST_DAY() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (last_day(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (last_day(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2003-02-05',default); +insert into t1 values ('2003-02-32',default); +Warnings: +Warning 1264 Out of range value for column 'a' at row 1 +select * from t1; +a b +2003-02-05 00:00:00 2003-02-28 00:00:00 +0000-00-00 00:00:00 NULL +drop table t1; +set sql_warnings = 0; +# MAKEDATE() +set sql_warnings = 1; +create table t1 (a int, b datetime as (makedate(a,1))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` datetime AS (makedate(a,1)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (2001,default); +select * from t1; +a b +2001 2001-01-01 00:00:00 +drop table t1; +set sql_warnings = 0; +# MAKETIME() +set sql_warnings = 1; +create table t1 (a int, b time as (maketime(a,1,3))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` time AS (maketime(a,1,3)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (12,default); +select * from t1; +a b +12 12:01:03 +drop table t1; +set sql_warnings = 0; +# MICROSECOND() +set sql_warnings = 1; +create table t1 (a datetime, b long as (microsecond(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` mediumtext AS (microsecond(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2009-12-31 12:00:00.123456',default); +insert into t1 values ('2009-12-31 23:59:59.000010',default); +select * from t1; +a b +2009-12-31 12:00:00 0 +2009-12-31 23:59:59 0 +drop table t1; +set sql_warnings = 0; +# MINUTE() +set sql_warnings = 1; +create table t1 (a datetime, b int as (minute(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (minute(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2009-12-31 23:59:59.000010',default); +select * from t1; +a b +2009-12-31 23:59:59 59 +drop table t1; +set sql_warnings = 0; +# MONTH() +set sql_warnings = 1; +create table t1 (a datetime, b int as (month(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (month(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2009-12-31 23:59:59.000010',default); +select * from t1; +a b +2009-12-31 23:59:59 12 +drop table t1; +set sql_warnings = 0; +# MONTHNAME() +set sql_warnings = 1; +create table t1 (a datetime, b varchar(16) as (monthname(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` varchar(16) AS (monthname(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2009-12-31 23:59:59.000010',default); +select * from t1; +a b +2009-12-31 23:59:59 December +drop table t1; +set sql_warnings = 0; +# PERIOD_ADD() +set sql_warnings = 1; +create table t1 (a int, b int as (period_add(a,2))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (period_add(a,2)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (200801,default); +select * from t1; +a b +200801 200803 +drop table t1; +set sql_warnings = 0; +# PERIOD_DIFF() +set sql_warnings = 1; +create table t1 (a int, b int, c int as (period_diff(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` int(11) AS (period_diff(a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (200802,200703,default); +select * from t1; +a b c +200802 200703 11 +drop table t1; +set sql_warnings = 0; +# QUARTER() +set sql_warnings = 1; +create table t1 (a datetime, b int as (quarter(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (quarter(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 3 +drop table t1; +set sql_warnings = 0; +# SEC_TO_TIME() +set sql_warnings = 1; +create table t1 (a long, b time as (sec_to_time(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` mediumtext, + `b` time AS (sec_to_time(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (2378,default); +select * from t1; +a b +2378 00:39:38 +drop table t1; +set sql_warnings = 0; +# SECOND() +set sql_warnings = 1; +create table t1 (a datetime, b int as (second(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (second(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('10:05:03',default); +select * from t1; +a b +2010-05-03 00:00:00 0 +drop table t1; +set sql_warnings = 0; +# STR_TO_DATE() +set sql_warnings = 1; +create table t1 (a varchar(64), b datetime as (str_to_date(a,'%m/%d/%Y'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(64) DEFAULT NULL, + `b` datetime AS (str_to_date(a,'%m/%d/%Y')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('04/30/2004',default); +select * from t1; +a b +04/30/2004 2004-04-30 00:00:00 +drop table t1; +set sql_warnings = 0; +# SUBDATE() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (subdate(a,interval 1 month))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (subdate(a,interval 1 month)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-07-31 00:00:00 +drop table t1; +set sql_warnings = 0; +# SUBTIME() +set sql_warnings = 1; +create table t1 (a datetime, b datetime as (subtime(a,'02:00:00'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime AS (subtime(a,'02:00:00')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31',default); +select * from t1; +a b +2008-08-31 00:00:00 2008-08-30 22:00:00 +drop table t1; +set sql_warnings = 0; +# TIME_FORMAT() +set sql_warnings = 1; +create table t1 (a datetime, b varchar(32) as (time_format(a,'%r'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` varchar(32) AS (time_format(a,'%r')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31 02:03:04',default); +select * from t1; +a b +2008-08-31 02:03:04 02:03:04 AM +drop table t1; +set sql_warnings = 0; +# TIME_TO_SEC() +set sql_warnings = 1; +create table t1 (a time, b long as (time_to_sec(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` time DEFAULT NULL, + `b` mediumtext AS (time_to_sec(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('22:23:00',default); +select * from t1; +a b +22:23:00 80580 +drop table t1; +set sql_warnings = 0; +# TIME() +set sql_warnings = 1; +create table t1 (a datetime, b time as (time(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` time AS (time(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-08-31 02:03:04',default); +select * from t1; +a b +2008-08-31 02:03:04 02:03:04 +drop table t1; +set sql_warnings = 0; +# TIMEDIFF() +set sql_warnings = 1; +create table t1 (a datetime, b datetime, c long as (timediff(a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` datetime DEFAULT NULL, + `c` mediumtext AS (timediff(a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-12-31 23:59:59.000001','2008-12-30 01:01:01.000002',default); +select * from t1; +a b c +2008-12-31 23:59:59 2008-12-30 01:01:01 46:58:58 +drop table t1; +set sql_warnings = 0; +# TIMESTAMP() +set sql_warnings = 1; +create table t1 (a datetime, b timestamp as (timestamp(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` timestamp AS (timestamp(a)) VIRTUAL NULL ON UPDATE CURRENT_TIMESTAMP +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-12-31',default); +select * from t1; +a b +2008-12-31 00:00:00 2008-12-31 00:00:00 +drop table t1; +set sql_warnings = 0; +# TIMESTAMPADD() +set sql_warnings = 1; +create table t1 (a datetime, b timestamp as (timestampadd(minute,1,a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` timestamp AS (timestampadd(minute,1,a)) VIRTUAL NULL ON UPDATE CURRENT_TIMESTAMP +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2003-01-02',default); +select * from t1; +a b +2003-01-02 00:00:00 2003-01-02 00:01:00 +drop table t1; +set sql_warnings = 0; +# TIMESTAMPDIFF() +set sql_warnings = 1; +create table t1 (a timestamp, b timestamp, c long as (timestampdiff(MONTH, a,b))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `b` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00', + `c` mediumtext AS (timestampdiff(MONTH, a,b)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2003-02-01','2003-05-01',default); +select * from t1; +a b c +2003-02-01 00:00:00 2003-05-01 00:00:00 3 +drop table t1; +set sql_warnings = 0; +# TO_DAYS() +set sql_warnings = 1; +create table t1 (a datetime, b long as (to_days(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` mediumtext AS (to_days(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2007-10-07',default); +select * from t1; +a b +2007-10-07 00:00:00 733321 +drop table t1; +set sql_warnings = 0; +# WEEK() +set sql_warnings = 1; +create table t1 (a datetime, b int as (week(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (week(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-09-01',default); +select * from t1; +a b +2008-09-01 00:00:00 35 +drop table t1; +set sql_warnings = 0; +# WEEKDAY() +set sql_warnings = 1; +create table t1 (a datetime, b int as (weekday(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (weekday(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-09-01',default); +select * from t1; +a b +2008-09-01 00:00:00 0 +drop table t1; +set sql_warnings = 0; +# WEEKOFYEAR() +set sql_warnings = 1; +create table t1 (a datetime, b int as (weekofyear(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (weekofyear(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-09-01',default); +select * from t1; +a b +2008-09-01 00:00:00 36 +drop table t1; +set sql_warnings = 0; +# YEAR() +set sql_warnings = 1; +create table t1 (a datetime, b int as (year(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (year(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-09-01',default); +select * from t1; +a b +2008-09-01 00:00:00 2008 +drop table t1; +set sql_warnings = 0; +# YEARWEEK() +set sql_warnings = 1; +create table t1 (a datetime, b int as (yearweek(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` datetime DEFAULT NULL, + `b` int(11) AS (yearweek(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('2008-09-01',default); +select * from t1; +a b +2008-09-01 00:00:00 200835 +drop table t1; +set sql_warnings = 0; +# +# FULL TEXT SEARCH FUNCTIONS +# +# None. +# +# CAST FUNCTIONS AND OPERATORS +# +# CAST() +set sql_warnings = 1; +create table t1 (a int, b long as (cast(a as unsigned))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` mediumtext AS (cast(a as unsigned)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (-1,default); +select * from t1; +a b +1 1 +-1 18446744073709551615 +drop table t1; +set sql_warnings = 0; +# Convert() +set sql_warnings = 1; +create table t1 (a int, b long as (convert(a,unsigned))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` mediumtext AS (convert(a,unsigned)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (1,default); +insert into t1 values (-1,default); +select * from t1; +a b +1 1 +-1 18446744073709551615 +drop table t1; +set sql_warnings = 0; +# +# XML FUNCTIONS +# +# None. +# +# OTHER FUNCTIONS +# +# AES_DECRYPT(), AES_ENCRYPT() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (aes_encrypt(aes_decrypt(a,'adf'),'adf'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (aes_encrypt(aes_decrypt(a,'adf'),'adf')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL NULL +drop table t1; +set sql_warnings = 0; +# BIT_COUNT() +set sql_warnings = 1; +create table t1 (a int, b int as (bit_count(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (bit_count(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values (5,default); +select * from t1; +a b +5 2 +drop table t1; +set sql_warnings = 0; +# CHARSET() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (charset(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (charset(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc latin1 +drop table t1; +set sql_warnings = 0; +# COERCIBILITY() +set sql_warnings = 1; +create table t1 (a varchar(1024), b int as (coercibility(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` int(11) AS (coercibility(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc 2 +drop table t1; +set sql_warnings = 0; +# COLLATION() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (collation(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (collation(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc latin1_swedish_ci +drop table t1; +set sql_warnings = 0; +# COMPRESS(), UNCOMPRESS() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (uncompress(compress(a)))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (uncompress(compress(a))) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL MySQL +drop table t1; +set sql_warnings = 0; +# ENCODE(), DECODE() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (decode(encode(a,'abc'),'abc'))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (decode(encode(a,'abc'),'abc')) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('MySQL',default); +select * from t1; +a b +MySQL MySQL +drop table t1; +set sql_warnings = 0; +# DEFAULT() +set sql_warnings = 1; +create table t1 (a varchar(1024) default 'aaa', b varchar(1024) as (ifnull(a,default(a)))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT 'aaa', + `b` varchar(1024) AS (ifnull(a,default(a))) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('any value',default); +select * from t1; +a b +any value any value +drop table t1; +set sql_warnings = 0; +# INET_ATON(), INET_NTOA() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (inet_ntoa(inet_aton(a)))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (inet_ntoa(inet_aton(a))) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('127.0.0.1',default); +select * from t1; +a b +127.0.0.1 127.0.0.1 +drop table t1; +set sql_warnings = 0; +# MD5() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varbinary(32) as (md5(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varbinary(32) AS (md5(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('testing',default); +select * from t1; +a b +testing ae2b1fca515949e5d54fb22b8ed95575 +drop table t1; +set sql_warnings = 0; +# OLD_PASSWORD() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (old_password(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (old_password(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('badpwd',default); +select * from t1; +a b +badpwd 7f84554057dd964b +drop table t1; +set sql_warnings = 0; +# PASSWORD() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (password(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (password(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('badpwd',default); +select * from t1; +a b +badpwd *AAB3E285149C0135D51A520E1940DD3263DC008C +drop table t1; +set sql_warnings = 0; +# SHA1() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (sha1(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (sha1(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc a9993e364706816aba3e25717850c26c9cd0d89d +drop table t1; +set sql_warnings = 0; +# SHA() +set sql_warnings = 1; +create table t1 (a varchar(1024), b varchar(1024) as (sha(a))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` varchar(1024) DEFAULT NULL, + `b` varchar(1024) AS (sha(a)) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('abc',default); +select * from t1; +a b +abc a9993e364706816aba3e25717850c26c9cd0d89d +drop table t1; +set sql_warnings = 0; +# UNCOMPRESSED_LENGTH() +set sql_warnings = 1; +create table t1 (a char, b varchar(1024) as (uncompressed_length(compress(repeat(a,30))))); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` char(1) DEFAULT NULL, + `b` varchar(1024) AS (uncompressed_length(compress(repeat(a,30)))) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +insert into t1 values ('a',default); +select * from t1; +a b +a 30 +drop table t1; +set sql_warnings = 0; diff --git a/mysql-test/suite/vcol/r/vcol_syntax.result b/mysql-test/suite/vcol/r/vcol_syntax.result new file mode 100644 index 00000000000..8515d790359 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_syntax.result @@ -0,0 +1,52 @@ +drop table if exists t1; +set @OLD_SQL_MODE=@@SESSION.SQL_MODE; +create table t1 (a int, b int generated always as (a+1)); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a+1) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +create table t1 (a int, b int as (a+1) virtual); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a+1) VIRTUAL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +create table t1 (a int, b int generated always as (a+1) persistent); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) AS (a+1) PERSISTENT +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +set session sql_mode='ORACLE'; +create table t1 (a int, b int as (a+1)); +show create table t1; +Table Create Table +t1 CREATE TABLE "t1" ( + "a" int(11) DEFAULT NULL, + "b" int(11) AS (a+1) VIRTUAL +) +drop table t1; +create table t1 (a int, b int generated always as (a+1) virtual); +show create table t1; +Table Create Table +t1 CREATE TABLE "t1" ( + "a" int(11) DEFAULT NULL, + "b" int(11) AS (a+1) VIRTUAL +) +drop table t1; +create table t1 (a int, b int as (a+1) persistent); +show create table t1; +Table Create Table +t1 CREATE TABLE "t1" ( + "a" int(11) DEFAULT NULL, + "b" int(11) AS (a+1) PERSISTENT +) +drop table t1; +set session sql_mode=@OLD_SQL_MODE; diff --git a/mysql-test/suite/vcol/r/vcol_trigger_sp_innodb.result b/mysql-test/suite/vcol/r/vcol_trigger_sp_innodb.result new file mode 100644 index 00000000000..e903bc4eafd --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_trigger_sp_innodb.result @@ -0,0 +1,87 @@ +SET @@session.storage_engine = 'InnoDB'; +create table t1 (a int, +b int as (a/10), +c int as (a/10) persistent); +create table t2 (a timestamp); +create trigger trg1 before insert on t1 for each row +begin +if (new.b < 10) then +set new.a:= 100; +set new.b:= 9; +set new.c:= 9; +end if; +if (new.c > 50) then +set new.a:= 500; +end if; +end| +create trigger trg2 after insert on t1 for each row +begin +if (new.b >= 60) then +insert into t2 values (now()); +end if; +end| +create function f1() +returns int +begin +declare sum1 int default '0'; +declare cur1 cursor for select sum(b) from t1; +open cur1; +fetch cur1 into sum1; +close cur1; +return sum1; +end| +set sql_warnings = 1; +insert into t1 (a) values (200); +select * from t1; +a b c +200 20 20 +select * from t2; +a +insert into t1 (a) values (10); +select * from t1; +a b c +200 20 20 +100 10 10 +select * from t2; +a +insert into t1 (a) values (600); +select * from t1; +a b c +200 20 20 +100 10 10 +500 50 50 +select * from t2; +a +select f1(); +f1() +80 +set sql_warnings = 0; +drop trigger trg1; +drop trigger trg2; +drop table t2; +create procedure p1() +begin +declare i int default '0'; +create table t2 like t1; +insert into t2 (a) values (100), (200); +begin +declare cur1 cursor for select sum(c) from t2; +open cur1; +fetch cur1 into i; +close cur1; +if (i=30) then +insert into t1 values (300,default,default); +end if; +end; +end| +delete from t1; +call p1(); +select * from t2; +a b c +100 10 10 +200 20 20 +select * from t1; +a b c +300 30 30 +drop table t1,t2; +drop procedure p1; diff --git a/mysql-test/suite/vcol/r/vcol_trigger_sp_myisam.result b/mysql-test/suite/vcol/r/vcol_trigger_sp_myisam.result new file mode 100644 index 00000000000..c2a66d656b5 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_trigger_sp_myisam.result @@ -0,0 +1,87 @@ +SET @@session.storage_engine = 'MyISAM'; +create table t1 (a int, +b int as (a/10), +c int as (a/10) persistent); +create table t2 (a timestamp); +create trigger trg1 before insert on t1 for each row +begin +if (new.b < 10) then +set new.a:= 100; +set new.b:= 9; +set new.c:= 9; +end if; +if (new.c > 50) then +set new.a:= 500; +end if; +end| +create trigger trg2 after insert on t1 for each row +begin +if (new.b >= 60) then +insert into t2 values (now()); +end if; +end| +create function f1() +returns int +begin +declare sum1 int default '0'; +declare cur1 cursor for select sum(b) from t1; +open cur1; +fetch cur1 into sum1; +close cur1; +return sum1; +end| +set sql_warnings = 1; +insert into t1 (a) values (200); +select * from t1; +a b c +200 20 20 +select * from t2; +a +insert into t1 (a) values (10); +select * from t1; +a b c +200 20 20 +100 10 10 +select * from t2; +a +insert into t1 (a) values (600); +select * from t1; +a b c +200 20 20 +100 10 10 +500 50 50 +select * from t2; +a +select f1(); +f1() +80 +set sql_warnings = 0; +drop trigger trg1; +drop trigger trg2; +drop table t2; +create procedure p1() +begin +declare i int default '0'; +create table t2 like t1; +insert into t2 (a) values (100), (200); +begin +declare cur1 cursor for select sum(c) from t2; +open cur1; +fetch cur1 into i; +close cur1; +if (i=30) then +insert into t1 values (300,default,default); +end if; +end; +end| +delete from t1; +call p1(); +select * from t2; +a b c +100 10 10 +200 20 20 +select * from t1; +a b c +300 30 30 +drop table t1,t2; +drop procedure p1; diff --git a/mysql-test/suite/vcol/r/vcol_view_innodb.result b/mysql-test/suite/vcol/r/vcol_view_innodb.result new file mode 100644 index 00000000000..ae834722606 --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_view_innodb.result @@ -0,0 +1,276 @@ +SET @@session.storage_engine = 'InnoDB'; +create table t1 (a int not null, +b int as (-a), +c int as (-a) persistent); +insert into t1 (a) values (1), (1), (2), (2), (3); +create view v1 (d,e) as select abs(b), abs(c) from t1; +select d,e from v1; +d e +1 1 +1 1 +2 2 +2 2 +3 3 +select is_updatable from information_schema.views where table_name='v1'; +is_updatable +NO +explain extended select d,e from v1; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00 +Warnings: +Note 1003 select abs(`test`.`t1`.`b`) AS `d`,abs(`test`.`t1`.`c`) AS `e` from `test`.`t1` +create algorithm=temptable view v2 (d,e) as select abs(b), abs(c) from t1; +show create view v2; +View Create View character_set_client collation_connection +v2 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select abs(`t1`.`b`) AS `d`,abs(`t1`.`c`) AS `e` from `t1` latin1 latin1_swedish_ci +select d,e from v2; +d e +1 1 +1 1 +2 2 +2 2 +3 3 +explain extended select d,e from v2; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 5 100.00 +2 DERIVED t1 ALL NULL NULL NULL NULL 5 100.00 +Warnings: +Note 1003 select `v2`.`d` AS `d`,`v2`.`e` AS `e` from `test`.`v2` +create view v3 (d,e) as select d*2, e*2 from v1; +select * from v3; +d e +2 2 +2 2 +4 4 +4 4 +6 6 +explain extended select * from v3; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00 +Warnings: +Note 1003 select (abs(`test`.`t1`.`b`) * 2) AS `d`,(abs(`test`.`t1`.`c`) * 2) AS `e` from `test`.`t1` +drop view v1,v2,v3; +drop table t1; +create table t1 (a int not null, +b int as (-a), +c int as (-a) persistent); +insert into t1 (a) values (1), (2), (3), (1), (2), (3); +create view v1 as select distinct b from t1; +select * from v1; +b +-1 +-2 +-3 +explain select * from v1; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 3 +2 DERIVED t1 ALL NULL NULL NULL NULL 6 Using temporary +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +1 -1 -1 +2 -2 -2 +3 -3 -3 +drop view v1; +create view v1 as select distinct c from t1; +select * from v1; +c +-1 +-2 +-3 +explain select * from v1; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 3 +2 DERIVED t1 ALL NULL NULL NULL NULL 6 Using temporary +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +1 -1 -1 +2 -2 -2 +3 -3 -3 +drop view v1; +drop table t1; +create table t1 (a int not null, +b int as (-a), +c int as (-a) persistent); +insert into t1 (a) values (1), (2), (3), (4); +create view v1 as select b+1 from t1 order by 1 desc limit 2; +select * from v1; +b+1 +0 +-1 +explain select * from v1; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 +2 DERIVED t1 ALL NULL NULL NULL NULL 4 Using filesort +drop view v1; +create view v1 as select c+1 from t1 order by 1 desc limit 2; +select * from v1; +c+1 +0 +-1 +explain select * from v1; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 +2 DERIVED t1 ALL NULL NULL NULL NULL 4 Using filesort +drop view v1; +drop table t1; +create table t1 (a int, +b int, +c int as (-a), +d int as (-a) persistent, +primary key(a)); +insert into t1 (a,b) values (10,2), (20,3), (30,4), (40,5), (50,10); +create view v1 (a,e,f,g) as select a, b+1,c+1,d+1 from t1; +update v1 set a=a+e; +select * from v1; +a e f g +13 3 -12 -12 +24 4 -23 -23 +35 5 -34 -34 +46 6 -45 -45 +61 11 -60 -60 +select * from t1; +a b c d +13 2 -13 -13 +24 3 -24 -24 +35 4 -35 -35 +46 5 -46 -46 +61 10 -61 -61 +delete from v1; +select * from v1; +a e f g +select * from t1; +a b c d +insert into v1 (a,e) values (60,15); +ERROR HY000: The target table v1 of the INSERT is not insertable-into +drop table t1; +drop view v1; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent, +primary key(a)); +insert into t1 (a) values (1), (2), (3); +create view v1 (x,y,z) as select a,b,c from t1 where b < -1; +select t1.a, v1.x, v1.y, v1.z from t1 left join v1 on (t1.b= v1.y); +a x y z +1 NULL NULL NULL +2 2 -2 -2 +3 3 -3 -3 +drop view v1; +create view v1 (x,y,z) as select a,b,c from t1 where c < -1; +select t1.a, v1.x, v1.y, v1.z from t1 left join v1 on (t1.c= v1.z); +a x y z +1 NULL NULL NULL +2 2 -2 -2 +3 3 -3 -3 +drop view v1; +drop table t1; +create table t1 (a1 int, +b1 int as (-a1), +c1 int as (-a1) persistent); +create table t2 (a2 int, +b2 int as (-a2), +c2 int as (-a2) persistent); +insert into t1 (a1) values (1), (2); +insert into t2 (a2) values (2), (3); +create view v1 as select * from t1,t2 union all select * from t1,t2; +select * from v1; +a1 b1 c1 a2 b2 c2 +1 -1 -1 2 -2 -2 +2 -2 -2 2 -2 -2 +1 -1 -1 3 -3 -3 +2 -2 -2 3 -3 -3 +1 -1 -1 2 -2 -2 +2 -2 -2 2 -2 -2 +1 -1 -1 3 -3 -3 +2 -2 -2 3 -3 -3 +drop view v1; +drop table t1, t2; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent); +create table t2 like t1; +create view v1 as select a,b,c from t1; +create view v2 as select a,b,c from t2 where b in (select b from v1); +show create view v2; +View Create View character_set_client collation_connection +v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `t2`.`a` AS `a`,`t2`.`b` AS `b`,`t2`.`c` AS `c` from `t2` where `t2`.`b` in (select `v1`.`b` from `v1`) latin1 latin1_swedish_ci +drop view v2, v1; +drop table t1, t2; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent); +insert into t1 (a) values (1),(1),(2),(2),(3),(3); +create view v1 as select b from t1; +select distinct b from v1; +b +-1 +-2 +-3 +select distinct b from v1 limit 2; +b +-1 +-2 +select distinct b from t1 limit 2; +b +-1 +-2 +prepare stmt1 from "select distinct b from v1 limit 2"; +execute stmt1; +b +-1 +-2 +execute stmt1; +b +-1 +-2 +deallocate prepare stmt1; +drop view v1; +create view v1 as select c from t1; +select distinct c from v1; +c +-1 +-2 +-3 +select distinct c from v1 limit 2; +c +-1 +-2 +select distinct c from t1 limit 2; +c +-1 +-2 +prepare stmt1 from "select distinct c from v1 limit 2"; +execute stmt1; +c +-1 +-2 +execute stmt1; +c +-1 +-2 +deallocate prepare stmt1; +drop view v1; +drop table t1; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent); +create view v1 as select * from t1 where b > -2 && c >-2 with check option; +insert into v1 (a) values (1); +insert into v1 (a) values (3); +ERROR HY000: CHECK OPTION failed 'test.v1' +insert ignore into v1 (a) values (2),(3),(0); +Warnings: +Error 1369 CHECK OPTION failed 'test.v1' +Error 1369 CHECK OPTION failed 'test.v1' +select * from t1; +a b c +1 -1 -1 +0 0 0 +drop view v1; +drop table t1; diff --git a/mysql-test/suite/vcol/r/vcol_view_myisam.result b/mysql-test/suite/vcol/r/vcol_view_myisam.result new file mode 100644 index 00000000000..bd5999792ff --- /dev/null +++ b/mysql-test/suite/vcol/r/vcol_view_myisam.result @@ -0,0 +1,276 @@ +SET @@session.storage_engine = 'MyISAM'; +create table t1 (a int not null, +b int as (-a), +c int as (-a) persistent); +insert into t1 (a) values (1), (1), (2), (2), (3); +create view v1 (d,e) as select abs(b), abs(c) from t1; +select d,e from v1; +d e +1 1 +1 1 +2 2 +2 2 +3 3 +select is_updatable from information_schema.views where table_name='v1'; +is_updatable +NO +explain extended select d,e from v1; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00 +Warnings: +Note 1003 select abs(`test`.`t1`.`b`) AS `d`,abs(`test`.`t1`.`c`) AS `e` from `test`.`t1` +create algorithm=temptable view v2 (d,e) as select abs(b), abs(c) from t1; +show create view v2; +View Create View character_set_client collation_connection +v2 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select abs(`t1`.`b`) AS `d`,abs(`t1`.`c`) AS `e` from `t1` latin1 latin1_swedish_ci +select d,e from v2; +d e +1 1 +1 1 +2 2 +2 2 +3 3 +explain extended select d,e from v2; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 5 100.00 +2 DERIVED t1 ALL NULL NULL NULL NULL 5 100.00 +Warnings: +Note 1003 select `v2`.`d` AS `d`,`v2`.`e` AS `e` from `test`.`v2` +create view v3 (d,e) as select d*2, e*2 from v1; +select * from v3; +d e +2 2 +2 2 +4 4 +4 4 +6 6 +explain extended select * from v3; +id select_type table type possible_keys key key_len ref rows filtered Extra +1 SIMPLE t1 ALL NULL NULL NULL NULL 5 100.00 +Warnings: +Note 1003 select (abs(`test`.`t1`.`b`) * 2) AS `d`,(abs(`test`.`t1`.`c`) * 2) AS `e` from `test`.`t1` +drop view v1,v2,v3; +drop table t1; +create table t1 (a int not null, +b int as (-a), +c int as (-a) persistent); +insert into t1 (a) values (1), (2), (3), (1), (2), (3); +create view v1 as select distinct b from t1; +select * from v1; +b +-1 +-2 +-3 +explain select * from v1; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 3 +2 DERIVED t1 ALL NULL NULL NULL NULL 6 Using temporary +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +1 -1 -1 +2 -2 -2 +3 -3 -3 +drop view v1; +create view v1 as select distinct c from t1; +select * from v1; +c +-1 +-2 +-3 +explain select * from v1; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 3 +2 DERIVED t1 ALL NULL NULL NULL NULL 6 Using temporary +select * from t1; +a b c +1 -1 -1 +2 -2 -2 +3 -3 -3 +1 -1 -1 +2 -2 -2 +3 -3 -3 +drop view v1; +drop table t1; +create table t1 (a int not null, +b int as (-a), +c int as (-a) persistent); +insert into t1 (a) values (1), (2), (3), (4); +create view v1 as select b+1 from t1 order by 1 desc limit 2; +select * from v1; +b+1 +0 +-1 +explain select * from v1; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 +2 DERIVED t1 ALL NULL NULL NULL NULL 4 Using filesort +drop view v1; +create view v1 as select c+1 from t1 order by 1 desc limit 2; +select * from v1; +c+1 +0 +-1 +explain select * from v1; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY <derived2> ALL NULL NULL NULL NULL 2 +2 DERIVED t1 ALL NULL NULL NULL NULL 4 Using filesort +drop view v1; +drop table t1; +create table t1 (a int, +b int, +c int as (-a), +d int as (-a) persistent, +primary key(a)); +insert into t1 (a,b) values (10,2), (20,3), (30,4), (40,5), (50,10); +create view v1 (a,e,f,g) as select a, b+1,c+1,d+1 from t1; +update v1 set a=a+e; +select * from v1; +a e f g +13 3 -12 -12 +24 4 -23 -23 +35 5 -34 -34 +46 6 -45 -45 +61 11 -60 -60 +select * from t1; +a b c d +13 2 -13 -13 +24 3 -24 -24 +35 4 -35 -35 +46 5 -46 -46 +61 10 -61 -61 +delete from v1; +select * from v1; +a e f g +select * from t1; +a b c d +insert into v1 (a,e) values (60,15); +ERROR HY000: The target table v1 of the INSERT is not insertable-into +drop table t1; +drop view v1; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent, +primary key(a)); +insert into t1 (a) values (1), (2), (3); +create view v1 (x,y,z) as select a,b,c from t1 where b < -1; +select t1.a, v1.x, v1.y, v1.z from t1 left join v1 on (t1.b= v1.y); +a x y z +1 NULL NULL NULL +2 2 -2 -2 +3 3 -3 -3 +drop view v1; +create view v1 (x,y,z) as select a,b,c from t1 where c < -1; +select t1.a, v1.x, v1.y, v1.z from t1 left join v1 on (t1.c= v1.z); +a x y z +1 NULL NULL NULL +2 2 -2 -2 +3 3 -3 -3 +drop view v1; +drop table t1; +create table t1 (a1 int, +b1 int as (-a1), +c1 int as (-a1) persistent); +create table t2 (a2 int, +b2 int as (-a2), +c2 int as (-a2) persistent); +insert into t1 (a1) values (1), (2); +insert into t2 (a2) values (2), (3); +create view v1 as select * from t1,t2 union all select * from t1,t2; +select * from v1; +a1 b1 c1 a2 b2 c2 +1 -1 -1 2 -2 -2 +2 -2 -2 2 -2 -2 +1 -1 -1 3 -3 -3 +2 -2 -2 3 -3 -3 +1 -1 -1 2 -2 -2 +2 -2 -2 2 -2 -2 +1 -1 -1 3 -3 -3 +2 -2 -2 3 -3 -3 +drop view v1; +drop table t1, t2; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent); +create table t2 like t1; +create view v1 as select a,b,c from t1; +create view v2 as select a,b,c from t2 where b in (select b from v1); +show create view v2; +View Create View character_set_client collation_connection +v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `t2`.`a` AS `a`,`t2`.`b` AS `b`,`t2`.`c` AS `c` from `t2` where `t2`.`b` in (select `v1`.`b` from `v1`) latin1 latin1_swedish_ci +drop view v2, v1; +drop table t1, t2; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent); +insert into t1 (a) values (1),(1),(2),(2),(3),(3); +create view v1 as select b from t1; +select distinct b from v1; +b +-1 +-2 +-3 +select distinct b from v1 limit 2; +b +-1 +-2 +select distinct b from t1 limit 2; +b +-1 +-2 +prepare stmt1 from "select distinct b from v1 limit 2"; +execute stmt1; +b +-1 +-2 +execute stmt1; +b +-1 +-2 +deallocate prepare stmt1; +drop view v1; +create view v1 as select c from t1; +select distinct c from v1; +c +-1 +-2 +-3 +select distinct c from v1 limit 2; +c +-1 +-2 +select distinct c from t1 limit 2; +c +-1 +-2 +prepare stmt1 from "select distinct c from v1 limit 2"; +execute stmt1; +c +-1 +-2 +execute stmt1; +c +-1 +-2 +deallocate prepare stmt1; +drop view v1; +drop table t1; +create table t1 (a int, +b int as (-a), +c int as (-a) persistent); +create view v1 as select * from t1 where b > -2 && c >-2 with check option; +insert into v1 (a) values (1); +insert into v1 (a) values (3); +ERROR HY000: CHECK OPTION failed 'test.v1' +insert ignore into v1 (a) values (2),(3),(0); +Warnings: +Error 1369 CHECK OPTION failed 'test.v1' +Error 1369 CHECK OPTION failed 'test.v1' +select * from t1; +a b c +1 -1 -1 +0 0 0 +drop view v1; +drop table t1; diff --git a/mysql-test/suite/vcol/t/rpl_vcol.test b/mysql-test/suite/vcol/t/rpl_vcol.test new file mode 100644 index 00000000000..43003f80ee9 --- /dev/null +++ b/mysql-test/suite/vcol/t/rpl_vcol.test @@ -0,0 +1,70 @@ +################################################################################ +# t/vcol_rpl.test # +# # +# Purpose: # +# Test replication of tables with virtual columns. # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +SET @@session.storage_engine = 'InnoDB'; + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source include/master-slave.inc + +connection master; +create table t1 (a int, b int as (a+1)); +show create table t1; +insert into t1 values (1,default); +insert into t1 values (2,default); +select * from t1; +save_master_pos; + +connection slave; +sync_with_master; +select * from t1; + +connection master; +drop table t1; +save_master_pos; + +connection slave; +sync_with_master; + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc +--source include/rpl_end.inc diff --git a/mysql-test/suite/vcol/t/vcol_archive.test b/mysql-test/suite/vcol/t/vcol_archive.test new file mode 100644 index 00000000000..c0c9ecc445d --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_archive.test @@ -0,0 +1,49 @@ +################################################################################ +# t/vcol_archive.test # +# # +# Purpose: # +# ARCHIVE branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-02 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_archive.inc +SET @@session.storage_engine = 'archive'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests +--source suite/vcol/inc/vcol_unsupported_storage_engines.inc + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_blackhole.test b/mysql-test/suite/vcol/t/vcol_blackhole.test new file mode 100644 index 00000000000..eac074d9595 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_blackhole.test @@ -0,0 +1,49 @@ +################################################################################ +# t/vcol_blackhole.test # +# # +# Purpose: # +# BLACKHOLE branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-02 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_blackhole.inc +SET @@session.storage_engine = 'blackhole'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests +--source suite/vcol/inc/vcol_unsupported_storage_engines.inc + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_blocked_sql_funcs_innodb.test b/mysql-test/suite/vcol/t/vcol_blocked_sql_funcs_innodb.test new file mode 100644 index 00000000000..baefddc0fd1 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_blocked_sql_funcs_innodb.test @@ -0,0 +1,52 @@ +################################################################################ +# t/vcol_supported_sql_funcs.test # +# # +# Purpose: # +# Test SQL functions not allowed for virtual columns # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-08-31 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +eval SET @@session.storage_engine = 'InnoDB'; + +let $skip_full_text_checks = 1; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_blocked_sql_funcs_main.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_blocked_sql_funcs_myisam.test b/mysql-test/suite/vcol/t/vcol_blocked_sql_funcs_myisam.test new file mode 100644 index 00000000000..d8eddb4ef15 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_blocked_sql_funcs_myisam.test @@ -0,0 +1,49 @@ +################################################################################ +# t/vcol_supported_sql_funcs.test # +# # +# Purpose: # +# Test SQL functions not allowed for virtual columns # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-08-31 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_blocked_sql_funcs_main.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_column_def_options_innodb.test b/mysql-test/suite/vcol/t/vcol_column_def_options_innodb.test new file mode 100644 index 00000000000..e11618163cc --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_column_def_options_innodb.test @@ -0,0 +1,51 @@ +################################################################################ +# t/vcol_column_def_options_innodb.test # +# # +# Purpose: # +# Testing different optional parameters of virtual columns. # +# # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-02 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +eval SET @@session.storage_engine = 'InnoDB'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_column_def_options.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_column_def_options_myisam.test b/mysql-test/suite/vcol/t/vcol_column_def_options_myisam.test new file mode 100644 index 00000000000..5c3a4619834 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_column_def_options_myisam.test @@ -0,0 +1,50 @@ +################################################################################ +# t/vcol_column_def_options_myisam.test # +# # +# Purpose: # +# Testing different optional parameters of virtual columns. # +# # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-02 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_column_def_options.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_csv.test b/mysql-test/suite/vcol/t/vcol_csv.test new file mode 100644 index 00000000000..75ddf819818 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_csv.test @@ -0,0 +1,48 @@ +################################################################################ +# t/vcol_csv.test # +# # +# Purpose: # +# CSV branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-02 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_csv.inc +SET @@session.storage_engine = 'CSV'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines + +#------------------------------------------------------------------------------# +--source suite/vcol/inc/vcol_unsupported_storage_engines.inc + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_handler_innodb.test b/mysql-test/suite/vcol/t/vcol_handler_innodb.test new file mode 100644 index 00000000000..1a50aeaaa86 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_handler_innodb.test @@ -0,0 +1,51 @@ +################################################################################ +# t/vcol_handler_innodb.test # +# # +# Purpose: # +# Testing HANDLER. +# # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +eval SET @@session.storage_engine = 'InnoDB'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_handler.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_handler_maria.test b/mysql-test/suite/vcol/t/vcol_handler_maria.test new file mode 100644 index 00000000000..9b69e600767 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_handler_maria.test @@ -0,0 +1,52 @@ +################################################################################ +# t/vcol_handler_maria.test # +# # +# Purpose: # +# Testing HANDLER. +# # +# Maria branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +--source include/have_maria.inc + +# +# NOTE: PLEASE DO NOT ADD NOT MARIA SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'maria'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_handler.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_handler_myisam.test b/mysql-test/suite/vcol/t/vcol_handler_myisam.test new file mode 100644 index 00000000000..5aa16da180a --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_handler_myisam.test @@ -0,0 +1,50 @@ +################################################################################ +# t/vcol_handler_myisam.test # +# # +# Purpose: # +# Testing HANDLER. +# # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_handler.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_ins_upd_innodb.test b/mysql-test/suite/vcol/t/vcol_ins_upd_innodb.test new file mode 100644 index 00000000000..3b83c7f4565 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_ins_upd_innodb.test @@ -0,0 +1,51 @@ +################################################################################ +# t/vcol_ins_upd_innodb.test # +# # +# Purpose: # +# Testing DDL operations such as INSERT, UPDATE, REPLACE and DELETE. # +# # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +eval SET @@session.storage_engine = 'InnoDB'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_ins_upd.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_ins_upd_myisam.test b/mysql-test/suite/vcol/t/vcol_ins_upd_myisam.test new file mode 100644 index 00000000000..7840c191194 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_ins_upd_myisam.test @@ -0,0 +1,50 @@ +################################################################################ +# t/vcol_ins_upd_myisam.test # +# # +# Purpose: # +# Testing DDL operations such as INSERT, UPDATE, REPLACE and DELETE. # +# # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_ins_upd.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_keys_innodb.test b/mysql-test/suite/vcol/t/vcol_keys_innodb.test new file mode 100644 index 00000000000..d44d2f701cf --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_keys_innodb.test @@ -0,0 +1,52 @@ +################################################################################ +# t/vcol_keys_innodb.test # +# # +# Purpose: # +# Testing keys, indexes defined upon virtual columns. # +# # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +eval SET @@session.storage_engine = 'InnoDB'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +let $skip_spatial_index_check = 1; +--source suite/vcol/inc/vcol_keys.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_keys_myisam.test b/mysql-test/suite/vcol/t/vcol_keys_myisam.test new file mode 100644 index 00000000000..87d7b79aa1c --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_keys_myisam.test @@ -0,0 +1,50 @@ +################################################################################ +# t/vcol_keys_myisam.test # +# # +# Purpose: # +# Testing keys, indexes defined upon virtual columns. # +# # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_keys.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_memory.test b/mysql-test/suite/vcol/t/vcol_memory.test new file mode 100644 index 00000000000..f481427fa93 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_memory.test @@ -0,0 +1,48 @@ +################################################################################ +# t/vcol_memory.test # +# # +# Purpose: # +# MEMORY branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-02 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +SET @@session.storage_engine = 'memory'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests +--source suite/vcol/inc/vcol_unsupported_storage_engines.inc + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_merge.test b/mysql-test/suite/vcol/t/vcol_merge.test new file mode 100644 index 00000000000..a1d3c628c8e --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_merge.test @@ -0,0 +1,57 @@ +################################################################################ +# t/vcol_merge.test # +# # +# Purpose: # +# MERGE branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-03 # +# Change Author: Oleksandr Byelkin (Monty program Ab) +# Date: 2009-03-24 +# Change: Syntax changed +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests +--disable_warnings +drop table if exists t1, t2, t3; +--enable_warnings + +create table t1 (a int, b int as (a % 10)); +create table t2 (a int, b int as (a % 10)); +insert into t1 values (1,default); +insert into t2 values (2,default); +--error ER_UNSUPPORTED_ENGINE_FOR_VIRTUAL_COLUMNS +create table t3 (a int, b int as (a % 10)) engine=MERGE UNION=(t1,t2); +drop table t1,t2; + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_misc.test b/mysql-test/suite/vcol/t/vcol_misc.test new file mode 100644 index 00000000000..495432fdb4c --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_misc.test @@ -0,0 +1,156 @@ +--source include/have_ucs2.inc + +--disable_warnings +drop table if exists t1,t2; +--enable_warnings + +# +# Bug#601164: DELETE/UPDATE with ORDER BY index and LIMIT +# + +create table t1 (a int, b int, v int as (a+1), index idx(b)); +insert into t1(a, b) values + (4, 40), (3, 30), (5, 50), (7, 70), (8, 80), (2, 20), (1, 10); + +select * from t1 order by b; + +delete from t1 where v > 6 order by b limit 1; +select * from t1 order by b; + +update t1 set a=v order by b limit 1; +select * from t1 order by b; + +drop table t1; + +# +# Bug#604549: Expression for virtual column returns row +# + +-- error ER_ROW_EXPR_FOR_VCOL +CREATE TABLE t1 ( + a int NOT NULL DEFAULT '0', + v double AS ((1, a)) VIRTUAL +); + +# +# Bug#603654: Virtual column in ORDER BY, no other references of table columns +# + +CREATE TABLE t1 ( + a CHAR(255) BINARY NOT NULL DEFAULT 0, + b CHAR(255) BINARY NOT NULL DEFAULT 0, + v CHAR(255) BINARY AS (CONCAT(a,b)) VIRTUAL ); +INSERT INTO t1(a,b) VALUES ('4','7'), ('4','6'); +SELECT 1 AS C FROM t1 ORDER BY v; + +DROP TABLE t1; + +# +# Bug#603186: Insert into a table with stored vurtual columns +# + +CREATE TABLE t1(a int, b int DEFAULT 0, v INT AS (b+10) PERSISTENT); +INSERT INTO t1(a) VALUES (1); +SELECT b, v FROM t1; + +DROP TABLE t1; + +CREATE TABLE t1(a int DEFAULT 100, v int AS (a+1) PERSISTENT); +INSERT INTO t1 () VALUES (); +CREATE TABLE t2(a int DEFAULT 100 , v int AS (a+1)); +INSERT INTO t2 () VALUES (); + +SELECT a, v FROM t1; +SELECT a, v FROM t2; + +DROP TABLE t1,t2; + +# +# Bug#604503: Virtual column expression with datetime comparison +# + +CREATE TABLE t1 ( + a datetime NOT NULL DEFAULT '2000-01-01', + v boolean AS (a < '2001-01-01') +); +INSERT INTO t1(a) VALUES ('2002-02-15'); +INSERT INTO t1(a) VALUES ('2000-10-15'); + +SELECT a, v FROM t1; +SELECT a, v FROM t1; + +CREATE TABLE t2 ( + a datetime NOT NULL DEFAULT '2000-01-01', + v boolean AS (a < '2001-01-01') PERSISTENT +); +INSERT INTO t2(a) VALUES ('2002-02-15'); +INSERT INTO t2(a) VALUES ('2000-10-15'); + +SELECT * FROM t2; + +DROP TABLE t1, t2; + +# +# Bug#607566: Virtual column in the select list of SELECT with ORDER BY +# + +CREATE TABLE t1 ( + a char(255), b char(255), c char(255), d char(255), + v char(255) AS (CONCAT(c,d) ) VIRTUAL +); + +INSERT INTO t1(a,b,c,d) VALUES ('w','x','y','z'), ('W','X','Y','Z'); + +SELECT v FROM t1 ORDER BY CONCAT(a,b); + +DROP TABLE t1; + +# +# Bug#607168: CREATE TABLE AS SELECT that returns virtual columns +# + +CREATE TABLE t1 (f1 INTEGER, v1 INTEGER AS (f1) VIRTUAL); +CREATE TABLE t2 AS SELECT v1 FROM t1; +SHOW CREATE TABLE t2; + +DROP TABLE t1,t2; + +# +# Bug#607177: ROUND function in the expression for a virtual function +# + +CREATE TABLE t1 (p int, a double NOT NULL, v double AS (ROUND(a,p)) VIRTUAL); +INSERT INTO t1 VALUES (0,1,0); +INSERT INTO t1 VALUES (NULL,0,0); +SELECT a, p, v, ROUND(a,p), ROUND(a,p+NULL) FROM t1; +DROP TABLE t1; + +CREATE TABLE t1 (p int, a double NOT NULL); +INSERT INTO t1(p,a) VALUES (0,1); +INSERT INTO t1(p,a) VALUES (NULL,0); +SELECT a, p, ROUND(a,p), ROUND(a,p+NULL) FROM t1; +DROP TABLE t1; + +# +# Bug#610890: SHOW CREATE TABLE with a virtual column +# + +CREATE TABLE t1 (a char(32), v char(32) CHARACTER SET ucs2 AS (a) VIRTUAL); + +SHOW CREATE TABLE t1; + +DROP TABLE t1; + +# +# Bug#930814: no info in information schema for tables with virtual columns +# + +CREATE TABLE t1 (a int, b int); +CREATE TABLE t2 (a int, b int as (a+1) VIRTUAL); + +SELECT table_schema, table_name, column_name, column_type, extra + FROM information_schema.columns WHERE table_name = 't1'; +SELECT table_schema, table_name, column_name, column_type, extra + FROM information_schema.columns WHERE table_name = 't2'; + +DROP TABLE t1,t2; diff --git a/mysql-test/suite/vcol/t/vcol_non_stored_columns_innodb.test b/mysql-test/suite/vcol/t/vcol_non_stored_columns_innodb.test new file mode 100644 index 00000000000..42834d5c0bb --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_non_stored_columns_innodb.test @@ -0,0 +1,53 @@ +################################################################################ +# t/vcol_non_stored_columns_innodb.test # +# # +# Purpose: # +# Ensure that MySQL behaviour is consistent irrelevant of # +# - the place of a non-stored column among other columns, # +# - the total number of non-stored fields. # +# # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +eval SET @@session.storage_engine = 'InnoDB'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_non_stored_columns.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_non_stored_columns_myisam.test b/mysql-test/suite/vcol/t/vcol_non_stored_columns_myisam.test new file mode 100644 index 00000000000..32481e792ec --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_non_stored_columns_myisam.test @@ -0,0 +1,52 @@ +################################################################################ +# t/vcol_non_stored_columns_myisam.test # +# # +# Purpose: # +# Ensure that MySQL behaviour is consistent irrelevant of # +# - the place of a non-stored column among other columns, # +# - the total number of non-stored fields. # +# # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_non_stored_columns.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_partition_innodb.test b/mysql-test/suite/vcol/t/vcol_partition_innodb.test new file mode 100644 index 00000000000..47f1581fc96 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_partition_innodb.test @@ -0,0 +1,52 @@ +################################################################################ +# t/vcol_partition_innodb.test # +# # +# Purpose: # +# Testing partitioning tables with virtual columns. # +# # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ +--source include/have_partition.inc + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +eval SET @@session.storage_engine = 'InnoDB'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_partition.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_partition_myisam.test b/mysql-test/suite/vcol/t/vcol_partition_myisam.test new file mode 100644 index 00000000000..25f0d42c300 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_partition_myisam.test @@ -0,0 +1,51 @@ +################################################################################ +# t/vcol_partition_myisam.test # +# # +# Purpose: # +# Testing partitioning tables with virtual columns. # +# # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ +--source include/have_partition.inc + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_partition.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_select_innodb.test b/mysql-test/suite/vcol/t/vcol_select_innodb.test new file mode 100644 index 00000000000..787f5fe77a7 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_select_innodb.test @@ -0,0 +1,51 @@ +################################################################################ +# t/vcol_select_innodb.test # +# # +# Purpose: # +# Testing different SELECTs. # +# # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-18 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +eval SET @@session.storage_engine = 'InnoDB'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_select.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_select_myisam.test b/mysql-test/suite/vcol/t/vcol_select_myisam.test new file mode 100644 index 00000000000..c14faba576d --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_select_myisam.test @@ -0,0 +1,70 @@ +################################################################################ +# t/vcol_select.test # +# # +# Purpose: # +# Testing different SELECTs. # +# # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-18 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_select.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +--echo # +--echo # Bug #806057: join with USING over a virtual column +--echo # + +CREATE TABLE t1 (b int); +INSERT INTO t1 VALUES (NULL),( 78), (185), (0), (154); + +CREATE TABLE t2 (a int, b int AS (a) VIRTUAL); +INSERT INTO t2 VALUES (187,187), (9,9), (187,187); + +EXPLAIN EXTENDED +SELECT * FROM t1 JOIN t2 USING (b); +SELECT * FROM t1 JOIN t2 USING (b); + +EXPLAIN EXTENDED +SELECT * FROM t1 NATURAL JOIN t2; +SELECT * FROM t1 NATURAL JOIN t2; + +DROP TABLE t1,t2; diff --git a/mysql-test/suite/vcol/t/vcol_supported_sql_funcs_innodb.test b/mysql-test/suite/vcol/t/vcol_supported_sql_funcs_innodb.test new file mode 100644 index 00000000000..32e2600c2fc --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_supported_sql_funcs_innodb.test @@ -0,0 +1,50 @@ +################################################################################ +# t/vcol_supported_sql_funcs.test # +# # +# Purpose: # +# Test SQL functions allowed for virtual columns # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-08-31 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +SET @@session.storage_engine = 'InnoDB'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_supported_sql_funcs_main.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_supported_sql_funcs_myisam.test b/mysql-test/suite/vcol/t/vcol_supported_sql_funcs_myisam.test new file mode 100644 index 00000000000..aa5833451c6 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_supported_sql_funcs_myisam.test @@ -0,0 +1,49 @@ +################################################################################ +# t/vcol_supported_sql_funcs.test # +# # +# Purpose: # +# Test SQL functions allowed for virtual columns # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-08-31 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_supported_sql_funcs_main.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_syntax.test b/mysql-test/suite/vcol/t/vcol_syntax.test new file mode 100644 index 00000000000..6dc3cf43317 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_syntax.test @@ -0,0 +1,30 @@ +# +# test syntax +# +--disable_warnings +drop table if exists t1; +--enable_warnings + +set @OLD_SQL_MODE=@@SESSION.SQL_MODE; +create table t1 (a int, b int generated always as (a+1)); +show create table t1; +drop table t1; +create table t1 (a int, b int as (a+1) virtual); +show create table t1; +drop table t1; +create table t1 (a int, b int generated always as (a+1) persistent); +show create table t1; +drop table t1; + +set session sql_mode='ORACLE'; +create table t1 (a int, b int as (a+1)); +show create table t1; +drop table t1; +create table t1 (a int, b int generated always as (a+1) virtual); +show create table t1; +drop table t1; +create table t1 (a int, b int as (a+1) persistent); +show create table t1; +drop table t1; +set session sql_mode=@OLD_SQL_MODE; + diff --git a/mysql-test/suite/vcol/t/vcol_trigger_sp_innodb.test b/mysql-test/suite/vcol/t/vcol_trigger_sp_innodb.test new file mode 100644 index 00000000000..57655d6d3fe --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_trigger_sp_innodb.test @@ -0,0 +1,52 @@ +################################################################################ +# t/vcol_trigger_sp_innodb.test # +# # +# Purpose: # +# Testing triggers, stored procedures and functions # +# defined on tables with virtual columns. # +# # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +eval SET @@session.storage_engine = 'InnoDB'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_trigger_sp.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_trigger_sp_myisam.test b/mysql-test/suite/vcol/t/vcol_trigger_sp_myisam.test new file mode 100644 index 00000000000..c475a31eaa6 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_trigger_sp_myisam.test @@ -0,0 +1,51 @@ +################################################################################ +# t/vcol_trigger_sp_myisam.test # +# # +# Purpose: # +# Testing triggers, stored procedures and functions # +# defined on tables with virtual columns. # +# # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_trigger_sp.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_view_innodb.test b/mysql-test/suite/vcol/t/vcol_view_innodb.test new file mode 100644 index 00000000000..322fb122436 --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_view_innodb.test @@ -0,0 +1,51 @@ +################################################################################ +# t/vcol_view_innodb.test # +# # +# Purpose: # +# Testing views defined on tables with virtual columns. # +# # +# InnoDB branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +--source include/have_xtradb.inc +eval SET @@session.storage_engine = 'InnoDB'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_view.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc diff --git a/mysql-test/suite/vcol/t/vcol_view_myisam.test b/mysql-test/suite/vcol/t/vcol_view_myisam.test new file mode 100644 index 00000000000..2ebd36431bc --- /dev/null +++ b/mysql-test/suite/vcol/t/vcol_view_myisam.test @@ -0,0 +1,50 @@ +################################################################################ +# t/vcol_view_myisam.test # +# # +# Purpose: # +# Testing views defined on tables with virtual columns. # +# # +# MyISAM branch # +# # +#------------------------------------------------------------------------------# +# Original Author: Andrey Zhakov # +# Original Date: 2008-09-04 # +# Change Author: # +# Change Date: # +# Change: # +################################################################################ + +# +# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE ! +# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN +# THE SOURCED FILES ONLY. +# + +#------------------------------------------------------------------------------# +# General not engine specific settings and requirements +--source suite/vcol/inc/vcol_init_vars.pre + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc + +#------------------------------------------------------------------------------# +# Engine specific settings and requirements + +##### Storage engine to be tested +# Set the session storage engine +eval SET @@session.storage_engine = 'MyISAM'; + +##### Workarounds for known open engine specific bugs +# none + +#------------------------------------------------------------------------------# +# Execute the tests to be applied to all storage engines +--source suite/vcol/inc/vcol_view.inc + +#------------------------------------------------------------------------------# +# Execute storage engine specific tests + +#------------------------------------------------------------------------------# +# Cleanup +--source suite/vcol/inc/vcol_cleanup.inc |