From 4e89fdb9d8e88607c0992bc2d049010344c0cb3b Mon Sep 17 00:00:00 2001 From: Stephen Long Date: Sat, 17 Aug 2019 12:59:16 -0400 Subject: [PATCH 01/36] MDEV-19837 and MDEV-19816: Change some comments --- sql/item.h | 2 +- sql/sql_insert.cc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sql/item.h b/sql/item.h index 6dc99970914..26bf8b91053 100644 --- a/sql/item.h +++ b/sql/item.h @@ -606,7 +606,7 @@ public: /* Cache of the result of is_expensive(). */ int8 is_expensive_cache; - /* Reuse size, only used by SP local variable assignment, otherwize 0 */ + /* Reuse size, only used by SP local variable assignment, otherwise 0 */ uint rsize; /* diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc index ddf9bd155a9..075e37042f4 100644 --- a/sql/sql_insert.cc +++ b/sql/sql_insert.cc @@ -1881,7 +1881,7 @@ before_trg_err: /****************************************************************************** - Check that all fields with arn't null_fields are used + Check that there aren't any null_fields ******************************************************************************/ int check_that_all_fields_are_given_values(THD *thd, TABLE *entry, From df61c5849987267f5daac671e0af8550ae613621 Mon Sep 17 00:00:00 2001 From: Sergei Golubchik Date: Sun, 1 Sep 2019 12:29:55 +0200 Subject: [PATCH 02/36] MDEV-14383 tokudb_bugs. tests failed in buildbot, lost connection to server don't run tokudb tests under tcmalloc, this is not a supported combination. --- storage/tokudb/mysql-test/rpl/suite.pm | 3 +++ storage/tokudb/mysql-test/tokudb/suite.pm | 3 +++ storage/tokudb/mysql-test/tokudb_add_index/suite.pm | 3 +++ storage/tokudb/mysql-test/tokudb_alter_table/suite.pm | 3 +++ storage/tokudb/mysql-test/tokudb_bugs/suite.pm | 3 +++ storage/tokudb/mysql-test/tokudb_mariadb/suite.pm | 3 +++ 6 files changed, 18 insertions(+) diff --git a/storage/tokudb/mysql-test/rpl/suite.pm b/storage/tokudb/mysql-test/rpl/suite.pm index ba9809a9930..3619ca716bc 100644 --- a/storage/tokudb/mysql-test/rpl/suite.pm +++ b/storage/tokudb/mysql-test/rpl/suite.pm @@ -5,6 +5,9 @@ use File::Basename; # Ensure we can run the TokuDB tests even if hugepages are enabled $ENV{TOKU_HUGE_PAGES_OK}=1; +return "Doesn't work with tcmalloc" if $ENV{LD_PRELOAD} =~ /tcmalloc/ and + $mysql_version_id < 100000; + #return "Not run for embedded server" if $::opt_embedded_server; return "No TokuDB engine" unless $ENV{HA_TOKUDB_SO} or $::mysqld_variables{tokudb}; diff --git a/storage/tokudb/mysql-test/tokudb/suite.pm b/storage/tokudb/mysql-test/tokudb/suite.pm index 6c52d0110fe..891969d6c7f 100644 --- a/storage/tokudb/mysql-test/tokudb/suite.pm +++ b/storage/tokudb/mysql-test/tokudb/suite.pm @@ -5,6 +5,9 @@ use File::Basename; # Ensure we can run the TokuDB tests even if hugepages are enabled $ENV{TOKU_HUGE_PAGES_OK}=1; +return "Doesn't work with tcmalloc" if $ENV{LD_PRELOAD} =~ /tcmalloc/ and + $mysql_version_id < 100000; + #return "Not run for embedded server" if $::opt_embedded_server; return "No TokuDB engine" unless $ENV{HA_TOKUDB_SO} or $::mysqld_variables{tokudb}; diff --git a/storage/tokudb/mysql-test/tokudb_add_index/suite.pm b/storage/tokudb/mysql-test/tokudb_add_index/suite.pm index ee1d1bde06b..587475d96e8 100644 --- a/storage/tokudb/mysql-test/tokudb_add_index/suite.pm +++ b/storage/tokudb/mysql-test/tokudb_add_index/suite.pm @@ -5,6 +5,9 @@ use File::Basename; # Ensure we can run the TokuDB tests even if hugepages are enabled $ENV{TOKU_HUGE_PAGES_OK}=1; +return "Doesn't work with tcmalloc" if $ENV{LD_PRELOAD} =~ /tcmalloc/ and + $mysql_version_id < 100000; + #return "Not run for embedded server" if $::opt_embedded_server; return "No TokuDB engine" unless $ENV{HA_TOKUDB_SO} or $::mysqld_variables{tokudb}; diff --git a/storage/tokudb/mysql-test/tokudb_alter_table/suite.pm b/storage/tokudb/mysql-test/tokudb_alter_table/suite.pm index 7981fad2c62..73b002a79c4 100644 --- a/storage/tokudb/mysql-test/tokudb_alter_table/suite.pm +++ b/storage/tokudb/mysql-test/tokudb_alter_table/suite.pm @@ -5,6 +5,9 @@ use File::Basename; # Ensure we can run the TokuDB tests even if hugepages are enabled $ENV{TOKU_HUGE_PAGES_OK}=1; +return "Doesn't work with tcmalloc" if $ENV{LD_PRELOAD} =~ /tcmalloc/ and + $mysql_version_id < 100000; + #return "Not run for embedded server" if $::opt_embedded_server; return "No TokuDB engine" unless $ENV{HA_TOKUDB_SO} or $::mysqld_variables{tokudb}; diff --git a/storage/tokudb/mysql-test/tokudb_bugs/suite.pm b/storage/tokudb/mysql-test/tokudb_bugs/suite.pm index a6e01cd6dd4..332a88199fc 100644 --- a/storage/tokudb/mysql-test/tokudb_bugs/suite.pm +++ b/storage/tokudb/mysql-test/tokudb_bugs/suite.pm @@ -5,6 +5,9 @@ use File::Basename; # Ensure we can run the TokuDB tests even if hugepages are enabled $ENV{TOKU_HUGE_PAGES_OK}=1; +return "Doesn't work with tcmalloc" if $ENV{LD_PRELOAD} =~ /tcmalloc/ and + $mysql_version_id < 100000; + #return "Not run for embedded server" if $::opt_embedded_server; return "No TokuDB engine" unless $ENV{HA_TOKUDB_SO} or $::mysqld_variables{tokudb}; diff --git a/storage/tokudb/mysql-test/tokudb_mariadb/suite.pm b/storage/tokudb/mysql-test/tokudb_mariadb/suite.pm index ab3da8e6b03..5cb69e7bdab 100644 --- a/storage/tokudb/mysql-test/tokudb_mariadb/suite.pm +++ b/storage/tokudb/mysql-test/tokudb_mariadb/suite.pm @@ -5,6 +5,9 @@ use File::Basename; # Ensure we can run the TokuDB tests even if hugepages are enabled $ENV{TOKU_HUGE_PAGES_OK}=1; +return "Doesn't work with tcmalloc" if $ENV{LD_PRELOAD} =~ /tcmalloc/ and + $mysql_version_id < 100000; + #return "Not run for embedded server" if $::opt_embedded_server; return "No TokuDB engine" unless $ENV{HA_TOKUDB_SO} or $::mysqld_variables{tokudb}; From edb6e2b951e168d809d7c0c9a11befdc391760fb Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Tue, 3 Sep 2019 11:23:12 +0200 Subject: [PATCH 03/36] MDEV-17610 - fix result, for the case when test runs with userstat=on --- mysql-test/r/sp.result | 2 +- mysql-test/t/sp.test | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mysql-test/r/sp.result b/mysql-test/r/sp.result index 1704e7cd214..b5f8b017546 100644 --- a/mysql-test/r/sp.result +++ b/mysql-test/r/sp.result @@ -7644,7 +7644,7 @@ SELECT 1; 1 1 DROP PROCEDURE sp; -CREATE PROCEDURE sp() SHOW USER_STATISTICS; +CREATE PROCEDURE sp() SET STATEMENT SQL_SELECT_LIMIT=0 FOR SHOW USER_STATISTICS; CALL sp; User Total_connections Concurrent_connections Connected_time Busy_time Cpu_time Bytes_received Bytes_sent Binlog_bytes_written Rows_read Rows_sent Rows_deleted Rows_inserted Rows_updated Select_commands Update_commands Other_commands Commit_transactions Rollback_transactions Denied_connections Lost_connections Access_denied Empty_queries Total_ssl_connections Max_statement_time_exceeded SELECT 1; diff --git a/mysql-test/t/sp.test b/mysql-test/t/sp.test index a2a40f87ef0..fa4387a9650 100644 --- a/mysql-test/t/sp.test +++ b/mysql-test/t/sp.test @@ -9078,7 +9078,7 @@ CREATE PROCEDURE sp() ALTER TABLE non_existing_table OPTIMIZE PARTITION p0; CALL sp; SELECT 1; DROP PROCEDURE sp; -CREATE PROCEDURE sp() SHOW USER_STATISTICS; +CREATE PROCEDURE sp() SET STATEMENT SQL_SELECT_LIMIT=0 FOR SHOW USER_STATISTICS; CALL sp; SELECT 1; DROP PROCEDURE sp; From fe4eacde39fd4527f52624162eba7b636549ef31 Mon Sep 17 00:00:00 2001 From: Alexey Botchkov Date: Tue, 3 Sep 2019 16:02:46 +0400 Subject: [PATCH 04/36] MDEV-17683 sys_vars.delayed_insert_limit_func fails in buildbot with wrong result. Test fixed to be deterministic. --- .../r/delayed_insert_limit_func.result | 20 +++++++--------- .../sys_vars/t/delayed_insert_limit_func.test | 24 +++---------------- 2 files changed, 11 insertions(+), 33 deletions(-) diff --git a/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result b/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result index 6076d024d44..6788094ebf9 100644 --- a/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result +++ b/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result @@ -51,14 +51,12 @@ INSERT DELAYED INTO t1 VALUES('39','1','1'); INSERT DELAYED INTO t1 VALUES('40','1','1'); INSERT DELAYED INTO t1 VALUES('41','1','1'); INSERT DELAYED INTO t1 VALUES('42','1','1'); -INSERT DELAYED INTO t1 VALUES('43','1','1');| +INSERT DELAYED INTO t1 VALUES('43','1','1'); ** Connection con0 ** SELECT COUNT(*) FROM t1; ** Connection default ** ** Wait till con0 is blocked ** UNLOCK TABLES; -** Connection con1 ** -Asynchronous "reap" result ** Connection con0 ** Asynchronous "reap" result The next result suffers from @@ -84,7 +82,6 @@ INSERT INTO t1 VALUES('5'); INSERT INTO t1 VALUES('6'); LOCK TABLE v1 READ; ** Connection con1 ** -Asynchronous execute INSERT DELAYED INTO t1 VALUES('7'); INSERT DELAYED INTO t1 VALUES('8'); INSERT DELAYED INTO t1 VALUES('9'); @@ -100,23 +97,22 @@ INSERT DELAYED INTO t1 VALUES('18'); INSERT DELAYED INTO t1 VALUES('19'); INSERT DELAYED INTO t1 VALUES('20'); INSERT DELAYED INTO t1 VALUES('21'); -INSERT DELAYED INTO t1 VALUES('22');| +INSERT DELAYED INTO t1 VALUES('22'); ** Connection con0 ** Asynchronous execute -SELECT COUNT(*) BETWEEN 6 AND 22 FROM t1; +SELECT COUNT(*) FROM t1; ** Connection default ** ** Wait till con0 is blocked ** UNLOCK TABLES; -** Connection con1 ** ** Connection con0 ** Asynchronous "reap" result -COUNT(*) BETWEEN 6 AND 22 -1 +COUNT(*) +22 ** Connection default** Checking if the delayed insert gives the same result afterwards -SELECT COUNT(*) BETWEEN 6 AND 22 FROM t1; -COUNT(*) BETWEEN 6 AND 22 -1 +SELECT COUNT(*) FROM t1; +COUNT(*) +22 ** Connection default** DROP TABLE t1; DROP VIEW v1; diff --git a/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test b/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test index e83c48b67f1..b151ad7d765 100644 --- a/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test +++ b/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test @@ -66,8 +66,6 @@ LOCK TABLE v1 READ; --echo ** Connection con1 ** connection con1; -delimiter |; -send INSERT DELAYED INTO t1 VALUES('7','1','1'); INSERT DELAYED INTO t1 VALUES('8','1','1'); INSERT DELAYED INTO t1 VALUES('9','1','1'); @@ -104,8 +102,7 @@ INSERT DELAYED INTO t1 VALUES('39','1','1'); INSERT DELAYED INTO t1 VALUES('40','1','1'); INSERT DELAYED INTO t1 VALUES('41','1','1'); INSERT DELAYED INTO t1 VALUES('42','1','1'); -INSERT DELAYED INTO t1 VALUES('43','1','1');| -delimiter ;| +INSERT DELAYED INTO t1 VALUES('43','1','1'); --echo ** Connection con0 ** connection con0; @@ -126,11 +123,6 @@ let $wait_condition= --source include/wait_condition.inc UNLOCK TABLES; ---echo ** Connection con1 ** -connection con1; ---echo Asynchronous "reap" result -reap; - --echo ** Connection con0 ** connection con0; --echo Asynchronous "reap" result @@ -170,10 +162,6 @@ LOCK TABLE v1 READ; --echo ** Connection con1 ** connection con1; ---echo Asynchronous execute -delimiter |; - -send INSERT DELAYED INTO t1 VALUES('7'); INSERT DELAYED INTO t1 VALUES('8'); INSERT DELAYED INTO t1 VALUES('9'); @@ -189,9 +177,7 @@ INSERT DELAYED INTO t1 VALUES('18'); INSERT DELAYED INTO t1 VALUES('19'); INSERT DELAYED INTO t1 VALUES('20'); INSERT DELAYED INTO t1 VALUES('21'); -INSERT DELAYED INTO t1 VALUES('22');| - -delimiter ;| +INSERT DELAYED INTO t1 VALUES('22'); --echo ** Connection con0 ** connection con0; @@ -202,7 +188,7 @@ let $wait_condition= --echo Asynchronous execute # Due to performance and server behaveiour the test observes values between 6 and 22. # In any case the value must not be outside of that range. -let $my_select= SELECT COUNT(*) BETWEEN 6 AND 22 FROM t1; +let $my_select= SELECT COUNT(*) FROM t1; send; eval $my_select; @@ -215,10 +201,6 @@ let $wait_condition= --source include/wait_condition.inc UNLOCK TABLES; ---echo ** Connection con1 ** -connection con1; -reap; - --echo ** Connection con0 ** connection con0; --echo Asynchronous "reap" result From 0e38cd37c7be46ac2b57344476d68a6dc59bc3a4 Mon Sep 17 00:00:00 2001 From: Sachin Date: Sat, 27 Jul 2019 19:57:46 +0530 Subject: [PATCH 05/36] MDEV-20137 rpl.mdev_17588 fails in buildbot with "Table doesn't exist" Fix the test case. --- mysql-test/suite/rpl/r/mdev_17588.result | 12 ++++-------- mysql-test/suite/rpl/t/mdev_17588.test | 23 ++++++++++++++--------- 2 files changed, 18 insertions(+), 17 deletions(-) diff --git a/mysql-test/suite/rpl/r/mdev_17588.result b/mysql-test/suite/rpl/r/mdev_17588.result index fea28a311b4..acffe96c647 100644 --- a/mysql-test/suite/rpl/r/mdev_17588.result +++ b/mysql-test/suite/rpl/r/mdev_17588.result @@ -1,16 +1,12 @@ include/master-slave.inc [connection master] +include/stop_slave.inc +CHANGE MASTER TO master_use_gtid=slave_pos; +include/start_slave.inc create table t1 (a int) engine=innodb; create table t2 (a int); create table t3 (a int) engine=innodb; -include/save_master_gtid.inc -include/wait_for_slave_sql_error.inc [errno=1286] -Last_Error = 'Error 'Unknown storage engine 'innodb'' on query. Default database: 'test'. Query: 'create table t1 (a int) engine=innodb'' -STOP SLAVE IO_THREAD; -include/wait_for_slave_to_stop.inc -SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; -include/start_slave.inc -include/sync_with_master_gtid.inc +include/wait_for_slave_sql_error_and_skip.inc [errno=1286] show tables; Tables_in_test t2 diff --git a/mysql-test/suite/rpl/t/mdev_17588.test b/mysql-test/suite/rpl/t/mdev_17588.test index e9a340cbd25..c3ecde56139 100644 --- a/mysql-test/suite/rpl/t/mdev_17588.test +++ b/mysql-test/suite/rpl/t/mdev_17588.test @@ -1,23 +1,28 @@ --source include/master-slave.inc --source include/have_innodb.inc +--connection slave +--source include/stop_slave.inc +CHANGE MASTER TO master_use_gtid=slave_pos; +--source include/start_slave.inc + --connection master create table t1 (a int) engine=innodb; create table t2 (a int); create table t3 (a int) engine=innodb; ---source include/save_master_gtid.inc +--save_master_pos --connection slave # Using ER_UNKNOWN_STORAGE_ENGINE wont work let $slave_sql_errno= 1286; ---source include/wait_for_slave_sql_error.inc ---let $status_items= Last_Error ---source include/show_slave_status.inc -STOP SLAVE IO_THREAD; -source include/wait_for_slave_to_stop.inc; -SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; ---source include/start_slave.inc ---source include/sync_with_master_gtid.inc +--source include/wait_for_slave_sql_error_and_skip.inc +--sync_with_master + +--let $show_statement= SHOW PROCESSLIST +--let $field= State +--let $condition= 'Slave has read all relay log; waiting for the slave I/O thread to update it'; +--source include/wait_show_condition.inc + show tables; show create table t2; --error ER_NO_SUCH_TABLE From 8750df43ab94fb63c1f628b72e89e15118eb7431 Mon Sep 17 00:00:00 2001 From: Alexander Barkov Date: Sat, 7 Sep 2019 07:44:54 +0400 Subject: [PATCH 06/36] MDEV-20517 Assertion `!is_expensive()' failed in Item::value_depends_on_sql_mode_const_item --- mysql-test/r/func_misc.result | 9 +++++++++ mysql-test/t/func_misc.test | 6 ++++++ sql/item_func.cc | 19 ++++++++++++------- sql/item_func.h | 11 +++++------ 4 files changed, 32 insertions(+), 13 deletions(-) diff --git a/mysql-test/r/func_misc.result b/mysql-test/r/func_misc.result index 8d89b63d861..a19676168c2 100644 --- a/mysql-test/r/func_misc.result +++ b/mysql-test/r/func_misc.result @@ -1557,5 +1557,14 @@ numgtfmt DROP VIEW v1; DROP TABLE t1; # +# MDEV-20517 Assertion `!is_expensive()' failed in Item::value_depends_on_sql_mode_const_item +# +SELECT ( 1 LIKE GET_LOCK( 'foo', 0 ) ) - 2; +( 1 LIKE GET_LOCK( 'foo', 0 ) ) - 2 +-1 +SELECT RELEASE_LOCK('foo'); +RELEASE_LOCK('foo') +1 +# # End of 10.2 tests # diff --git a/mysql-test/t/func_misc.test b/mysql-test/t/func_misc.test index 89c1744c354..cdbbe708153 100644 --- a/mysql-test/t/func_misc.test +++ b/mysql-test/t/func_misc.test @@ -1192,6 +1192,12 @@ SELECT * FROM v1 WHERE numgtfmt = NAME_CONST('wnumgtfmt',_utf8'QEDITIONS' COLLA DROP VIEW v1; DROP TABLE t1; +--echo # +--echo # MDEV-20517 Assertion `!is_expensive()' failed in Item::value_depends_on_sql_mode_const_item +--echo # + +SELECT ( 1 LIKE GET_LOCK( 'foo', 0 ) ) - 2; +SELECT RELEASE_LOCK('foo'); --echo # --echo # End of 10.2 tests diff --git a/sql/item_func.cc b/sql/item_func.cc index d11b56f2aad..5deeccc9265 100644 --- a/sql/item_func.cc +++ b/sql/item_func.cc @@ -1423,17 +1423,22 @@ bool Item_func_minus::fix_length_and_dec() { if (Item_num_op::fix_length_and_dec()) return TRUE; - m_sql_mode_dependency= Item_func::value_depends_on_sql_mode(); - if (unsigned_flag) - { - m_sql_mode_dependency|= Sql_mode_dependency(0,MODE_NO_UNSIGNED_SUBTRACTION); - if (current_thd->variables.sql_mode & MODE_NO_UNSIGNED_SUBTRACTION) - unsigned_flag= false; - } + if ((m_depends_on_sql_mode_no_unsigned_subtraction= unsigned_flag) && + (current_thd->variables.sql_mode & MODE_NO_UNSIGNED_SUBTRACTION)) + unsigned_flag= false; return FALSE; } +Sql_mode_dependency Item_func_minus::value_depends_on_sql_mode() const +{ + Sql_mode_dependency dep= Item_func_additive_op::value_depends_on_sql_mode(); + if (m_depends_on_sql_mode_no_unsigned_subtraction) + dep|= Sql_mode_dependency(0, MODE_NO_UNSIGNED_SUBTRACTION); + return dep; +} + + double Item_func_minus::real_op() { double value= args[0]->val_real() - args[1]->val_real(); diff --git a/sql/item_func.h b/sql/item_func.h index 5be62427852..1193daea106 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -773,16 +773,15 @@ public: class Item_func_minus :public Item_func_additive_op { - Sql_mode_dependency m_sql_mode_dependency; + bool m_depends_on_sql_mode_no_unsigned_subtraction; public: Item_func_minus(THD *thd, Item *a, Item *b): - Item_func_additive_op(thd, a, b) {} + Item_func_additive_op(thd, a, b), + m_depends_on_sql_mode_no_unsigned_subtraction(false) + { } const char *func_name() const { return "-"; } enum precedence precedence() const { return ADD_PRECEDENCE; } - Sql_mode_dependency value_depends_on_sql_mode() const - { - return m_sql_mode_dependency; - } + Sql_mode_dependency value_depends_on_sql_mode() const; longlong int_op(); double real_op(); my_decimal *decimal_op(my_decimal *); From f9f968557f9c632a083acabb3578631ce0d1c4f6 Mon Sep 17 00:00:00 2001 From: Elena Stepanova Date: Sun, 8 Sep 2019 16:21:48 +0300 Subject: [PATCH 07/36] List of unstable tests for 10.2.27 release --- mysql-test/unstable-tests | 502 +++++++++++++++++++++++++++----------- 1 file changed, 365 insertions(+), 137 deletions(-) diff --git a/mysql-test/unstable-tests b/mysql-test/unstable-tests index 6d71041785e..79d278b5bff 100644 --- a/mysql-test/unstable-tests +++ b/mysql-test/unstable-tests @@ -23,123 +23,233 @@ # ############################################################################## # -# Based on 10.2 32c6f40a6319d493e5270c72ac5d27dc99d1b242 +# Based on 10.2 8750df43ab94fb63c1f628b72e89e15118eb7431 +main.alter_table_mdev539_maria : Include file modified in 10.2.27 +main.alter_table_mdev539_myisam : Include file modified in 10.2.27 main.alter_table_trans : MDEV-12084 - timeout +main.analyze : Modified in 10.2.27 +main.analyze_format_json : Modified in 10.2.27 +main.analyze_stmt : Modified in 10.2.27 +main.analyze_stmt_orderby : Modified in 10.2.27 +main.analyze_stmt_privileges2 : Modified in 10.2.27 main.analyze_stmt_slow_query_log : MDEV-12237 - Wrong result main.auth_named_pipe : MDEV-14724 - System error 2 +main.bootstrap : Modified in 10.2.27 +main.bug13633383 : Modified in 10.2.27 +main.cast : Modified in 10.2.27 main.charset_client_win : Added in 10.2.26 +main.compound : Modified in 10.2.27 +main.compress : Include file modified in 10.2.27 main.connect : MDEV-17282 - Wrong result main.connect2 : MDEV-13885 - Server crash main.connect_debug : Modified in 10.2.26 +main.constraints : Modified in 10.2.27 main.count_distinct2 : MDEV-11768 - timeout +main.create : Modified in 10.2.27 main.create_delayed : MDEV-10605 - failed with timeout main.create_drop_event : MDEV-16271 - Wrong result -main.ctype_ucs : MDEV-17681 - Data too long for column +main.cte_nonrecursive : Modified in 10.2.27 +main.cte_recursive : Modified in 10.2.27 +main.ctype_create : Modified in 10.2.27 +main.ctype_latin1_de : Modified in 10.2.27 +main.ctype_ucs : MDEV-17681 - Data too long for column; modified in 10.2.27 main.ctype_upgrade : MDEV-16945 - Error upon mysql_upgrade main.ctype_utf16 : MDEV-10675: timeout or extra warnings -main.ctype_utf8_def_upgrade : Added in 10.2.25 +main.ctype_utf16_def : Configuration modified in 10.2.27 +main.ctype_utf8 : Modified in 10.2.27 +main.ctype_utf8mb4 : Modified in 10.2.27 +main.ctype_utf8mb4_heap : Include file modified in 10.2.27 +main.ctype_utf8mb4_innodb : Include file modified in 10.2.27 +main.ctype_utf8mb4_myisam : Include file modified in 10.2.27 main.debug_sync : MDEV-10607 - internal error -main.derived : Modified in 10.2.26 -main.derived_cond_pushdown : Modified in 10.2.25 +main.default : Modified in 10.2.27 +main.derived : Modified in 10.2.27 +main.derived_cond_pushdown : Modified in 10.2.27 main.derived_opt : MDEV-11768 - timeout -main.derived_view : Modified in 10.2.26 +main.derived_view : Modified in 10.2.27 main.dirty_close : MDEV-19368 - mysqltest failed but provided no output -main.distinct : MDEV-14194 - Crash +main.distinct : MDEV-14194 - Crash; modified in 10.2.27 main.drop_bad_db_type : MDEV-15676 - Wrong result -main.events_2 : MDEV-13277 - Crash -main.events_bugs : MDEV-12892 - Crash +main.dyncol : Modified in 10.2.27 +main.events_1 : Modified in 10.2.27 +main.events_2 : MDEV-13277 - Crash; modified in 10.2.27 +main.events_bugs : MDEV-12892 - Crash; modified in 10.2.27 +main.events_grant : Modified in 10.2.27 main.events_restart : MDEV-12236 - Server shutdown problem main.events_slowlog : MDEV-12821 - Wrong result +main.explain_json : Modified in 10.2.27 main.flush : MDEV-19368 - mysqltest failed but provided no output -main.func_json : Modified in 10.2.25 +main.flush2 : Modified in 10.2.27 +main.func_isnull : Modified in 10.2.27 +main.func_math : Modified in 10.2.27 +main.func_misc : Modified in 10.2.27 +main.function_defaults : Modified in 10.2.27 main.gis : MDEV-13411 - wrong result on P8 +main.grant : Configuration added in 10.2.27 +main.grant2 : Configuration added in 10.2.27 +main.grant4 : Configuration added in 10.2.27 +main.grant_cache_no_prot : Include file modified in 10.2.27 +main.grant_cache_ps_prot : Include file modified in 10.2.27 +main.grant_explain_non_select : Modified in 10.2.27 +main.greedy_optimizer : Modified in 10.2.27 +main.group_by : Modified in 10.2.27 +main.group_min_max : Modified in 10.2.27 +main.handlersocket : Configuration added in 10.2.27 main.host_cache_size_functionality : MDEV-10606 - sporadic failure on shutdown +main.index_intersect : Modified in 10.2.27 main.index_intersect_innodb : MDEV-10643 - failed with timeout main.index_merge_innodb : MDEV-7142 - Plan mismatch -main.information_schema_parameters : Modified in 10.2.26 +main.information_schema : Modified in 10.2.27 +main.information_schema-big : Modified in 10.2.27 +main.information_schema_parameters : Modified in 10.2.27 +main.information_schema_routines : Modified in 10.2.27 +main.innodb_ext_key : Modified in 10.2.27 +main.innodb_icp : Modified in 10.2.27 main.innodb_mysql_lock : MDEV-7861 - Wrong result -main.join : Modified in 10.2.26 -main.join_cache : Modified in 10.2.25 -main.join_nested : Modified in 10.2.25 -main.join_outer : Modified in 10.2.26 -main.join_outer_innodb : Modified in 10.2.26 +main.join : Modified in 10.2.27 +main.join_cache : Modified in 10.2.27 +main.join_nested_jcl6 : Modified in 10.2.27 +main.join_outer : Modified in 10.2.27 +main.join_outer_innodb : Modified in 10.2.27 +main.join_outer_jcl6 : Modified in 10.2.27 +main.kill : Modified in 10.2.27 main.kill-2 : MDEV-13257 - Wrong result main.kill_processlist-6619 : MDEV-10793 - Wrong result +main.limit_rows_examined : Modified in 10.2.27 main.loaddata : MDEV-19368 - mysqltest failed but provided no output -main.log_slow : MDEV-13263 - Wrong result +main.locale : MDEV-20521 - Missing warning +main.log_slow : MDEV-13263 - Wrong result; modified in 10.2.27 main.log_tables-big : MDEV-13408 - wrong result main.mdev-504 : MDEV-15171 - warning +main.mdev13607 : Modified in 10.2.27 main.mdev375 : MDEV-10607 - sporadic "can't connect" -main.merge : MDEV-10607 - sporadic "can't connect" -main.multi_update : Modified in 10.2.25 -main.multi_update_debug : MDEV-20136 - Debug sync point wait timed out; added in 10.2.25 -main.multi_update_innodb : Modified in 10.2.25 -main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2 +main.merge : MDEV-10607 - sporadic "can't connect"; modified in 10.2.27 +main.mrr_icp_extra : Modified in 10.2.27 +main.multi_update_debug : MDEV-20136 - Debug sync point wait timed out +main.myisam : Modified in 10.2.27 +main.myisam_explain_non_select_all : Modified in 10.2.27 +main.myisam_icp : Modified in 10.2.27 +main.myisam_mrr : Modified in 10.2.27 +main.mysql : Modified in 10.2.27 +main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2; modified in 10.2.27 main.mysql_client_test_comp : MDEV-16641 - Error in exec main.mysql_client_test_nonblock : CONC-208 - Error on Power; MDEV-15096 - exec failed +main.mysql_comments : Modified in 10.2.27 main.mysql_upgrade_noengine : MDEV-14355 - Wrong result main.mysql_upgrade_ssl : MDEV-13492 - Unknown SSL error +main.mysqlcheck : Modified in 10.2.27 main.mysqld--help : Modified in 10.2.26 -main.mysqldump : MDEV-14800 - Stack smashing detected; modified in 10.2.25 +main.mysqldump : MDEV-14800 - Stack smashing detected; modified in 10.2.27 +main.mysqldump-max : Modified in 10.2.27 +main.mysqldump-nl : Modified in 10.2.27 main.mysqlhotcopy_myisam : MDEV-10995 - Hang on debug main.mysqlslap : MDEV-11801 - timeout main.mysqltest : MDEV-9269 - fails on Alpha; MDEV-13887 - Wrong result +main.named_pipe : Include file modified in 10.2.27 main.old-mode : MDEV-19373 - Wrong result -main.openssl_1 : MDEV-13492 - Unknown SSL error +main.openssl_1 : MDEV-13492 - Unknown SSL error; modified in 10.2.27 main.openssl_6975 : MDEV-17184 - Failures with OpenSSL 1.1.1 main.order_by_optimizer_innodb : MDEV-10683 - Wrong result main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock +main.partition_example : Configuration added in 10.2.27 +main.partition_innodb : Modified in 10.2.27 main.partition_innodb_plugin : MDEV-12901 - Valgrind warnings main.partition_innodb_semi_consistent : MDEV-19411 - Failed to start mysqld.1 -main.plugin : Modified in 10.2.26 +main.partition_key_cache : Modified in 10.2.27 +main.partition_pruning : Modified in 10.2.27 +main.plugin : Configuration added in 10.2.27 main.plugin_auth : Modified in 10.2.26 -main.plugin_not_embedded : Modified in 10.2.26 -main.ps : MDEV-11017 - Wrong result; modified in 10.2.26 +main.plugin_innodb : Configuration added in 10.2.27 +main.plugin_load : Configuration modified in 10.2.27 +main.plugin_load_option : Configuration modified in 10.2.27 +main.plugin_not_embedded : Configuration added in 10.2.27 +main.pool_of_threads : Modified in 10.2.27 +main.ps : Configuration modified in 10.2.27 main.ps_innodb : Added in 10.2.26 main.query_cache : MDEV-16180 - Wrong result -main.query_cache_debug : MDEV-15281 - Query cache is disabled +main.query_cache_debug : MDEV-15281 - Query cache is disabled; modified in 10.2.27 +main.query_cache_ps_no_prot : Modified in 10.2.27 +main.range : Modified in 10.2.27 +main.range_interrupted-13751 : Modified in 10.2.27 +main.range_mrr_icp : Modified in 10.2.27 +main.range_vs_index_merge : Modified in 10.2.27 main.range_vs_index_merge_innodb : MDEV-15283 - Server has gone away +main.repair : Modified in 10.2.27 main.repair_symlink-5543 : Modified in 10.2.26 +main.schema : Modified in 10.2.27 +main.select : Modified in 10.2.27 +main.selectivity : Modified in 10.2.27 +main.selectivity_innodb : Modified in 10.2.27 +main.selectivity_no_engine : Modified in 10.2.27 main.set_statement : MDEV-13183 - Wrong result main.set_statement_notembedded : MDEV-19414 - Wrong result -main.shm : MDEV-12727 - Mismatch, ERROR 2013 +main.shm : MDEV-12727 - Mismatch, ERROR 2013; include file modified in 10.2.27 +main.show_bad_definer-5553 : Modified in 10.2.27 +main.show_check : Modified in 10.2.27 main.show_explain : MDEV-10674 - Wrong result code -main.sp : MDEV-7866 - Mismatch; modified in 10.2.26 -main.sp-security : MDEV-10607 - sporadic "can't connect" +main.sp : Modified in 10.2.27 +main.sp-error : Modified in 10.2.27 +main.sp-security : MDEV-10607 - sporadic "can't connect"; modified in 10.2.27 main.sp_notembedded : MDEV-10607 - internal error -main.ssl : MDEV-17184 - Failures with OpenSSL 1.1.1 +main.ssl : MDEV-17184 - Failures with OpenSSL 1.1.1; modified in 10.2.27 +main.ssl-big : Modified in 10.2.27 main.ssl_ca : MDEV-10895 - SSL connection error on Power main.ssl_cipher : MDEV-17184 - Failures with OpenSSL 1.1.1 +main.ssl_compress : Modified in 10.2.27 main.ssl_connect : MDEV-13492 - Unknown SSL error main.ssl_crl : MDEV-19119 - Wrong error code main.ssl_timeout : MDEV-11244 - Crash -main.stat_tables : Modified in 10.2.25 +main.stat_tables-enospc : Modified in 10.2.27 main.stat_tables_par : MDEV-13266 - Wrong result main.stat_tables_par_innodb : MDEV-14155 - Wrong rounding +main.statistics : Modified in 10.2.27 main.status : MDEV-13255 - Wrong result -main.subselect : Modified in 10.2.26 +main.subselect : Modified in 10.2.27 +main.subselect2 : Modified in 10.2.27 +main.subselect3 : Modified in 10.2.27 +main.subselect3_jcl6 : Modified in 10.2.27 +main.subselect4 : Modified in 10.2.27 +main.subselect_exists2in : Modified in 10.2.27 +main.subselect_extra : Modified in 10.2.27 main.subselect_innodb : MDEV-10614 - Sporadic wrong results -main.subselect_no_semijoin : Modified in 10.2.25 -main.subselect_sj : Modified in 10.2.25 -main.subselect_sj_mat : Modified in 10.2.25 +main.subselect_mat_cost : Modified in 10.2.27 +main.subselect_mat_cost_bugs : Modified in 10.2.27 +main.subselect_sj : Modified in 10.2.27 +main.subselect_sj2 : Modified in 10.2.27 +main.subselect_sj2_mat : Modified in 10.2.27 +main.subselect_sj_jcl6 : Modified in 10.2.27 +main.subselect_sj_mat : Modified in 10.2.27 +main.subselect_sj_nonmerged : Modified in 10.2.27 +main.table_options-5867 : Configuration added in 10.2.27 main.tc_heuristic_recover : MDEV-14189 - Wrong result -main.temp_table : Modified in 10.2.25 -main.trigger_null-8605 : Modified in 10.2.25 +main.trigger : Modified in 10.2.27 +main.trigger-compat : Modified in 10.2.27 +main.trigger_notembedded : Modified in 10.2.27 +main.truncate_badse : Configuration added in 10.2.27 main.type_blob : MDEV-15195 - Wrong result -main.type_datetime : Modified in 10.2.26 +main.type_date : Modified in 10.2.27 +main.type_datetime : Modified in 10.2.27 main.type_datetime_hires : MDEV-10687 - Timeout -main.userstat : MDEV-12904 - SSL errors -main.view : Modified in 10.2.26 +main.type_int : Modified in 10.2.27 +main.type_time_6065 : Modified in 10.2.27 +main.type_varchar : Configuration added in 10.2.27 +main.union : Modified in 10.2.27 +main.upgrade : Configuration added in 10.2.27 +main.userstat : MDEV-12904 - SSL errors; configuration added in 10.2.27 +main.variables : Modified in 10.2.27 +main.variables-notembedded : Modified in 10.2.27 +main.view : Modified in 10.2.27 main.wait_timeout : MDEV-19023 - Lost connection to MySQL server during query -main.win : Modified in 10.2.25 main.xa : MDEV-11769 - lock wait timeout +main.xtradb_mrr : Modified in 10.2.27 #----------------------------------------------------------------------- archive.archive_bitfield : MDEV-11771 - table is marked as crashed archive.archive_symlink : MDEV-12170 - unexpected error on rmdir archive.discover : MDEV-10510 - Table is marked as crashed +archive.discover_5438 : Configuration added in 10.2.27 archive.mysqlhotcopy_archive : MDEV-10995 - Hang on debug #----------------------------------------------------------------------- @@ -149,15 +259,20 @@ archive-test_sql_discovery.discover : MDEV-16817 - Table marked as crashed #----------------------------------------------------------------------- binlog.binlog_commit_wait : MDEV-10150 - Mismatch +binlog.binlog_innodb : Configuration added in 10.2.27 binlog.binlog_killed : MDEV-12925 - Wrong result -binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown +binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown; modified in 10.2.27 +binlog.binlog_mixed_cache_stat : Configuration added in 10.2.27 +binlog.binlog_mysqlbinlog2 : Modified in 10.2.27 binlog.binlog_mysqlbinlog_stop_never : Added in 10.2.26 binlog.binlog_parallel_replication_marks_row : Include file modified in 10.2.26 binlog.binlog_parallel_replication_marks_stm_mix : Include file modified in 10.2.26 -binlog.binlog_row_drop_tmp_tbl : Include file modified in 10.2.26 -binlog.binlog_stm_drop_tmp_tbl : MDEV-20188 - Unknown table on exec; include file modified in 10.2.26 +binlog.binlog_row_cache_stat : Include file modified in 10.2.27 +binlog.binlog_row_drop_tmp_tbl : Include file modified in 10.2.27 +binlog.binlog_stm_cache_stat : Include file modified in 10.2.27 +binlog.binlog_stm_drop_tmp_tbl : Include file modified in 10.2.27 binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint -binlog.flashback-largebinlog : MDEV-19764 - Out of memory; added in 10.2.25 +binlog.flashback-largebinlog : MDEV-19764 - Out of memory; modified in 10.2.27 binlog.load_data_stm_view : MDEV-16948 - Wrong result #----------------------------------------------------------------------- @@ -191,11 +306,10 @@ disks.disks_notembedded : Added in 10.2.26 #----------------------------------------------------------------------- -encryption.compressed_import_tablespace : Added in 10.2.25 -encryption.corrupted_during_recovery : Modified in 10.2.25 encryption.create_or_replace : MDEV-12694 - Timeout; MDEV-16115 - Trying to access tablespace encryption.debug_key_management : MDEV-13841 - Timeout encryption.encrypt_and_grep : MDEV-13765 - Wrong result +encryption.file_creation : Added in 10.2.27 encryption.innochecksum : MDEV-13644 - Assertion failure; modified in 10.2.26 encryption.innodb-bad-key-change2 : MDEV-19118 - Can't connect through socket encryption.innodb-checksum-algorithm : MDEV-12898 - Deadlock of threads; MDEV-16896 - Server crash @@ -203,7 +317,7 @@ encryption.innodb-compressed-blob : MDEV-14728 - Unable to get certi encryption.innodb-discard-import : MDEV-19113 - Timeout encryption.innodb-encryption-alter : MDEV-13566 - Lock wait timeout; modified in 10.2.26 encryption.innodb-first-page-read : MDEV-14356 - Timeout in wait condition -encryption.innodb-force-corrupt : MDEV-17286 - SSL error; modified in 10.2.25 +encryption.innodb-force-corrupt : MDEV-17286 - SSL error encryption.innodb-page_encryption : MDEV-10641 - mutex problem encryption.innodb-read-only : MDEV-16563 - Crash on startup encryption.innodb-redo-badkey : MDEV-12898 - Server hang on startup @@ -211,6 +325,7 @@ encryption.innodb-remove-encryption : MDEV-16493 - Timeout in wait con encryption.innodb-spatial-index : MDEV-13746 - Wrong result encryption.innodb_encrypt_key_rotation_age : MDEV-19763 - Timeout encryption.innodb_encrypt_log : MDEV-13725 - Wrong result +encryption.innodb_encrypt_log_corruption : Configuration modified in 10.2.27 encryption.innodb_encrypt_temporary_tables : MDEV-20142 - Wrong result; added in 10.2.26 encryption.innodb_encryption : MDEV-15675 - Timeout encryption.innodb_encryption-page-compression : MDEV-12630 - crash or assertion failure @@ -221,6 +336,7 @@ encryption.innodb_onlinealter_encryption : MDEV-17287 - SIGABRT on server r encryption.innodb_scrub : MDEV-8139 - scrubbing tests need fixing encryption.innodb_scrub_background : MDEV-8139 - scrubbing tests need fixing encryption.innodb_scrub_compressed : MDEV-8139 - scrubbing tests need fixing +encryption.tempfiles : Modified in 10.2.27 #----------------------------------------------------------------------- @@ -245,9 +361,36 @@ federated.federatedx : MDEV-10617 - Wrong checksum #----------------------------------------------------------------------- -funcs_1.memory_views : MDEV-11773 - timeout -funcs_1.processlist_val_no_prot : MDEV-11223 - Wrong result -funcs_1.processlist_val_ps : MDEV-12175 - Wrong plan +funcs_1.innodb_storedproc_07 : Include file modified in 10.2.27 +funcs_1.innodb_storedproc_08 : Include file modified in 10.2.27 +funcs_1.innodb_trig_03e : Modified in 10.2.27 +funcs_1.is_columns : Modified in 10.2.27 +funcs_1.is_columns_innodb : Modified in 10.2.27 +funcs_1.is_columns_memory : Modified in 10.2.27 +funcs_1.is_columns_myisam : Modified in 10.2.27 +funcs_1.is_routines : Include file modified in 10.2.27 +funcs_1.is_routines_embedded : Include file modified in 10.2.27 +funcs_1.is_schemata : Include file modified in 10.2.27 +funcs_1.is_schemata_embedded : Include file modified in 10.2.27 +funcs_1.is_schemata_is_mysql_test : Modified in 10.2.27 +funcs_1.is_tables : Include file modified in 10.2.27 +funcs_1.is_tables_embedded : Include file modified in 10.2.27 +funcs_1.is_tables_innodb : Include file modified in 10.2.27 +funcs_1.is_tables_memory : Include file modified in 10.2.27 +funcs_1.is_tables_myisam : Include file modified in 10.2.27 +funcs_1.is_tables_myisam_embedded : Include file modified in 10.2.27 +funcs_1.is_triggers : Include file modified in 10.2.27 +funcs_1.is_triggers_embedded : Include file modified in 10.2.27 +funcs_1.memory_storedproc_07 : Include file modified in 10.2.27 +funcs_1.memory_storedproc_08 : Include file modified in 10.2.27 +funcs_1.memory_trig_03e : Modified in 10.2.27 +funcs_1.memory_views : MDEV-11773 - timeout +funcs_1.myisam_storedproc_07 : Include file modified in 10.2.27 +funcs_1.myisam_storedproc_08 : Include file modified in 10.2.27 +funcs_1.myisam_trig_03e : Modified in 10.2.27 +funcs_1.processlist_val_no_prot : MDEV-11223 - Wrong result +funcs_1.processlist_val_ps : MDEV-12175 - Wrong plan +funcs_1.storedproc : Modified in 10.2.27 #----------------------------------------------------------------------- @@ -256,7 +399,8 @@ funcs_2.myisam_charset : MDEV-11535 - Timeout #----------------------------------------------------------------------- -funcs_2/charset.* : MDEV-10999 - Not maintained +funcs_2/charset.* : MDEV-10999 - Not maintained +funcs_2/charset.charset_master : Modified in 10.2.27 #----------------------------------------------------------------------- @@ -269,25 +413,29 @@ galera_3nodes.* : Suite is not stable yet #----------------------------------------------------------------------- gcol.gcol_rollback : MDEV-16954 - Unknown storage engine 'InnoDB' -gcol.innodb_virtual_basic : MDEV-16950 - Failing assertion +gcol.gcol_select_innodb : Include file modified in 10.2.27 +gcol.gcol_select_myisam : Include file modified in 10.2.27 +gcol.innodb_virtual_basic : MDEV-16950 - Failing assertion; modified in 10.2.27 +gcol.innodb_virtual_debug : MDEV-19114 - Assertion failure gcol.innodb_virtual_debug_purge : MDEV-16952 - Wrong result -gcol.innodb_virtual_purge : Modified in 10.2.25 +gcol.innodb_virtual_index : Modified in 10.2.27 #----------------------------------------------------------------------- innodb.101_compatibility : MDEV-13891 - Wrong result -innodb.alter_copy : MDEV-16181 - Assertion failure +innodb.alter_copy : MDEV-16181 - Assertion failure; modified in 10.2.27 innodb.alter_crash : MDEV-16944 - The process cannot access the file innodb.alter_large_dml : Added in 10.2.26 innodb.alter_missing_tablespace : Modified in 10.2.26 +innodb.auto_increment_dup : Modified in 10.2.27 innodb.autoinc_persist : MDEV-15282 - Assertion failure innodb.binlog_consistent : MDEV-10618 - Server fails to start innodb.blob-crash : Added in 10.2.26 innodb.check_ibd_filesize : Added in 10.2.26 -innodb.corrupted_during_recovery : Modified in 10.2.25 innodb.create_select : Added in 10.2.26 innodb.doublewrite : MDEV-12905 - Server crash -innodb.foreign-keys : Modified in 10.2.25 +innodb.foreign-keys : Modified in 10.2.27 +innodb.foreign_key : Modified in 10.2.27 innodb.group_commit_crash : MDEV-14191 - InnoDB registration failed innodb.group_commit_crash_no_optimize_thread : MDEV-13830 - Assertion failure innodb.ibuf_not_empty : MDEV-19021 - Wrong result @@ -295,6 +443,7 @@ innodb.innodb-16k : Modified in 10.2.26 innodb.innodb-32k : Modified in 10.2.26 innodb.innodb-32k-crash : MDEV-16953 - Corrupt log record found; modified in 10.2.26 innodb.innodb-64k-crash : MDEV-13872 - Failure and crash on startup; modified in 10.2.26 +innodb.innodb-alter : Modified in 10.2.27 innodb.innodb-alter-debug : MDEV-13182 - InnoDB: adjusting FSP_SPACE_FLAGS innodb.innodb-alter-table : MDEV-10619 - Testcase timeout innodb.innodb-alter-tempfile : MDEV-15285 - Table already exists @@ -302,25 +451,33 @@ innodb.innodb-autoinc : Modified in 10.2.26 innodb.innodb-blob : MDEV-12053 - Client crash innodb.innodb-change-buffer-recovery : MDEV-19115 - Lost connection to MySQL server during query innodb.innodb-fk : MDEV-13832 - Assertion failure on shutdown -innodb.innodb-get-fk : MDEV-13276 - Server crash +innodb.innodb-fkcheck : Modified in 10.2.27 +innodb.innodb-get-fk : MDEV-13276 - Server crash; modified in 10.2.27 innodb.innodb-index-online : MDEV-14809 - Cannot save statistics +innodb.innodb-mdev7046 : Modified in 10.2.27 innodb.innodb-page_compression_default : MDEV-13644 - Assertion failure innodb.innodb-page_compression_lzma : MDEV-14353 - Wrong result innodb.innodb-page_compression_zip : MDEV-10641 - mutex problem -innodb.innodb-system-table-view : Added in 10.2.26 +innodb.innodb-read-view : Added in 10.2.27 +innodb.innodb-system-table-view : Configuration modified in 10.2.27 innodb.innodb-table-online : MDEV-13894 - Wrong result innodb.innodb-virtual-columns-debug : MDEV-20143 - Wrong result; added in 10.2.26 -innodb.innodb-wl5522-debug : MDEV-14200 - Wrong errno +innodb.innodb-wl5522-debug : MDEV-14200 - Wrong errno; modified in 10.2.27 innodb.innodb-wl5980-debug : Added in 10.2.26 innodb.innodb_buffer_pool_dump_pct : MDEV-20139 - Timeout in wait_condition.inc; added in 10.2.26 innodb.innodb_buffer_pool_resize_with_chunks : MDEV-16964 - Assertion failure innodb.innodb_bug14147491 : MDEV-11808 - Index is corrupt +innodb.innodb_bug14704286 : Deleted in 10.2.27 innodb.innodb_bug30423 : MDEV-7311 - Wrong result +innodb.innodb_bug47167 : MDEV-20524 - Table 'user' is marked as crashed and should be repaired innodb.innodb_bug48024 : MDEV-14352 - Assertion failure innodb.innodb_bug59641 : MDEV-13830 - Assertion failure +innodb.innodb_bug68148 : Modified in 10.2.27 +innodb.innodb_bug84958 : Added in 10.2.27 +innodb.innodb_bulk_create_index_debug : Include file modified in 10.2.27 +innodb.innodb_bulk_create_index_flush : Configuration added in 10.2.27 innodb.innodb_bulk_create_index_replication : MDEV-15273 - Slave failed to start innodb.innodb_defrag_stats_many_tables : MDEV-14198 - Table is full -innodb.innodb_force_recovery : Modified in 10.2.25 innodb.innodb_information_schema : MDEV-8851 - Wrong result innodb.innodb_max_recordsize_32k : MDEV-14801 - Operation failed; modified in 10.2.26 innodb.innodb_max_recordsize_64k : MDEV-15203 - Wrong result; modified in 10.2.26 @@ -330,21 +487,21 @@ innodb.innodb_stats : MDEV-10682 - wrong result innodb.innodb_stats_persistent_debug : MDEV-14801 - Operation failed innodb.innodb_sys_semaphore_waits : MDEV-10331 - Semaphore wait innodb.innodb_zip_innochecksum2 : MDEV-13882 - Warning: difficult to find free blocks -innodb.leaf_page_corrupted_during_recovery : Added in 10.2.25 +innodb.log_alter_table : Configuration added in 10.2.27 innodb.log_corruption : MDEV-13251 - Wrong result innodb.log_data_file_size : MDEV-14204 - Server failed to start innodb.log_file_name : MDEV-14193 - Exception innodb.log_file_size : MDEV-15668 - Not found pattern innodb.max_record_size : Added in 10.2.26 innodb.missing_tablespaces : Added in 10.2.26 -innodb.monitor : MDEV-16179 - Wrong result; modified in 10.2.25 +innodb.monitor : MDEV-16179 - Wrong result innodb.page_id_innochecksum : Added in 10.2.26 innodb.purge : Added in 10.2.26 innodb.purge_secondary : MDEV-15681 - Wrong result innodb.purge_secondary_mdev-16222 : Added in 10.2.26 innodb.purge_thread_shutdown : MDEV-13792 - Wrong result innodb.read_only_recovery : MDEV-13886 - Server crash -innodb.recovery_shutdown : MDEV-15671 - Checksum mismatch in datafile +innodb.recovery_shutdown : MDEV-15671 - Checksum mismatch in datafile; modified in 10.2.27 innodb.row_format_redundant : MDEV-15192 - Trying to access missing tablespace innodb.strict_mode : Modified in 10.2.26 innodb.table_definition_cache_debug : MDEV-14206 - Extra warning @@ -352,17 +509,18 @@ innodb.table_flags : MDEV-13572 - Wrong result; MDEV-1 innodb.temp_table_savepoint : MDEV-16182 - Wrong result innodb.temporary_table : MDEV-13265 - Wrong result innodb.truncate_missing : Modified in 10.2.26 -innodb.trx_id_future : MDEV-20138 - Table doesn't exist in engine; added in 10.2.26 +innodb.trx_id_future : Added in 10.2.26 innodb.undo_log : Modified in 10.2.26 innodb.undo_truncate : MDEV-17340 - Server hung -innodb.undo_truncate_recover : MDEV-17679 - MySQL server has gone away +innodb.undo_truncate_recover : MDEV-17679 - MySQL server has gone away; modified in 10.2.27 innodb.update_time : MDEV-14804 - Wrong result innodb.xa_recovery : MDEV-15279 - mysqld got exception #----------------------------------------------------------------------- innodb_fts.fulltext2 : Modified in 10.2.26 -innodb_fts.innodb_ft_aux_table : Added in 10.2.25 +innodb_fts.fulltext_table_evict : Modified in 10.2.27 +innodb_fts.innodb_fts_misc : Modified in 10.2.27 innodb_fts.innodb_fts_misc_debug : MDEV-14156 - Unexpected warning innodb_fts.innodb_fts_plugin : MDEV-13888 - Errors in server log innodb_fts.innodb_fts_stopword_charset : MDEV-13259 - Table crashed @@ -371,19 +529,20 @@ innodb_fts.sync : MDEV-14808 - Wrong result #----------------------------------------------------------------------- innodb_gis.kill_server : MDEV-16941 - Checksum mismatch -innodb_gis.rtree_add_index : Added in 10.2.25 +innodb_gis.rtree_compress2 : Modified in 10.2.27 innodb_gis.rtree_concurrent_srch : MDEV-15284 - Wrong result with embedded innodb_gis.rtree_purge : MDEV-15275 - Timeout innodb_gis.rtree_recovery : MDEV-15274 - Error on check innodb_gis.rtree_split : MDEV-14208 - Too many arguments innodb_gis.rtree_undo : MDEV-14456 - Timeout in include file innodb_gis.types : MDEV-15679 - Table is marked as crashed +innodb_gis.update_root : Modified in 10.2.27 #----------------------------------------------------------------------- innodb_zip.cmp_per_index : MDEV-14490 - Table is marked as crashed innodb_zip.innochecksum_3 : MDEV-13279 - Extra warnings -innodb_zip.wl5522_debug_zip : MDEV-11600 - Operating system error number 2 +innodb_zip.wl5522_debug_zip : MDEV-11600 - Operating system error number 2; modified in 10.2.27 innodb_zip.wl6470_1 : MDEV-14240 - Assertion failure innodb_zip.wl6501_1 : MDEV-10891 - Can't create UNIX socket innodb_zip.wl6501_scale_1 : MDEV-13254 - Timeout, MDEV-14104 - Error 192 @@ -391,15 +550,23 @@ innodb_zip.wl6501_scale_1 : MDEV-13254 - Timeout, MDEV-14104 - Error 192 #----------------------------------------------------------------------- maria.alter : Modified in 10.2.26 +maria.icp : Modified in 10.2.27 maria.insert_select : MDEV-12757 - Timeout maria.insert_select-7314 : MDEV-16492 - Timeout maria.kill : Added in 10.2.26 maria.maria : MDEV-14430 - Extra warning +maria.maria-big : Modified in 10.2.27 +maria.maria-gis-recovery : Modified in 10.2.27 +maria.maria-no-logging : Modified in 10.2.27 +maria.maria-recover : Modified in 10.2.27 +maria.maria-recovery : Modified in 10.2.27 +maria.maria3 : Modified in 10.2.27 maria.temporary : Added in 10.2.26 #----------------------------------------------------------------------- mariabackup.apply-log-only : MDEV-20135 - Timeout +mariabackup.big_innodb_log : Added in 10.2.27 mariabackup.data_directory : MDEV-15270 - Error on exec mariabackup.full_backup : MDEV-16571 - Wrong result mariabackup.huge_lsn : MDEV-15662 - Sequence number is in the future @@ -444,7 +611,23 @@ parts.partition_auto_increment_archive : MDEV-16491 - Marked as crashed and shou parts.partition_auto_increment_maria : MDEV-14430 - Extra warning parts.partition_debug_innodb : MDEV-10891 - Can't create UNIX socket; MDEV-15095 - Table doesn't exist parts.partition_exch_qa_10 : MDEV-11765 - wrong result +parts.partition_exch_qa_4_innodb : Include file modified in 10.2.27 +parts.partition_exch_qa_4_myisam : Include file modified in 10.2.27 +parts.partition_exch_qa_8_innodb : Include file modified in 10.2.27 +parts.partition_exch_qa_8_myisam : Include file modified in 10.2.27 parts.partition_innodb_status_file : MDEV-12901 - Valgrind +parts.partition_mgm_lc0_archive : Include file modified in 10.2.27 +parts.partition_mgm_lc0_innodb : Include file modified in 10.2.27 +parts.partition_mgm_lc0_memory : Include file modified in 10.2.27 +parts.partition_mgm_lc0_myisam : Include file modified in 10.2.27 +parts.partition_mgm_lc1_archive : Include file modified in 10.2.27 +parts.partition_mgm_lc1_innodb : Include file modified in 10.2.27 +parts.partition_mgm_lc1_memory : Include file modified in 10.2.27 +parts.partition_mgm_lc1_myisam : Include file modified in 10.2.27 +parts.partition_mgm_lc2_archive : Include file modified in 10.2.27 +parts.partition_mgm_lc2_innodb : Include file modified in 10.2.27 +parts.partition_mgm_lc2_memory : Include file modified in 10.2.27 +parts.partition_mgm_lc2_myisam : Include file modified in 10.2.27 parts.partition_special_innodb : MDEV-16942 - Timeout #----------------------------------------------------------------------- @@ -453,24 +636,39 @@ percona.* : MDEV-10997 - Not maintained #----------------------------------------------------------------------- -perfschema.connect_attrs : MDEV-17283 - Wrong result -perfschema.dml_file_instances : MDEV-15179 - Wrong result -perfschema.dml_threads : MDEV-17746 - Wrong errno -perfschema.func_file_io : MDEV-5708 - fails for s390x -perfschema.func_mutex : MDEV-5708 - fails for s390x -perfschema.hostcache_ipv4_addrinfo_again_allow : MDEV-12759 - Crash -perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash -perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash -perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash -perfschema.privilege_table_io : MDEV-13184 - Extra lines -perfschema.rpl_gtid_func : MDEV-16897 - Wrong result -perfschema.socket_instances_func : MDEV-20140 - Wrong result -perfschema.socket_summary_by_event_name_func : MDEV-10622 - Wrong result -perfschema.socket_summary_by_instance_func : MDEV-19413 - Wrong result -perfschema.stage_mdl_global : MDEV-11803 - wrong result on slow builders -perfschema.stage_mdl_procedure : MDEV-11545 - Missing row -perfschema.stage_mdl_table : MDEV-12638 - Wrong result -perfschema.threads_mysql : MDEV-10677 - Wrong result +perfschema.connect_attrs : MDEV-17283 - Wrong result +perfschema.dml_file_instances : MDEV-15179 - Wrong result +perfschema.dml_threads : MDEV-17746 - Wrong errno +perfschema.func_file_io : MDEV-5708 - fails for s390x +perfschema.func_mutex : MDEV-5708 - fails for s390x +perfschema.hostcache_ipv4_addrinfo_again_allow : MDEV-12759 - Crash +perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash; configuration modified in 10.2.27 +perfschema.hostcache_ipv6_addrinfo_again_deny : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash; configuration modified in 10.2.27 +perfschema.hostcache_ipv6_addrinfo_bad_deny : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_addrinfo_good_allow : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_addrinfo_good_deny : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_addrinfo_noname_allow : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_addrinfo_noname_deny : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_auth_plugin : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_blocked : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_max_con : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_nameinfo_again_allow : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_nameinfo_again_deny : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_nameinfo_noname_allow : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_nameinfo_noname_deny : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_passwd : Configuration modified in 10.2.27 +perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash; configuration modified in 10.2.27 +perfschema.privilege_table_io : MDEV-13184 - Extra lines +perfschema.rpl_gtid_func : MDEV-16897 - Wrong result +perfschema.socket_instances_func : MDEV-20140 - Wrong result +perfschema.socket_summary_by_event_name_func : MDEV-10622 - Wrong result +perfschema.socket_summary_by_instance_func : MDEV-19413 - Wrong result +perfschema.stage_mdl_function : Include file modified in 10.2.27 +perfschema.stage_mdl_global : MDEV-11803 - wrong result on slow builders; include file modified in 10.2.27 +perfschema.stage_mdl_procedure : MDEV-11545 - Missing row; include file modified in 10.2.27 +perfschema.stage_mdl_table : MDEV-12638 - Wrong result; include file modified in 10.2.27 +perfschema.threads_mysql : MDEV-10677 - Wrong result #----------------------------------------------------------------------- @@ -478,10 +676,10 @@ perfschema_stress.* : MDEV-10996 - Not maintained #----------------------------------------------------------------------- -plugins.auth_ed25519 : MDEV-20144 - Undefined symbol -plugins.feedback_plugin_load : Modified in 10.2.25 +plugins.feedback_plugin_load : Modified in 10.2.27 plugins.feedback_plugin_send : MDEV-7932, MDEV-11118 - Connection problems and such plugins.processlist : MDEV-16574 - Wrong result +plugins.qc_info : Modified in 10.2.27 plugins.server_audit : MDEV-9562 - crashes on sol10-sparc plugins.thread_pool_server_audit : MDEV-14295 - Wrong result @@ -498,29 +696,8 @@ rocksdb.drop_index_inplace : MDEV-14162 - Crash on shutdown rocksdb.drop_table : MDEV-14308 - Timeout rocksdb.drop_table3 : MDEV-16949 - Server crash rocksdb.dup_key_update : MDEV-17284 - Wrong result -rocksdb.locking_issues : MDEV-14464 - Wrong result; modified in 10.2.25 -rocksdb.locking_issues_case1_1_rc : Added in 10.2.25 -rocksdb.locking_issues_case1_1_rr : Added in 10.2.25 -rocksdb.locking_issues_case1_2_rc : Added in 10.2.25 -rocksdb.locking_issues_case1_2_rr : Added in 10.2.25 -rocksdb.locking_issues_case2_rc : Added in 10.2.25 -rocksdb.locking_issues_case2_rc_lsr : Added in 10.2.25 -rocksdb.locking_issues_case2_rr : Added in 10.2.25 -rocksdb.locking_issues_case2_rr_lsr : Added in 10.2.25 -rocksdb.locking_issues_case3_rc : Added in 10.2.25 -rocksdb.locking_issues_case3_rr : Added in 10.2.25 -rocksdb.locking_issues_case4_rc : Added in 10.2.25 -rocksdb.locking_issues_case4_rr : Added in 10.2.25 -rocksdb.locking_issues_case5_rc : Added in 10.2.25 -rocksdb.locking_issues_case5_rr : Added in 10.2.25 -rocksdb.locking_issues_case6_rc : Added in 10.2.25 -rocksdb.locking_issues_case6_rr : Added in 10.2.25 -rocksdb.locking_issues_case7_rc : Added in 10.2.25 -rocksdb.locking_issues_case7_rc_lsr : Added in 10.2.25 -rocksdb.locking_issues_case7_rr : Added in 10.2.25 -rocksdb.locking_issues_case7_rr_lsr : Added in 10.2.25 +rocksdb.locking_issues : MDEV-14464 - Wrong result rocksdb.mariadb_ignore_dirs : MDEV-16639 - Server crash -rocksdb.mariadb_plugin : Modified in 10.2.25 rocksdb.mariadb_port_fixes : MDEV-16387 - Wrong plan rocksdb.max_open_files : MDEV-16639 - Server crash rocksdb.perf_context : MDEV-17285 - Wrong results @@ -541,33 +718,29 @@ rocksdb_rpl.rpl_binlog_xid_count : MDEV-16644 - Server crash #----------------------------------------------------------------------- -rocksdb_sys_vars.rocksdb_update_cf_options : MDEV-16955 - Bytes lost -rocksdb_sys_vars.rocksdb_update_cf_options_basic : MDEV-16955 - Bytes lost - -#----------------------------------------------------------------------- - -roles.create_and_grant_role : MDEV-11772 - wrong result +roles.acl_statistics : Configuration added in 10.2.27 +roles.create_and_grant_role : MDEV-11772 - wrong result +roles.definer : Modified in 10.2.27 +roles.show_create_database-10463 : Modified in 10.2.27 #----------------------------------------------------------------------- rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free rpl.create_or_replace2 : MDEV-19412 - Lost connection to MySQL server -rpl.create_or_replace_mix : Include file modified in 10.2.26 +rpl.create_or_replace_mix : MDEV-20523 - Wrong result; include file modified in 10.2.26 rpl.create_or_replace_row : Include file modified in 10.2.26 -rpl.create_or_replace_statement : Include file modified in 10.2.26 +rpl.create_or_replace_statement : MDEV-20523 - Wrong result; include file modified in 10.2.26 rpl.create_select : MDEV-14121 - Assertion failure rpl.kill_race_condition : Modified in 10.2.26 rpl.last_insert_id : MDEV-10625 - warnings in error log -rpl.mdev_17588 : MDEV-20137 - Table doesn't exist; added in 10.2.26 +rpl.mdev_17588 : Modified in 10.2.27 rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log -rpl.rpl_binlog_dup_entry : Added in 10.2.25 rpl.rpl_binlog_errors : MDEV-12742 - Crash rpl.rpl_binlog_index : MDEV-9501 - Failed registering on master -rpl.rpl_blackhole : Re-enabled in 10.2.25 -rpl.rpl_blackhole_row_annotate : Added in 10.2.25 rpl.rpl_colSize : MDEV-16112 - Server crash +rpl.rpl_create_or_replace_fail : Added in 10.2.27 rpl.rpl_ctype_latin1 : MDEV-14813 - Wrong result on Mac rpl.rpl_ddl : MDEV-10417 - Fails on Mips rpl.rpl_domain_id_filter_io_crash : MDEV-12729 - Timeout in include file, MDEV-13677 - Server crash @@ -576,6 +749,7 @@ rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start rpl.rpl_extra_col_master_innodb : MDEV-16570 - Extra warning rpl.rpl_extra_col_master_myisam : MDEV-14203 - Extra warning +rpl.rpl_failed_drop_tbl_binlog : Added in 10.2.27 rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output rpl.rpl_gtid_basic : MDEV-10681 - server startup problem rpl.rpl_gtid_crash : MDEV-9501 - Failed registering on master, MDEV-13643 - Lost connection @@ -593,9 +767,11 @@ rpl.rpl_insert_id : MDEV-15197 - Wrong result rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips +rpl.rpl_known_bugs_detection : Modified in 10.2.27 rpl.rpl_mariadb_slave_capability : MDEV-11018 - Extra lines in binlog rpl.rpl_mdev12179 : MDEV-19043 - Warnings/errors rpl.rpl_mdev6020 : MDEV-15272 - Server crash +rpl.rpl_mdev_17614 : Added in 10.2.27 rpl.rpl_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed rpl.rpl_non_direct_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master_pos_wait @@ -619,14 +795,13 @@ rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" fail rpl.rpl_row_img_eng_min : MDEV-13875 - diff_files failed rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed rpl.rpl_row_index_choice : MDEV-15196 - Slave crash -rpl.rpl_row_mysqlbinlog : Re-enabled in 10.2.25 rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_row_type_conv_err_msg : Added in 10.2.27 rpl.rpl_row_until : MDEV-14052 - Master will not send events with checksum rpl.rpl_semi_sync : MDEV-11220 - Wrong result rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings -rpl.rpl_semi_sync_skip_repl : Modified in 10.2.25 rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Assorted failures; modified in 10.2.26 rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition rpl.rpl_set_statement_default_master : MDEV-13258 - Extra warning @@ -642,16 +817,20 @@ rpl.rpl_stm_multi_query : MDEV-9501 - Failed registering on mast rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion rpl.rpl_stm_stop_middle_group : MDEV-13791 - Server crash rpl.rpl_sync : MDEV-13830 - Assertion failure +rpl.rpl_sync_with_innodb_thd_conc : Added in 10.2.27 rpl.rpl_temporal_mysql56_to_mariadb53 : MDEV-9501 - Failed registering on master rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output rpl.rpl_trigger : MDEV-18055 - Wrong result rpl.rpl_truncate_3innodb : MDEV-19454 - Sporadic syntax error +rpl.rpl_user_variables : MDEV-20522 - Wrong result rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result #----------------------------------------------------------------------- -rpl-tokudb.* : MDEV-14354 - Tests fail with tcmalloc +rpl-tokudb.* : MDEV-14354 - Tests fail with tcmalloc +rpl-tokudb.rpl_tokudb_row_crash_safe : Deleted in 10.2.27 +rpl-tokudb.rpl_tokudb_stm_mixed_crash_safe : Deleted in 10.2.27 #----------------------------------------------------------------------- @@ -692,15 +871,44 @@ stress.ddl_innodb : MDEV-10635 - Testcase timeout #----------------------------------------------------------------------- +sys_vars.aria_recover_options_basic : Modified in 10.2.27 sys_vars.autocommit_func2 : MDEV-9329 - Fails on Ubuntu/s390x -sys_vars.delayed_insert_limit_func : MDEV-17683 - Wrong result +sys_vars.binlog_cache_size_basic : Modified in 10.2.27 +sys_vars.binlog_stmt_cache_size_basic : Modified in 10.2.27 +sys_vars.character_set_client_basic : Modified in 10.2.27 +sys_vars.character_set_connection_basic : Modified in 10.2.27 +sys_vars.character_set_database_basic : Modified in 10.2.27 +sys_vars.character_set_results_basic : Modified in 10.2.27 +sys_vars.character_set_server_basic : Modified in 10.2.27 +sys_vars.character_set_server_func : Modified in 10.2.27 +sys_vars.collation_connection_basic : Modified in 10.2.27 +sys_vars.collation_database_basic : Modified in 10.2.27 +sys_vars.collation_server_basic : Modified in 10.2.27 +sys_vars.delayed_insert_limit_func : Modified in 10.1.42 +sys_vars.expire_logs_days_basic : Modified in 10.2.27 +sys_vars.histogram_size_basic : Modified in 10.2.27 sys_vars.innodb_buffer_pool_dump_at_shutdown_basic : MDEV-14280 - Unexpected error sys_vars.innodb_ft_result_cache_limit : Modified in 10.2.26 +sys_vars.innodb_max_dirty_pages_pct_basic : Modified in 10.2.27 +sys_vars.innodb_max_dirty_pages_pct_lwm_basic : Modified in 10.2.27 +sys_vars.innodb_read_io_threads_basic : Configuration added in 10.2.27 +sys_vars.innodb_write_io_threads_basic : Configuration added in 10.2.27 sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash +sys_vars.log_slow_verbosity_basic : Modified in 10.2.27 +sys_vars.max_connect_errors_basic : Modified in 10.2.27 +sys_vars.max_connections_basic : Modified in 10.2.27 +sys_vars.max_heap_table_size_basic : Modified in 10.2.27 +sys_vars.max_seeks_for_key_func : Modified in 10.2.27 +sys_vars.myisam_recover_options_basic : Configuration added in 10.2.27 +sys_vars.myisam_sort_buffer_size_basic : Modified in 10.2.27 +sys_vars.optimizer_switch_basic : Modified in 10.2.27 sys_vars.rpl_init_slave_func : MDEV-10149 - Test assertion sys_vars.slow_query_log_func : MDEV-14273 - Wrong result +sys_vars.sysvars_server_embedded : Include file modified in 10.2.27 +sys_vars.sysvars_server_notembedded : Include file modified in 10.2.27 sys_vars.thread_cache_size_func : MDEV-11775 - Wrong result +sys_vars.userstat_basic : Modified in 10.2.27 sys_vars.wait_timeout_func : MDEV-12896 - Wrong result #----------------------------------------------------------------------- @@ -709,6 +917,10 @@ tokudb.change_column_all_1000_10 : MDEV-12640 - Lost connection tokudb.change_column_bin : MDEV-12640 - Lost connection tokudb.change_column_char : MDEV-12822 - Lost connection tokudb.change_column_varbin : MDEV-17682 - Timeout +tokudb.cluster_2968-0 : Modified in 10.2.27 +tokudb.cluster_2968-1 : Modified in 10.2.27 +tokudb.cluster_2968-2 : Modified in 10.2.27 +tokudb.cluster_2968-3 : Modified in 10.2.27 tokudb.cluster_filter : MDEV-10678 - Wrong execution plan tokudb.cluster_filter_hidden : MDEV-10678 - Wrong execution plan tokudb.cluster_filter_unpack_varchar : MDEV-10636 - Wrong execution plan @@ -726,6 +938,7 @@ tokudb.rows-32m-rand-insert : MDEV-12640 - Crash tokudb.rows-32m-seq-insert : MDEV-12640 - Crash tokudb.savepoint-5 : MDEV-15280 - Wrong result tokudb.type_datetime : MDEV-15193 - Wrong result +tokudb.type_varchar : Modified in 10.2.27 #----------------------------------------------------------------------- @@ -747,7 +960,13 @@ tokudb_bugs.xa-3 : MDEV-16953 - Corrupt log record found #----------------------------------------------------------------------- -tokudb_parts.partition_alter4_tokudb : MDEV-12640 - Lost connection +tokudb_parts.partition_alter4_tokudb : MDEV-12640 - Lost connection +tokudb_parts.partition_exch_qa_4_tokudb : Include file modified in 10.2.27 +tokudb_parts.partition_exch_qa_8_tokudb : Include file modified in 10.2.27 +tokudb_parts.partition_mgm_lc0_tokudb : Include file modified in 10.2.27 +tokudb_parts.partition_mgm_lc10_tokudb : Include file modified in 10.2.27 +tokudb_parts.partition_mgm_lc1_tokudb : Include file modified in 10.2.27 +tokudb_parts.partition_mgm_lc2_tokudb : Include file modified in 10.2.27 #----------------------------------------------------------------------- @@ -770,16 +989,25 @@ unit.ma_test_loghandler : MDEV-10638 - record read not ok #----------------------------------------------------------------------- -vcol.not_supported : MDEV-10639 - Testcase timeout -vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout -vcol.vcol_misc : MDEV-16651 - Wrong error message; modified in 10.2.26 +vcol.cross_db : Modified in 10.2.27 +vcol.not_supported : MDEV-10639 - Testcase timeout +vcol.update : Modified in 10.2.27 +vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout +vcol.vcol_misc : MDEV-16651 - Wrong error message; modified in 10.2.26 +vcol.vcol_select_innodb : Modified in 10.2.27 +vcol.vcol_select_myisam : Modified in 10.2.27 +vcol.vcol_sql_mode : Added in 10.2.27 +vcol.vcol_sql_mode_upgrade : Added in 10.2.27 +vcol.vcol_trigger_sp_innodb : Include file modified in 10.2.27 +vcol.vcol_trigger_sp_myisam : Include file modified in 10.2.27 #----------------------------------------------------------------------- -wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node -wsrep.mdev_6832 : MDEV-14195 - Check testcase failed -wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use -wsrep.variables : MDEV-14311 - Wrong result; MDEV-17585 - Deadlock; modified in 10.2.26 +wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node +wsrep.mdev_6832 : MDEV-14195 - Check testcase failed +wsrep.mysql_tzinfo_to_sql_symlink_skip : Added in 10.2.27 +wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use +wsrep.variables : MDEV-14311 - Wrong result; MDEV-17585 - Deadlock; modified in 10.2.26 #----------------------------------------------------------------------- From 604f80e77c054758aa449064cdc29dfa13a71922 Mon Sep 17 00:00:00 2001 From: Elena Stepanova Date: Sun, 8 Sep 2019 19:49:40 +0300 Subject: [PATCH 08/36] List of unstable tests for 10.3.18 release --- mysql-test/unstable-tests | 588 ++++++++++++++++++++++++++++---------- 1 file changed, 431 insertions(+), 157 deletions(-) diff --git a/mysql-test/unstable-tests b/mysql-test/unstable-tests index c637d511935..6883dee42b3 100644 --- a/mysql-test/unstable-tests +++ b/mysql-test/unstable-tests @@ -23,136 +23,261 @@ # ############################################################################## # -# Based on 10.3 5e112a26201d4b343df3e401f8695974a8fa852c +# Based on 10.3 f80e02e043103ab4e6ca12d9efffec6eb9aa3b74 +main.alter_table : Modified in 10.3.18 +main.alter_table_mdev539_maria : Include file modified in 10.3.18 +main.alter_table_mdev539_myisam : Include file modified in 10.3.18 main.alter_table_trans : MDEV-12084 - timeout +main.analyze : Modified in 10.3.18 +main.analyze_format_json : Modified in 10.3.18 +main.analyze_stmt : Modified in 10.3.18 +main.analyze_stmt_orderby : Modified in 10.3.18 +main.analyze_stmt_privileges2 : Modified in 10.3.18 main.analyze_stmt_slow_query_log : MDEV-12237 - Wrong result main.auth_named_pipe : MDEV-14724 - System error 2 -main.bootstrap : Modified in 10.1.41 +main.bootstrap : Modified in 10.3.18 +main.bug13633383 : Modified in 10.3.18 +main.cast : Modified in 10.2.27 main.charset_client_win : Added in 10.3.17 main.column_compression : Modified in 10.3.17 +main.compound : Modified in 10.3.18 +main.compress : Include file modified in 10.3.18 main.connect : MDEV-17282 - Wrong result main.connect2 : MDEV-13885 - Server crash main.connect_debug : Modified in 10.3.17 +main.constraints : Modified in 10.3.18 main.count_distinct2 : MDEV-11768 - timeout +main.create : Modified in 10.3.18 main.create_delayed : MDEV-10605 - failed with timeout main.create_drop_event : MDEV-16271 - Wrong result +main.cte_nonrecursive : Modified in 10.3.18 +main.cte_recursive : Modified in 10.3.18 +main.ctype_create : Modified in 10.2.27 +main.ctype_latin1_de : Modified in 10.2.27 main.ctype_ucs : MDEV-17681 - Data too long for column main.ctype_upgrade : MDEV-16945 - Error upon mysql_upgrade main.ctype_utf16 : MDEV-10675: timeout or extra warnings +main.ctype_utf16_def : Configuration modified in 10.3.18 main.ctype_utf16le : MDEV-10675: timeout or extra warnings -main.ctype_utf8_def_upgrade : Added in 10.3.16 -main.ctype_utf8mb4_innodb : MDEV-17744 - Timeout; MDEV-18567 - ASAN use-after-poison +main.ctype_utf8 : Modified in 10.3.18 +main.ctype_utf8mb4 : Modified in 10.3.18 +main.ctype_utf8mb4_heap : Include file modified in 10.3.18 +main.ctype_utf8mb4_innodb : MDEV-17744 - Timeout; MDEV-18567 - ASAN use-after-poison; include file modified in 10.3.18 +main.ctype_utf8mb4_myisam : Include file modified in 10.3.18 +main.custom_aggregates_i_s : Modified in 10.3.18 main.debug_sync : MDEV-10607 - internal error -main.derived : Modified in 10.3.17 -main.derived_cond_pushdown : Modified in 10.2.25 +main.default : Modified in 10.3.18 +main.derived : Modified in 10.3.18 +main.derived_cond_pushdown : MDEV-20532 - Floating point differences; modified in 10.3.18 main.derived_opt : MDEV-11768 - timeout -main.derived_view : Modified in 10.3.17 +main.derived_split_innodb : Modified in 10.3.18 +main.derived_view : Modified in 10.3.18 main.dirty_close : MDEV-19368 - mysqltest failed but provided no output -main.distinct : MDEV-14194 - Crash +main.distinct : MDEV-14194 - Crash; modified in 10.3.18 main.drop_bad_db_type : MDEV-15676 - Wrong result -main.dyncol : MDEV-19455 - Extra warning -main.events_2 : MDEV-13277 - Crash -main.events_bugs : MDEV-12892 - Crash +main.dyncol : MDEV-19455 - Extra warning; modified in 10.3.18 +main.events_1 : Modified in 10.3.18 +main.events_2 : MDEV-13277 - Crash; modified in 10.3.18 +main.events_bugs : MDEV-12892 - Crash; modified in 10.3.18 +main.events_grant : Modified in 10.3.18 main.events_restart : MDEV-12236 - Server shutdown problem main.events_slowlog : MDEV-12821 - Wrong result +main.except : Modified in 10.3.18 +main.explain_json : Modified in 10.3.18 main.flush : MDEV-19368 - mysqltest failed but provided no output -main.func_json : Modified in 10.3.16 -main.gis : MDEV-13411 - wrong result on P8; modified in 10.3.16 -main.grant : Modified in 10.3.17 +main.flush2 : Modified in 10.2.27 +main.func_hybrid_type : Modified in 10.3.18 +main.func_isnull : Modified in 10.3.18 +main.func_math : MDEV-20532 - Floating point differences; modified in 10.3.18 +main.func_misc : Modified in 10.3.18 +main.func_str : Modified in 10.3.18 +main.function_defaults : Modified in 10.3.18 +main.gis : MDEV-13411 - wrong result on P8 +main.grant : Configuration added in 10.3.18 +main.grant2 : Configuration added in 10.3.18 +main.grant4 : Configuration added in 10.3.18 +main.grant_cache_no_prot : Include file modified in 10.2.27 +main.grant_cache_ps_prot : Include file modified in 10.2.27 +main.grant_explain_non_select : Modified in 10.3.18 +main.greedy_optimizer : Modified in 10.3.18 +main.group_by : Modified in 10.3.18 +main.group_min_max : Modified in 10.3.18 +main.handlersocket : Configuration added in 10.3.18 main.host_cache_size_functionality : MDEV-10606 - sporadic failure on shutdown +main.index_intersect : Modified in 10.3.18 main.index_intersect_innodb : MDEV-10643 - failed with timeout main.index_merge_innodb : MDEV-7142 - Plan mismatch -main.information_schema_parameters : Modified in 10.3.17 +main.information_schema : Modified in 10.3.18 +main.information_schema-big : Modified in 10.3.18 +main.information_schema_parameters : Modified in 10.3.18 +main.information_schema_routines : Modified in 10.3.18 +main.innodb_ext_key : Modified in 10.3.18 +main.innodb_icp : Modified in 10.3.18 main.innodb_mysql_lock : MDEV-7861 - Wrong result -main.join : Modified in 10.3.17 -main.join_cache : MDEV-17743 - Bad address from storage engine MyISAM; modified in 10.3.16 -main.join_nested : Modified in 10.3.16 +main.intersect : Modified in 10.3.18 +main.invisible_field_debug : Modified in 10.3.18 +main.join : Modified in 10.3.18 +main.join_cache : MDEV-17743 - Bad address from storage engine MyISAM; modified in 10.3.18 +main.join_nested_jcl6 : Modified in 10.3.18 main.join_outer : Modified in 10.3.17 -main.join_outer_innodb : Modified in 10.3.17 +main.join_outer_innodb : Modified in 10.3.18 +main.join_outer_jcl6 : Modified in 10.3.18 main.keywords : Modified in 10.3.17 +main.kill : Modified in 10.3.18 main.kill-2 : MDEV-13257 - Wrong result main.kill_processlist-6619 : MDEV-10793 - Wrong result +main.limit_rows_examined : Modified in 10.3.18 main.loaddata : MDEV-19368 - mysqltest failed but provided no output -main.log_slow : MDEV-13263 - Wrong result +main.locale : MDEV-20521 - Missing warning +main.log_slow : MDEV-13263 - Wrong result; modified in 10.3.18 main.log_tables-big : MDEV-13408 - wrong result main.mdev-504 : MDEV-15171 - warning +main.mdev13607 : Modified in 10.3.18 main.mdev375 : MDEV-10607 - sporadic "can't connect" -main.merge : MDEV-10607 - sporadic "can't connect" -main.multi_update : Modified in 10.3.16 -main.multi_update_debug : MDEV-20136 - Debug sync point wait timed out; added in 10.3.16 -main.multi_update_innodb : Modified in 10.3.16 -main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2 +main.merge : MDEV-10607 - sporadic "can't connect"; modified in 10.3.18 +main.mrr_icp_extra : Modified in 10.3.18 +main.multi_update : Modified in 10.3.18 +main.multi_update_debug : MDEV-20136 - Debug sync point wait timed out +main.myisam : Modified in 10.3.18 +main.myisam_explain_non_select_all : Modified in 10.3.18 +main.myisam_icp : Modified in 10.3.18 +main.myisam_mrr : Modified in 10.3.18 +main.mysql : Modified in 10.3.18 +main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2; modified in 10.3.18 main.mysql_client_test_comp : MDEV-16641 - Error in exec main.mysql_client_test_nonblock : CONC-208 - Error on Power; MDEV-15096 - exec failed +main.mysql_comments : Modified in 10.3.18 main.mysql_upgrade_noengine : MDEV-14355 - Wrong result main.mysql_upgrade_ssl : MDEV-13492 - Unknown SSL error +main.mysqlcheck : Modified in 10.3.18 main.mysqld--help : Modified in 10.3.17 -main.mysqldump : MDEV-14800 - Stack smashing detected; modified in 10.3.16 -main.mysqldump-compat-102 : Added in 10.3.17 +main.mysqldump : MDEV-14800 - Stack smashing detected; modified in 10.3.18 +main.mysqldump-compat-102 : Modified in 10.3.18 +main.mysqldump-max : Modified in 10.2.27 +main.mysqldump-nl : Modified in 10.3.18 +main.mysqldump-utf8mb4 : Modified in 10.3.18 main.mysqldump_restore : Modified in 10.3.17 main.mysqlhotcopy_myisam : MDEV-10995 - Hang on debug main.mysqlslap : MDEV-11801 - timeout main.mysqltest : MDEV-13887 - Wrong result +main.named_pipe : Include file modified in 10.3.18 main.old-mode : MDEV-19373 - Wrong result -main.openssl_1 : MDEV-13492 - Unknown SSL error +main.openssl_1 : MDEV-13492 - Unknown SSL error; modified in 10.3.18 main.openssl_6975 : MDEV-17184 - Failures with OpenSSL 1.1.1 -main.order_by : Modified in 10.3.16 +main.opt_tvc : Modified in 10.3.18 main.order_by_optimizer_innodb : MDEV-10683 - Wrong result main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock +main.partition_example : Configuration added in 10.3.18 +main.partition_innodb : Modified in 10.3.18 main.partition_innodb_plugin : MDEV-12901 - Valgrind warnings main.partition_innodb_semi_consistent : MDEV-19411 - Failed to start mysqld.1 -main.plugin : Modified in 10.3.17 +main.partition_key_cache : Modified in 10.2.27 +main.partition_pruning : Modified in 10.3.18 +main.partition_range : Modified in 10.3.18 +main.plugin : Configuration added in 10.3.18 main.plugin_auth : Modified in 10.3.17 -main.plugin_not_embedded : Modified in 10.3.17 -main.pool_of_threads : MDEV-18135 - SSL error: key too small -main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count; modified in 10.3.17 +main.plugin_innodb : Configuration added in 10.3.18 +main.plugin_load : Configuration modified in 10.3.18 +main.plugin_load_option : Configuration modified in 10.3.18 +main.plugin_not_embedded : Configuration added in 10.3.18 +main.pool_of_threads : MDEV-18135 - SSL error: key too small; modified in 10.3.18 +main.ps : MDEV-11017 - Sporadic wrong Prepared_stmt_count; configuration modified in 10.3.18 main.ps_innodb : Added in 10.3.17 main.query_cache : MDEV-16180 - Wrong result -main.query_cache_debug : MDEV-15281 - Query cache is disabled +main.query_cache_debug : MDEV-15281 - Query cache is disabled; modified in 10.3.18 +main.query_cache_notembedded : Modified in 10.3.18 +main.query_cache_ps_no_prot : Modified in 10.3.18 +main.range : Modified in 10.3.18 +main.range_interrupted-13751 : Modified in 10.3.18 +main.range_mrr_icp : Modified in 10.3.18 +main.range_vs_index_merge : Modified in 10.3.18 main.range_vs_index_merge_innodb : MDEV-15283 - Server has gone away +main.repair : Modified in 10.3.18 main.repair_symlink-5543 : Modified in 10.3.17 +main.schema : Modified in 10.3.18 +main.select : MDEV-20532 - Floating point differences; modified in 10.3.18 +main.select_jcl6 : MDEV-20532 - Floating point differences +main.select_pkeycache : MDEV-20532 - Floating point differences +main.selectivity : Modified in 10.3.18 +main.selectivity_innodb : Modified in 10.3.18 +main.selectivity_no_engine : Modified in 10.3.18 main.set_statement : MDEV-13183 - Wrong result main.set_statement_notembedded : MDEV-19414 - Wrong result -main.shm : MDEV-12727 - Mismatch, ERROR 2013 +main.shm : MDEV-12727 - Mismatch, ERROR 2013; include file modified in 10.3.18 +main.show_bad_definer-5553 : Modified in 10.3.18 +main.show_check : Modified in 10.3.18 main.show_explain : MDEV-10674 - Wrong result code -main.sp : MDEV-7866 - Mismatch; modified in 10.3.17 -main.sp-security : MDEV-10607 - sporadic "can't connect" +main.sp : MDEV-7866 - Mismatch; modified in 10.3.18 +main.sp-anchor-type : Modified in 10.3.18 +main.sp-error : Modified in 10.3.18 +main.sp-security : MDEV-10607 - sporadic "can't connect"; modified in 10.3.18 main.sp_notembedded : MDEV-10607 - internal error -main.ssl : MDEV-17184 - Failures with OpenSSL 1.1.1 +main.ssl : MDEV-17184 - Failures with OpenSSL 1.1.1; modified in 10.3.18 +main.ssl-big : Modified in 10.3.18 main.ssl_ca : MDEV-10895 - SSL connection error on Power main.ssl_cipher : MDEV-17184 - Failures with OpenSSL 1.1.1 +main.ssl_compress : Modified in 10.3.18 main.ssl_connect : MDEV-13492 - Unknown SSL error main.ssl_crl : MDEV-19119 - Wrong error code main.ssl_timeout : MDEV-11244 - Crash -main.stat_tables : Modified in 10.3.16 +main.stat_tables : Modified in 10.3.18 +main.stat_tables-enospc : Modified in 10.3.18 main.stat_tables_par : MDEV-13266 - Wrong result main.stat_tables_par_innodb : MDEV-14155 - Wrong rounding +main.statistics : Modified in 10.3.18 main.status : MDEV-13255 - Wrong result -main.subselect : Modified in 10.3.17 +main.subselect : Modified in 10.3.18 +main.subselect2 : Modified in 10.3.18 +main.subselect3 : Modified in 10.3.18 +main.subselect3_jcl6 : Modified in 10.3.18 +main.subselect4 : Modified in 10.3.18 +main.subselect_exists2in : Modified in 10.3.18 +main.subselect_extra : Modified in 10.3.18 main.subselect_innodb : MDEV-10614 - Wrong result -main.subselect_no_semijoin : Modified in 10.3.16 -main.subselect_sj : Modified in 10.3.16 -main.subselect_sj_mat : Modified in 10.3.16 +main.subselect_mat_cost : Modified in 10.3.18 +main.subselect_mat_cost_bugs : Modified in 10.3.18 +main.subselect_sj : Modified in 10.3.18 +main.subselect_sj2 : Modified in 10.2.27 +main.subselect_sj2_jcl6 : Modified in 10.3.18 +main.subselect_sj2_mat : Modified in 10.3.18 +main.subselect_sj_jcl6 : Modified in 10.3.18 +main.subselect_sj_mat : Modified in 10.3.18 +main.subselect_sj_nonmerged : Modified in 10.3.18 +main.system_mysql_db_fix50117 : Modified in 10.3.18 +main.system_time_debug : Added in 10.3.18 +main.table_options-5867 : Configuration added in 10.3.18 main.tc_heuristic_recover : MDEV-14189 - Wrong result -main.temp_table : Modified in 10.3.16 -main.trigger_null-8605 : Modified in 10.3.16 +main.trigger : Modified in 10.3.18 +main.trigger-compat : Modified in 10.3.18 +main.trigger_notembedded : Modified in 10.3.18 +main.truncate_badse : Configuration added in 10.3.18 main.type_blob : MDEV-15195 - Wrong result -main.type_datetime : Modified in 10.3.17 +main.type_date : Modified in 10.3.18 +main.type_datetime : Modified in 10.3.18 main.type_datetime_hires : MDEV-10687 - Timeout -main.type_float : Modified in 10.3.16 -main.type_varchar : Modified in 10.3.17 -main.userstat : MDEV-12904 - SSL errors -main.view : Modified in 10.3.17 +main.type_float : MDEV-20532 - Floating point differences +main.type_int : Modified in 10.3.18 +main.type_time_6065 : Modified in 10.3.18 +main.type_varchar : Configuration added in 10.3.18 +main.union : Modified in 10.3.18 +main.upgrade : Configuration added in 10.3.18 +main.userstat : MDEV-12904 - SSL errors; configuration added in 10.3.18 +main.variables : Modified in 10.3.18 +main.variables-notembedded : Modified in 10.2.27 +main.view : Modified in 10.3.18 main.wait_timeout : MDEV-19023 - Lost connection to MySQL server during query -main.win : Modified in 10.3.16 +main.win : Modified in 10.3.18 +main.win_percentile : Modified in 10.3.18 main.xa : MDEV-11769 - lock wait timeout +main.xtradb_mrr : Modified in 10.3.18 #----------------------------------------------------------------------- archive.archive_bitfield : MDEV-11771 - table is marked as crashed archive.archive_symlink : MDEV-12170 - unexpected error on rmdir archive.discover : MDEV-10510 - Table is marked as crashed +archive.discover_5438 : Configuration added in 10.3.18 archive.mysqlhotcopy_archive : MDEV-10995 - Hang on debug #----------------------------------------------------------------------- @@ -162,15 +287,22 @@ archive-test_sql_discovery.discover : MDEV-16817 - Table marked as crashed #----------------------------------------------------------------------- binlog.binlog_commit_wait : MDEV-10150 - Mismatch +binlog.binlog_innodb : Configuration added in 10.3.18 binlog.binlog_killed : MDEV-12925 - Wrong result -binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown +binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown; modified in 10.3.18 +binlog.binlog_mixed_cache_stat : Include file modified in 10.3.18 +binlog.binlog_mysqlbinlog2 : Modified in 10.2.27 +binlog.binlog_mysqlbinlog_row_innodb : MDEV-20530 - Binary files differ +binlog.binlog_mysqlbinlog_row_myisam : MDEV-20530 - Binary files differ binlog.binlog_mysqlbinlog_stop_never : Added in 10.3.17 binlog.binlog_parallel_replication_marks_row : Include file modified in 10.3.17 binlog.binlog_parallel_replication_marks_stm_mix : Include file modified in 10.3.17 -binlog.binlog_row_drop_tmp_tbl : Include file modified in 10.3.17 -binlog.binlog_stm_drop_tmp_tbl : MDEV-20188 - Unknown table on exec; include file modified in 10.3.17 +binlog.binlog_row_cache_stat : Include file modified in 10.3.18 +binlog.binlog_row_drop_tmp_tbl : Include file modified in 10.3.18 +binlog.binlog_stm_cache_stat : Include file modified in 10.3.18 +binlog.binlog_stm_drop_tmp_tbl : Include file modified in 10.3.18 binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint -binlog.flashback-largebinlog : MDEV-19764 - Out of memory; added in 10.3.16 +binlog.flashback-largebinlog : MDEV-19764 - Out of memory; modified in 10.3.18 binlog.load_data_stm_view : MDEV-16948 - Wrong result #----------------------------------------------------------------------- @@ -195,9 +327,14 @@ binlog_encryption.rpl_typeconv : MDEV-14362 - Lost con #----------------------------------------------------------------------- -compat/oracle.column_compression : Modified in 10.3.17 -compat/oracle.keywords : Added in 10.3.17 -compat/oracle.mysqldump_restore : Added in 10.3.17 +compat/oracle.column_compression : Modified in 10.3.17 +compat/oracle.keywords : Added in 10.3.17 +compat/oracle.mysqldump_restore : Added in 10.3.17 +compat/oracle.sp : Modified in 10.3.18 +compat/oracle.sp-package : Modified in 10.3.18 +compat/oracle.sp-package-mysqldump : Modified in 10.3.18 +compat/oracle.sp-package-security : Modified in 10.3.18 +compat/oracle.type_blob : Modified in 10.3.18 #----------------------------------------------------------------------- @@ -217,11 +354,10 @@ disks.disks_notembedded : Added in 10.3.17 #----------------------------------------------------------------------- -encryption.compressed_import_tablespace : Added in 10.3.16 -encryption.corrupted_during_recovery : Modified in 10.3.16 encryption.create_or_replace : MDEV-12694 - Timeout; MDEV-16115 - Trying to access tablespace encryption.debug_key_management : MDEV-13841 - Timeout encryption.encrypt_and_grep : MDEV-13765 - Wrong result +encryption.file_creation : Added in 10.3.18 encryption.innochecksum : MDEV-13644 - Assertion failure; modified in 10.3.17 encryption.innodb-bad-key-change2 : MDEV-19118 - Can't connect to local MySQL server through socket encryption.innodb-checksum-algorithm : MDEV-12898 - Deadlock of threads; MDEV-16896 - Server crash @@ -229,7 +365,7 @@ encryption.innodb-compressed-blob : MDEV-14728 - Unable to get ce encryption.innodb-discard-import : MDEV-19113 - Timeout encryption.innodb-encryption-alter : MDEV-13566 - Lock wait timeout; modified in 10.3.17 encryption.innodb-first-page-read : MDEV-14356 - Timeout in wait condition -encryption.innodb-force-corrupt : MDEV-17286 - SSL error; modified in 10.3.16 +encryption.innodb-force-corrupt : MDEV-17286 - SSL error encryption.innodb-missing-key : MDEV-14728 - SSL error encryption.innodb-page_encryption : MDEV-10641 - mutex problem encryption.innodb-page_encryption_log_encryption : MDEV-17339 - Crash on restart @@ -239,6 +375,7 @@ encryption.innodb-remove-encryption : MDEV-16493 - Timeout in wait encryption.innodb-spatial-index : MDEV-13746 - Wrong result encryption.innodb_encrypt_key_rotation_age : MDEV-19763 - Timeout encryption.innodb_encrypt_log : MDEV-13725 - Wrong result +encryption.innodb_encrypt_log_corruption : Configuration modified in 10.3.18 encryption.innodb_encrypt_temporary_tables : MDEV-20142 - Wrong result; added in 10.3.17 encryption.innodb_encryption : MDEV-15675 - Timeout encryption.innodb_encryption-page-compression : MDEV-12630 - crash or assertion failure @@ -251,6 +388,7 @@ encryption.innodb_onlinealter_encryption : MDEV-17287 - SIGABRT on serve encryption.innodb_scrub : MDEV-8139 - scrubbing tests need fixing encryption.innodb_scrub_background : MDEV-8139 - scrubbing tests need fixing encryption.innodb_scrub_compressed : MDEV-8139 - scrubbing tests need fixing +encryption.tempfiles : Modified in 10.2.27 #----------------------------------------------------------------------- @@ -272,12 +410,40 @@ federated.federated_innodb : MDEV-10617 - Wrong checksum federated.federated_partition : MDEV-10417 - Fails on Mips federated.federated_transactions : MDEV-10617 - Wrong checksum federated.federatedx : MDEV-10617 - Wrong checksum +federated.federatedx_versioning : Modified in 10.3.18 #----------------------------------------------------------------------- -funcs_1.memory_views : MDEV-11773 - timeout -funcs_1.processlist_val_no_prot : MDEV-11223 - Wrong result -funcs_1.processlist_val_ps : MDEV-12175 - Wrong plan +funcs_1.innodb_storedproc_07 : Include file modified in 10.3.18 +funcs_1.innodb_storedproc_08 : Include file modified in 10.3.18 +funcs_1.innodb_trig_03e : Modified in 10.3.18 +funcs_1.is_columns : Modified in 10.3.18 +funcs_1.is_columns_innodb : Modified in 10.3.18 +funcs_1.is_columns_memory : Modified in 10.3.18 +funcs_1.is_columns_myisam : Modified in 10.3.18 +funcs_1.is_routines : Include file modified in 10.3.18 +funcs_1.is_routines_embedded : Include file modified in 10.3.18 +funcs_1.is_schemata : Include file modified in 10.3.18 +funcs_1.is_schemata_embedded : Include file modified in 10.3.18 +funcs_1.is_schemata_is_mysql_test : Modified in 10.3.18 +funcs_1.is_tables : Include file modified in 10.3.18 +funcs_1.is_tables_embedded : Include file modified in 10.3.18 +funcs_1.is_tables_innodb : Include file modified in 10.3.18 +funcs_1.is_tables_memory : Include file modified in 10.3.18 +funcs_1.is_tables_myisam : Include file modified in 10.3.18 +funcs_1.is_tables_myisam_embedded : Include file modified in 10.3.18 +funcs_1.is_triggers : Include file modified in 10.3.18 +funcs_1.is_triggers_embedded : Include file modified in 10.3.18 +funcs_1.memory_storedproc_07 : Include file modified in 10.3.18 +funcs_1.memory_storedproc_08 : Include file modified in 10.3.18 +funcs_1.memory_trig_03e : Modified in 10.3.18 +funcs_1.memory_views : MDEV-11773 - timeout +funcs_1.myisam_storedproc_07 : Include file modified in 10.3.18 +funcs_1.myisam_storedproc_08 : Include file modified in 10.3.18 +funcs_1.myisam_trig_03e : Modified in 10.3.18 +funcs_1.processlist_val_no_prot : MDEV-11223 - Wrong result +funcs_1.processlist_val_ps : MDEV-12175 - Wrong plan +funcs_1.storedproc : Modified in 10.3.18 #----------------------------------------------------------------------- @@ -286,7 +452,8 @@ funcs_2.myisam_charset : MDEV-11535 - Timeout #----------------------------------------------------------------------- -funcs_2/charset.* : MDEV-10999 - Not maintained +funcs_2/charset.* : MDEV-10999 - Not maintained +funcs_2/charset.charset_master : Modified in 10.3.18 #----------------------------------------------------------------------- @@ -299,27 +466,31 @@ galera_3nodes.* : Suite is not stable yet #----------------------------------------------------------------------- gcol.gcol_rollback : MDEV-16954 - Unknown storage engine 'InnoDB' -gcol.innodb_virtual_basic : MDEV-16950 - Failing assertion +gcol.gcol_select_innodb : Include file modified in 10.2.27 +gcol.gcol_select_myisam : Include file modified in 10.2.27 +gcol.innodb_virtual_basic : MDEV-16950 - Failing assertion; modified in 10.3.18 gcol.innodb_virtual_debug : MDEV-19114 - Assertion failure gcol.innodb_virtual_debug_purge : MDEV-16952 - Wrong result gcol.innodb_virtual_fk_restart : MDEV-17466 - Assertion failure +gcol.innodb_virtual_index : Modified in 10.3.18 gcol.innodb_virtual_purge : Modified in 10.2.25 #----------------------------------------------------------------------- innodb.101_compatibility : MDEV-13891 - Wrong result -innodb.alter_copy : MDEV-16181 - Assertion failure +innodb.alter_copy : MDEV-16181 - Assertion failure; modified in 10.3.18 innodb.alter_crash : MDEV-16944 - The process cannot access the file innodb.alter_large_dml : MDEV-20148 - Debug sync point wait timed out; added in 10.3.17 innodb.alter_missing_tablespace : Modified in 10.3.17 +innodb.auto_increment_dup : Modified in 10.3.18 innodb.autoinc_persist : MDEV-15282 - Assertion failure innodb.binlog_consistent : MDEV-10618 - Server fails to start innodb.blob-crash : Added in 10.3.17 innodb.check_ibd_filesize : Added in 10.3.17 -innodb.corrupted_during_recovery : Modified in 10.3.16 innodb.create_select : Added in 10.3.17 innodb.doublewrite : MDEV-12905 - Server crash -innodb.foreign-keys : Modified in 10.3.17 +innodb.foreign-keys : Modified in 10.3.18 +innodb.foreign_key : Modified in 10.3.18 innodb.group_commit_crash : MDEV-14191 - InnoDB registration failed innodb.group_commit_crash_no_optimize_thread : MDEV-13830 - Assertion failure innodb.ibuf_not_empty : MDEV-19021 - Wrong result @@ -327,6 +498,7 @@ innodb.innodb-16k : Modified in 10.3.17 innodb.innodb-32k : Modified in 10.3.17 innodb.innodb-32k-crash : MDEV-16953 - Corrupt log record found; MDEV-20194 - Extra warning; modified in 10.3.17 innodb.innodb-64k-crash : MDEV-13872 - Failure and crash on startup; modified in 10.3.17 +innodb.innodb-alter : Modified in 10.3.18 innodb.innodb-alter-debug : MDEV-13182 - InnoDB: adjusting FSP_SPACE_FLAGS innodb.innodb-alter-table : MDEV-10619 - Testcase timeout innodb.innodb-alter-tempfile : MDEV-15285 - Table already exists @@ -335,42 +507,52 @@ innodb.innodb-bigblob : MDEV-18655 - ASAN unknown crash innodb.innodb-blob : MDEV-12053 - Client crash innodb.innodb-change-buffer-recovery : MDEV-19115 - Lost connection to MySQL server during query innodb.innodb-fk : MDEV-13832 - Assertion failure on shutdown -innodb.innodb-get-fk : MDEV-13276 - Server crash +innodb.innodb-fkcheck : Modified in 10.3.18 +innodb.innodb-get-fk : MDEV-13276 - Server crash; modified in 10.3.18 innodb.innodb-index-online : MDEV-14809 - Cannot save statistics +innodb.innodb-mdev7046 : Modified in 10.3.18 innodb.innodb-page_compression_default : MDEV-13644 - Assertion failure innodb.innodb-page_compression_lzma : MDEV-14353 - Wrong result innodb.innodb-page_compression_snappy : MDEV-13644 - Assertion failure innodb.innodb-page_compression_tables : MDEV-13644 - Assertion failure innodb.innodb-page_compression_zip : MDEV-10641 - mutex problem -innodb.innodb-system-table-view : MDEV-20149 - Wrong result; added in 10.3.17 +innodb.innodb-read-view : Added in 10.3.18 +innodb.innodb-system-table-view : Modified in 10.3.18 innodb.innodb-table-online : MDEV-13894 - Wrong result innodb.innodb-virtual-columns-debug : MDEV-20143 - Wrong result; added in 10.3.17 innodb.innodb-wl5522 : MDEV-13644 - Assertion failure -innodb.innodb-wl5522-debug : MDEV-14200 - Wrong errno +innodb.innodb-wl5522-debug : MDEV-14200 - Wrong errno; modified in 10.3.18 innodb.innodb-wl5980-debug : Added in 10.3.17 innodb.innodb_buffer_pool_dump_pct : MDEV-20139 - Timeout in wait_condition.inc; added in 10.3.17 innodb.innodb_buffer_pool_resize : MDEV-16964 - Assertion failure innodb.innodb_buffer_pool_resize_with_chunks : MDEV-16964 - Assertion failure innodb.innodb_bug14147491 : MDEV-11808 - Index is corrupt +innodb.innodb_bug14704286 : Deleted in 10.3.18 innodb.innodb_bug30423 : MDEV-7311 - Wrong result +innodb.innodb_bug47167 : MDEV-20524 - Table 'user' is marked as crashed and should be repaired innodb.innodb_bug48024 : MDEV-14352 - Assertion failure innodb.innodb_bug59641 : MDEV-13830 - Assertion failure +innodb.innodb_bug68148 : Modified in 10.3.18 +innodb.innodb_bug84958 : Added in 10.3.18 +innodb.innodb_bulk_create_index_debug : Include file modified in 10.3.18 +innodb.innodb_bulk_create_index_flush : Configuration added in 10.3.18 innodb.innodb_bulk_create_index_replication : MDEV-15273 - Slave failed to start innodb.innodb_defrag_stats_many_tables : MDEV-14198 - Table is full -innodb.innodb_force_recovery : Modified in 10.3.16 innodb.innodb_information_schema : MDEV-8851 - Wrong result innodb.innodb_max_recordsize_32k : MDEV-14801 - Operation failed; modified in 10.3.17 innodb.innodb_max_recordsize_64k : MDEV-15203 - Wrong result; modified in 10.3.17 innodb.innodb_monitor : MDEV-10939 - Testcase timeout innodb.innodb_mysql : MDEV-19873 - Wrong result; modified in 10.3.17 +innodb.innodb_simulate_comp_failures_small : MDEV-20526 - ASAN use-after-poison innodb.innodb_stats : MDEV-10682 - wrong result innodb.innodb_stats_persistent : MDEV-17745 - Wrong result innodb.innodb_stats_persistent_debug : MDEV-14801 - Operation failed innodb.innodb_sys_semaphore_waits : MDEV-10331 - Semaphore wait innodb.innodb_zip_innochecksum2 : MDEV-13882 - Warning: difficult to find free blocks -innodb.instant_alter : Modified in 10.3.17 +innodb.instant_alter : Modified in 10.3.18 innodb.instant_alter_bugs : Modified in 10.3.17 innodb.instant_alter_debug : Modified in 10.3.17 +innodb.log_alter_table : Configuration added in 10.3.18 innodb.log_corruption : MDEV-13251 - Wrong result innodb.log_data_file_size : MDEV-14204 - Server failed to start innodb.log_file_name : MDEV-14193 - Exception @@ -381,29 +563,30 @@ innodb.monitor : MDEV-16179 - Wrong result innodb.page_id_innochecksum : Added in 10.3.17 innodb.purge : Added in 10.3.17 innodb.purge_secondary : MDEV-15681 - Wrong result -innodb.purge_secondary_mdev-16222 : Added in 10.3.17 +innodb.purge_secondary_mdev-16222 : MDEV-20528 - Debug sync point wait timed out; added in 10.3.17 innodb.purge_thread_shutdown : MDEV-13792 - Wrong result innodb.read_only_recovery : MDEV-13886 - Server crash -innodb.recovery_shutdown : MDEV-15671 - Checksum mismatch in datafile +innodb.recovery_shutdown : MDEV-15671 - Checksum mismatch in datafile; modified in 10.3.18 innodb.row_format_redundant : MDEV-15192 - Trying to access missing tablespace innodb.strict_mode : Modified in 10.3.17 innodb.table_definition_cache_debug : MDEV-14206 - Extra warning innodb.table_flags : MDEV-13572 - Wrong result; MDEV-19374 - Server failed to start innodb.temp_table_savepoint : MDEV-16182 - Wrong result innodb.temporary_table : MDEV-13265 - Wrong result +innodb.temporary_table_optimization : MDEV-20531 - Wrong result innodb.truncate_missing : Modified in 10.3.17 -innodb.trx_id_future : MDEV-20138 - Table doesn't exist in engine; added in 10.3.17 +innodb.trx_id_future : Modified in 10.3.18 innodb.undo_log : Modified in 10.3.17 innodb.undo_truncate : MDEV-17340 - Server hung -innodb.undo_truncate_recover : MDEV-17679 - Server has gone away +innodb.undo_truncate_recover : MDEV-17679 - Server has gone away; modified in 10.3.18 innodb.update_time : MDEV-14804 - Wrong result innodb.xa_recovery : MDEV-15279 - mysqld got exception #----------------------------------------------------------------------- innodb_fts.fulltext2 : Modified in 10.3.17 -innodb_fts.innodb_ft_aux_table : Added in 10.3.16 -innodb_fts.innodb_fts_misc : Modified in 10.3.17 +innodb_fts.fulltext_table_evict : Modified in 10.3.18 +innodb_fts.innodb_fts_misc : Modified in 10.3.18 innodb_fts.innodb_fts_misc_debug : MDEV-14156 - Unexpected warning innodb_fts.innodb_fts_plugin : MDEV-13888 - Errors in server log innodb_fts.innodb_fts_stopword_charset : MDEV-13259 - Table crashed @@ -414,20 +597,20 @@ innodb_fts.sync_ddl : MDEV-18654 - Assertion failure innodb_gis.alter_spatial_index : MDEV-13745 - Server crash innodb_gis.kill_server : MDEV-16941 - Checksum mismatch -innodb_gis.rtree_add_index : Added in 10.3.16 -innodb_gis.rtree_compress2 : MDEV-16269 - Wrong result +innodb_gis.rtree_compress2 : MDEV-16269 - Wrong result; modified in 10.3.18 innodb_gis.rtree_concurrent_srch : MDEV-15284 - Wrong result with embedded innodb_gis.rtree_purge : MDEV-15275 - Timeout innodb_gis.rtree_recovery : MDEV-15274 - Error on check innodb_gis.rtree_split : MDEV-14208 - Too many arguments innodb_gis.rtree_undo : MDEV-14456 - Timeout in include file innodb_gis.types : MDEV-15679 - Table is marked as crashed +innodb_gis.update_root : Modified in 10.3.18 #----------------------------------------------------------------------- innodb_zip.cmp_per_index : MDEV-14490 - Table is marked as crashed innodb_zip.innochecksum_3 : MDEV-13279 - Extra warnings -innodb_zip.wl5522_debug_zip : MDEV-11600 - Operating system error number 2 +innodb_zip.wl5522_debug_zip : MDEV-11600 - Operating system error number 2; modified in 10.3.18 innodb_zip.wl6470_1 : MDEV-14240 - Assertion failure innodb_zip.wl6501_1 : MDEV-10891 - Can't create UNIX socket innodb_zip.wl6501_scale_1 : MDEV-13254 - Timeout, MDEV-14104 - Error 192 @@ -435,17 +618,25 @@ innodb_zip.wl6501_scale_1 : MDEV-13254 - Timeout, MDEV-14104 - Error 192 #----------------------------------------------------------------------- maria.alter : Modified in 10.3.17 +maria.icp : Modified in 10.3.18 maria.insert_select : MDEV-12757 - Timeout maria.insert_select-7314 : MDEV-16492 - Timeout maria.kill : Added in 10.3.17 maria.maria : MDEV-14430 - Extra warning -maria.maria-no-logging : MDEV-20196 - Crash on shutdown or server can't start +maria.maria-big : Modified in 10.3.18 +maria.maria-gis-recovery : Modified in 10.3.18 +maria.maria-no-logging : MDEV-20196 - Crash on shutdown or server can't start; modified in 10.3.18 +maria.maria-recover : Modified in 10.3.18 +maria.maria-recovery : Modified in 10.3.18 +maria.maria3 : Modified in 10.3.18 +maria.partition : Added in 10.3.18 maria.temporary : Added in 10.3.17 #----------------------------------------------------------------------- mariabackup.absolute_ibdata_paths : MDEV-16571 - Wrong result mariabackup.apply-log-only : MDEV-20135 - Timeout +mariabackup.big_innodb_log : Added in 10.3.18 mariabackup.data_directory : MDEV-15270 - Error on exec mariabackup.full_backup : MDEV-16571 - Wrong result mariabackup.huge_lsn : MDEV-15662 - Sequence number is in the future; MDEV-18569 - Table doesn't exist @@ -480,7 +671,7 @@ mroonga/wrapper.repair_table_no_index_file : MDEV-14807 - Wrong error message multi_source.gtid : MDEV-14202 - Crash multi_source.info_logs : MDEV-12629 - Valgrind, MDEV-10042 - wrong result -multi_source.mdev-8874 : MDEV-20101 - Assertion failure; added in 10.3.17 +multi_source.mdev-8874 : Re-enabled in 10.3.18; added in 10.3.17 multi_source.mdev-9544 : MDEV-19415 - AddressSanitizer: heap-use-after-free multi_source.multisource : MDEV-10417 - Fails on Mips multi_source.reset_slave : MDEV-10690 - Wrong result @@ -498,7 +689,23 @@ parts.partition_auto_increment_archive : MDEV-16491 - Marked as crashed and shou parts.partition_auto_increment_maria : MDEV-14430 - Extra warning parts.partition_debug_innodb : MDEV-10891 - Can't create UNIX socket; MDEV-15095 - Table doesn't exist parts.partition_exch_qa_10 : MDEV-11765 - wrong result +parts.partition_exch_qa_4_innodb : Include file modified in 10.3.18 +parts.partition_exch_qa_4_myisam : Include file modified in 10.3.18 +parts.partition_exch_qa_8_innodb : Include file modified in 10.3.18 +parts.partition_exch_qa_8_myisam : Include file modified in 10.3.18 parts.partition_innodb_status_file : MDEV-12901 - Valgrind +parts.partition_mgm_lc0_archive : Include file modified in 10.3.18 +parts.partition_mgm_lc0_innodb : Include file modified in 10.3.18 +parts.partition_mgm_lc0_memory : Include file modified in 10.3.18 +parts.partition_mgm_lc0_myisam : Include file modified in 10.3.18 +parts.partition_mgm_lc1_archive : Include file modified in 10.3.18 +parts.partition_mgm_lc1_innodb : Include file modified in 10.3.18 +parts.partition_mgm_lc1_memory : Include file modified in 10.3.18 +parts.partition_mgm_lc1_myisam : Include file modified in 10.3.18 +parts.partition_mgm_lc2_archive : Include file modified in 10.3.18 +parts.partition_mgm_lc2_innodb : Include file modified in 10.3.18 +parts.partition_mgm_lc2_memory : Include file modified in 10.3.18 +parts.partition_mgm_lc2_myisam : Include file modified in 10.3.18 parts.partition_special_innodb : MDEV-16942 - Timeout #----------------------------------------------------------------------- @@ -507,25 +714,40 @@ percona.* : MDEV-10997 - Not maintained #----------------------------------------------------------------------- -perfschema.connect_attrs : MDEV-17283 - Wrong result -perfschema.dml_file_instances : MDEV-15179 - Wrong result -perfschema.dml_threads : MDEV-17746 - Wrong errno -perfschema.func_file_io : MDEV-5708 - fails for s390x -perfschema.func_mutex : MDEV-5708 - fails for s390x -perfschema.hostcache_ipv4_addrinfo_again_allow : MDEV-12759 - Crash -perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash -perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash -perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash -perfschema.privilege_table_io : MDEV-13184 - Extra lines -perfschema.relaylog : MDEV-18134 - Wrong result -perfschema.rpl_gtid_func : MDEV-16897 - Wrong result -perfschema.socket_instances_func : MDEV-20140 - Wrong result -perfschema.socket_summary_by_event_name_func : MDEV-10622 - Wrong result -perfschema.socket_summary_by_instance_func : MDEV-19413 - Wrong result -perfschema.stage_mdl_global : MDEV-11803 - wrong result on slow builders -perfschema.stage_mdl_procedure : MDEV-11545 - Missing row -perfschema.stage_mdl_table : MDEV-12638 - Wrong result -perfschema.threads_mysql : MDEV-10677 - Wrong result +perfschema.connect_attrs : MDEV-17283 - Wrong result +perfschema.dml_file_instances : MDEV-15179 - Wrong result +perfschema.dml_threads : MDEV-17746 - Wrong errno +perfschema.func_file_io : MDEV-5708 - fails for s390x +perfschema.func_mutex : MDEV-5708 - fails for s390x +perfschema.hostcache_ipv4_addrinfo_again_allow : MDEV-12759 - Crash +perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash; configuration modified in 10.3.18 +perfschema.hostcache_ipv6_addrinfo_again_deny : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash; configuration modified in 10.3.18 +perfschema.hostcache_ipv6_addrinfo_bad_deny : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_addrinfo_good_allow : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_addrinfo_good_deny : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_addrinfo_noname_allow : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_addrinfo_noname_deny : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_auth_plugin : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_blocked : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_max_con : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_nameinfo_again_allow : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_nameinfo_again_deny : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_nameinfo_noname_allow : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_nameinfo_noname_deny : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_passwd : Configuration modified in 10.3.18 +perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash; configuration modified in 10.3.18 +perfschema.privilege_table_io : MDEV-13184 - Extra lines +perfschema.relaylog : MDEV-18134 - Wrong result +perfschema.rpl_gtid_func : MDEV-16897 - Wrong result +perfschema.socket_instances_func : MDEV-20140 - Wrong result +perfschema.socket_summary_by_event_name_func : MDEV-10622 - Wrong result +perfschema.socket_summary_by_instance_func : MDEV-19413 - Wrong result +perfschema.stage_mdl_function : Include file modified in 10.3.18 +perfschema.stage_mdl_global : MDEV-11803 - wrong result on slow builders; include file modified in 10.3.18 +perfschema.stage_mdl_procedure : MDEV-11545 - Missing row; include file modified in 10.3.18 +perfschema.stage_mdl_table : MDEV-12638 - Wrong result; include file modified in 10.3.18 +perfschema.threads_mysql : MDEV-10677 - Wrong result #----------------------------------------------------------------------- @@ -533,9 +755,10 @@ perfschema_stress.* : MDEV-10996 - Not maintained #----------------------------------------------------------------------- -plugins.feedback_plugin_load : Modified in 10.3.16 +plugins.feedback_plugin_load : Modified in 10.3.18 plugins.feedback_plugin_send : MDEV-7932, MDEV-11118 - Connection problems and such plugins.processlist : MDEV-16574 - Wrong result +plugins.qc_info : Modified in 10.3.18 plugins.server_audit : MDEV-14295 - Wrong result plugins.thread_pool_server_audit : MDEV-14295 - Wrong result @@ -552,29 +775,8 @@ rocksdb.drop_index_inplace : MDEV-14162 - Crash on shutdown rocksdb.drop_table : MDEV-14308 - Timeout rocksdb.drop_table3 : MDEV-16949 - Server crash rocksdb.dup_key_update : MDEV-17284 - Wrong result -rocksdb.locking_issues : MDEV-14464 - Wrong result; modified in 10.3.16 -rocksdb.locking_issues_case1_1_rc : Added in 10.3.16 -rocksdb.locking_issues_case1_1_rr : Added in 10.3.16 -rocksdb.locking_issues_case1_2_rc : Added in 10.3.16 -rocksdb.locking_issues_case1_2_rr : Added in 10.3.16 -rocksdb.locking_issues_case2_rc : Added in 10.3.16 -rocksdb.locking_issues_case2_rc_lsr : Added in 10.3.16 -rocksdb.locking_issues_case2_rr : Added in 10.3.16 -rocksdb.locking_issues_case2_rr_lsr : Added in 10.3.16 -rocksdb.locking_issues_case3_rc : Added in 10.3.16 -rocksdb.locking_issues_case3_rr : Added in 10.3.16 -rocksdb.locking_issues_case4_rc : Added in 10.3.16 -rocksdb.locking_issues_case4_rr : Added in 10.3.16 -rocksdb.locking_issues_case5_rc : Added in 10.3.16 -rocksdb.locking_issues_case5_rr : Added in 10.3.16 -rocksdb.locking_issues_case6_rc : Added in 10.3.16 -rocksdb.locking_issues_case6_rr : Added in 10.3.16 -rocksdb.locking_issues_case7_rc : Added in 10.3.16 -rocksdb.locking_issues_case7_rc_lsr : Added in 10.3.16 -rocksdb.locking_issues_case7_rr : Added in 10.3.16 -rocksdb.locking_issues_case7_rr_lsr : Added in 10.3.16 +rocksdb.locking_issues : MDEV-14464 - Wrong result rocksdb.mariadb_ignore_dirs : MDEV-16639 - Server crash -rocksdb.mariadb_plugin : Modified in 10.3.16 rocksdb.mariadb_port_fixes : MDEV-16387 - Wrong plan rocksdb.max_open_files : MDEV-16639 - Server crash rocksdb.perf_context : MDEV-17285 - Wrong results @@ -596,12 +798,13 @@ rocksdb_rpl.rpl_binlog_xid_count : MDEV-16644 - Crash #----------------------------------------------------------------------- rocksdb_sys_vars.rocksdb_rate_limiter_bytes_per_sec_basic : MDEV-16639 - Crash -rocksdb_sys_vars.rocksdb_update_cf_options : MDEV-16955 - Bytes lost -rocksdb_sys_vars.rocksdb_update_cf_options_basic : MDEV-16955 - Bytes lost #----------------------------------------------------------------------- -roles.create_and_grant_role : MDEV-11772 - wrong result +roles.acl_statistics : Configuration added in 10.3.18 +roles.create_and_grant_role : MDEV-11772 - wrong result +roles.definer : Modified in 10.3.18 +roles.show_create_database-10463 : Modified in 10.3.18 #----------------------------------------------------------------------- @@ -613,16 +816,15 @@ rpl.create_or_replace_statement : Include file modified in 10.3.17 rpl.create_select : MDEV-14121 - Assertion failure rpl.kill_race_condition : Modified in 10.3.17 rpl.last_insert_id : MDEV-10625 - warnings in error log -rpl.mdev_17588 : MDEV-20137 - Table doesn't exist; added in 10.3.17 +rpl.mdev_17588 : Modified in 10.3.18 rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log -rpl.rpl_binlog_dup_entry : Added in 10.3.16 rpl.rpl_binlog_errors : MDEV-12742 - Crash rpl.rpl_binlog_index : MDEV-9501 - Failed registering on master -rpl.rpl_blackhole : Modified in 10.3.16 -rpl.rpl_blackhole_row_annotate : Added in 10.3.16 rpl.rpl_colSize : MDEV-16112 - Server crash +rpl.rpl_corruption : MDEV-20527 - Slave stopped with wrong error code +rpl.rpl_create_or_replace_fail : Added in 10.3.18 rpl.rpl_ctype_latin1 : MDEV-14813 - Wrong result on Mac rpl.rpl_ddl : MDEV-10417 - Fails on Mips rpl.rpl_domain_id_filter_io_crash : MDEV-12729 - Timeout in include file, MDEV-13677 - Server crash @@ -631,6 +833,7 @@ rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result; MDEV-19043 rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start rpl.rpl_extra_col_master_innodb : MDEV-16570 - Extra warning rpl.rpl_extra_col_master_myisam : MDEV-14203 - Extra warning +rpl.rpl_failed_drop_tbl_binlog : Added in 10.3.18 rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output rpl.rpl_gtid_basic : MDEV-10681 - server startup problem rpl.rpl_gtid_crash : MDEV-9501 - Failed registering on master, MDEV-13643 - Lost connection @@ -649,9 +852,11 @@ rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips rpl.rpl_ipv4_as_ipv6 : MDEV-20147 - Incorrect checksum for freed object +rpl.rpl_known_bugs_detection : Modified in 10.2.27 rpl.rpl_mariadb_slave_capability : MDEV-11018 - Extra lines in binlog rpl.rpl_mdev12179 : MDEV-19043 - Table marked as crashed rpl.rpl_mdev6020 : MDEV-15272 - Server crash +rpl.rpl_mdev_17614 : Added in 10.3.18 rpl.rpl_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed rpl.rpl_non_direct_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master_pos_wait @@ -676,14 +881,13 @@ rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" fail rpl.rpl_row_img_eng_min : MDEV-13875 - diff_files failed rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed rpl.rpl_row_index_choice : MDEV-15196 - Slave crash -rpl.rpl_row_mysqlbinlog : Modified in 10.3.16 rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_row_type_conv_err_msg : Added in 10.3.18 rpl.rpl_row_until : MDEV-14052 - Master will not send events with checksum rpl.rpl_semi_sync : MDEV-11220 - Wrong result rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings -rpl.rpl_semi_sync_skip_repl : Modified in 10.3.16 rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Assorted failures rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition rpl.rpl_semisync_ali_issues : MDEV-16272 - Wrong result @@ -700,19 +904,24 @@ rpl.rpl_stm_multi_query : MDEV-9501 - Failed registering on mast rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion rpl.rpl_stm_stop_middle_group : MDEV-13791 - Server crash rpl.rpl_sync : MDEV-13830 - Assertion failure +rpl.rpl_sync_with_innodb_thd_conc : Added in 10.3.18 rpl.rpl_temporal_mysql56_to_mariadb53 : MDEV-9501 - Failed registering on master rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output rpl.rpl_trigger : MDEV-18055 - Wrong result rpl.rpl_truncate_3innodb : MDEV-19454 - Syntax error +rpl.rpl_user_variables : MDEV-20522 - Wrong result rpl.rpl_variables : MDEV-20150 - Server crash rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result rpl.show_status_stop_slave_race-7126 : MDEV-17438 - Timeout #----------------------------------------------------------------------- -rpl-tokudb.* : MDEV-14354 - Tests fail with tcmalloc -rpl-tokudb.rpl_tokudb_commit_after_flush : MDEV-16966 - Server crash +rpl-tokudb.* : MDEV-14354 - Tests fail with tcmalloc +rpl-tokudb.rpl_deadlock_tokudb : MDEV-20529 - mysqltest failed but provided no output +rpl-tokudb.rpl_tokudb_commit_after_flush : MDEV-16966 - Server crash +rpl-tokudb.rpl_tokudb_row_crash_safe : Deleted in 10.2.27 +rpl-tokudb.rpl_tokudb_stm_mixed_crash_safe : Deleted in 10.2.27 #----------------------------------------------------------------------- @@ -759,15 +968,48 @@ stress.ddl_innodb : MDEV-10635 - Testcase timeout #----------------------------------------------------------------------- +sys_vars.aria_recover_options_basic : Modified in 10.3.18 sys_vars.autocommit_func2 : MDEV-9329 - Fails on Ubuntu/s390x -sys_vars.delayed_insert_limit_func : MDEV-17683 - Wrong result +sys_vars.binlog_cache_size_basic : Modified in 10.3.18 +sys_vars.binlog_stmt_cache_size_basic : Modified in 10.3.18 +sys_vars.character_set_client_basic : Modified in 10.3.18 +sys_vars.character_set_connection_basic : Modified in 10.3.18 +sys_vars.character_set_database_basic : Modified in 10.3.18 +sys_vars.character_set_results_basic : Modified in 10.3.18 +sys_vars.character_set_server_basic : Modified in 10.3.18 +sys_vars.character_set_server_func : Modified in 10.3.18 +sys_vars.collation_connection_basic : Modified in 10.3.18 +sys_vars.collation_database_basic : Modified in 10.3.18 +sys_vars.collation_server_basic : Modified in 10.3.18 +sys_vars.expire_logs_days_basic : Modified in 10.2.27 +sys_vars.histogram_size_basic : Modified in 10.2.27 sys_vars.innodb_buffer_pool_dump_at_shutdown_basic : MDEV-14280 - Unexpected error sys_vars.innodb_ft_result_cache_limit : Modified in 10.2.26 +sys_vars.innodb_max_dirty_pages_pct_basic : Modified in 10.3.18 +sys_vars.innodb_max_dirty_pages_pct_lwm_basic : Modified in 10.3.18 +sys_vars.innodb_read_io_threads_basic : Configuration added in 10.3.18 +sys_vars.innodb_write_io_threads_basic : Configuration added in 10.3.18 sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash +sys_vars.log_slow_verbosity_basic : Modified in 10.3.18 +sys_vars.max_connect_errors_basic : Modified in 10.2.27 +sys_vars.max_connections_basic : Modified in 10.3.18 +sys_vars.max_heap_table_size_basic : Modified in 10.2.27 +sys_vars.max_seeks_for_key_func : Modified in 10.3.18 +sys_vars.myisam_recover_options_basic : Configuration added in 10.3.18 +sys_vars.myisam_sort_buffer_size_basic : Modified in 10.3.18 +sys_vars.optimizer_switch_basic : Modified in 10.3.18 +sys_vars.optimizer_use_condition_selectivity_basic : Modified in 10.3.18 +sys_vars.replicate_ignore_table_basic : Modified in 10.3.18 sys_vars.rpl_init_slave_func : MDEV-10149 - Test assertion sys_vars.slow_query_log_func : MDEV-14273 - Wrong result +sys_vars.sync_binlog_basic : Modified in 10.3.18 +sys_vars.sysvars_debug : Modified in 10.3.18 +sys_vars.sysvars_innodb : Modified in 10.3.18 +sys_vars.sysvars_server_embedded : Include file modified in 10.3.18 +sys_vars.sysvars_server_notembedded : Include file modified in 10.3.18 sys_vars.thread_cache_size_func : MDEV-11775 - Wrong result +sys_vars.userstat_basic : Modified in 10.3.18 sys_vars.wait_timeout_func : MDEV-12896 - Wrong result sys_vars.wsrep_provider_basic : MDEV-19457 - Assertion failure @@ -777,6 +1019,10 @@ tokudb.change_column_all_1000_10 : MDEV-12640 - Lost connection tokudb.change_column_bin : MDEV-12640 - Lost connection tokudb.change_column_char : MDEV-12822 - Lost connection tokudb.change_column_varbin : MDEV-17682 - Timeout +tokudb.cluster_2968-0 : Modified in 10.3.18 +tokudb.cluster_2968-1 : Modified in 10.3.18 +tokudb.cluster_2968-2 : Modified in 10.3.18 +tokudb.cluster_2968-3 : Modified in 10.3.18 tokudb.cluster_filter : MDEV-10678 - Wrong execution plan tokudb.cluster_filter_hidden : MDEV-10678 - Wrong execution plan tokudb.cluster_filter_unpack_varchar : MDEV-10636 - Wrong execution plan @@ -794,6 +1040,7 @@ tokudb.rows-32m-rand-insert : MDEV-12640 - Crash tokudb.rows-32m-seq-insert : MDEV-12640 - Crash tokudb.savepoint-5 : MDEV-15280 - Wrong result tokudb.type_datetime : MDEV-15193 - Wrong result +tokudb.type_varchar : Modified in 10.3.18 #----------------------------------------------------------------------- @@ -815,7 +1062,13 @@ tokudb_bugs.xa-3 : MDEV-16953 - Corrupt log record found #----------------------------------------------------------------------- -tokudb_parts.partition_alter4_tokudb : MDEV-12640 - Lost connection +tokudb_parts.partition_alter4_tokudb : MDEV-12640 - Lost connection +tokudb_parts.partition_exch_qa_4_tokudb : Include file modified in 10.3.18 +tokudb_parts.partition_exch_qa_8_tokudb : Include file modified in 10.3.18 +tokudb_parts.partition_mgm_lc0_tokudb : Include file modified in 10.3.18 +tokudb_parts.partition_mgm_lc10_tokudb : Include file modified in 10.3.18 +tokudb_parts.partition_mgm_lc1_tokudb : Include file modified in 10.3.18 +tokudb_parts.partition_mgm_lc2_tokudb : Include file modified in 10.3.18 #----------------------------------------------------------------------- @@ -838,29 +1091,50 @@ unit.ma_test_loghandler : MDEV-10638 - record read not ok #----------------------------------------------------------------------- -vcol.not_supported : MDEV-10639 - Testcase timeout -vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout -vcol.vcol_misc : MDEV-16651 - Wrong error message; modified in 10.3.17 +vcol.cross_db : Modified in 10.3.18 +vcol.not_supported : MDEV-10639 - Testcase timeout +vcol.update : Modified in 10.3.18 +vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout +vcol.vcol_misc : MDEV-16651 - Wrong error message; modified in 10.3.17 +vcol.vcol_select_innodb : Modified in 10.3.18 +vcol.vcol_select_myisam : Modified in 10.3.18 +vcol.vcol_sql_mode : Added in 10.3.18 +vcol.vcol_sql_mode_upgrade : Added in 10.3.18 +vcol.vcol_trigger_sp_innodb : Include file modified in 10.3.18 +vcol.vcol_trigger_sp_myisam : Include file modified in 10.3.18 #----------------------------------------------------------------------- -versioning.create : Modified in 10.3.16 -versioning.engines : New combination added in 10.3.16 -versioning.partition : Modified in 10.3.17 -versioning.replace : Modified in 10.3.16 -versioning.rpl : Modified in 10.3.16 -versioning.simple : Modified in 10.3.17 -versioning.truncate : Modified in 10.3.17 -versioning.trx_id : Modified in 10.3.17 -versioning.update-big : MDEV-15458 - Server crash; added in 10.3.16 +versioning.alter : Modified in 10.3.18 +versioning.auto_increment : Include file modified in 10.3.18 +versioning.commit_id : Include file modified in 10.3.18 +versioning.create : Modified in 10.3.18 +versioning.cte : Modified in 10.3.18 +versioning.delete : Modified in 10.3.18 +versioning.derived : Modified in 10.3.18 +versioning.foreign : Modified in 10.3.18 +versioning.insert : Include file modified in 10.3.18 +versioning.online : Modified in 10.3.18 +versioning.partition : Modified in 10.3.18 +versioning.partition_innodb : Modified in 10.3.18 +versioning.replace : Modified in 10.3.18 +versioning.select : Modified in 10.3.18 +versioning.select2 : Include file modified in 10.3.18 +versioning.simple : Modified in 10.3.17 +versioning.truncate : Modified in 10.3.18 +versioning.trx_id : Modified in 10.3.18 +versioning.update : Include file modified in 10.3.18 +versioning.update-big : Modified in 10.3.18 +versioning.view : Modified in 10.3.18 #----------------------------------------------------------------------- -wsrep.* : suite.pm modified in 10.3.17 -wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node -wsrep.mdev_6832 : MDEV-14195 - Check testcase failed -wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use -wsrep.variables : MDEV-14311 - Wrong result; MDEV-17585 - Deadlock; modified in 10.3.17 +wsrep.* : suite.pm modified in 10.3.17 +wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node +wsrep.mdev_6832 : MDEV-14195 - Check testcase failed +wsrep.mysql_tzinfo_to_sql_symlink_skip : Added in 10.3.18 +wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use +wsrep.variables : MDEV-14311 - Wrong result; MDEV-17585 - Deadlock; modified in 10.3.17 #----------------------------------------------------------------------- From 7591a24fa6e2ccff998fdfd119e883d3dddb22a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Mon, 9 Sep 2019 13:06:33 +0300 Subject: [PATCH 09/36] MDEV-20531: innodb.temporary_table_optimisation fails MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Try to use more deterministic floating-point operations. Apparently, 2.2 > 2.2 wrongly holds on many platforms, but not ppc64le on the compiler used on Red Had Enterprise Linux 8. The reason could be an infinite binary presentation: 2.2 = 0b10.001100110011… With t1_f = 2.5 = 0b10.1, t1_f > 2.5 would no longer hold on AMD64. Let us replace the 2.2 with 2.5 and compare t1_f >= 2.5 in order to get more consistent results across all platforms. --- .../r/temporary_table_optimization.result | 18 +++++++++--------- .../innodb/t/temporary_table_optimization.test | 8 ++++---- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/mysql-test/suite/innodb/r/temporary_table_optimization.result b/mysql-test/suite/innodb/r/temporary_table_optimization.result index 63c4f388bf7..c3325d86386 100644 --- a/mysql-test/suite/innodb/r/temporary_table_optimization.result +++ b/mysql-test/suite/innodb/r/temporary_table_optimization.result @@ -112,7 +112,7 @@ count(*) drop table t1; drop procedure populate_t1; create temporary table t1 (t1_i int, t1_f float) engine = innodb; -insert into t1 values (1, 1.1), (2, 2.2), (3, 2.2), (4, 4.4); +insert into t1 values (1, 1.1), (2, 2.5), (3, 2.5), (4, 4.4); explain select * from t1 where t1_i = 1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where @@ -124,22 +124,22 @@ select * from t1 where t1_i = 1; t1_i t1_f 1 1.1 alter table t1 add unique index sec_index(t1_f); -ERROR 23000: Duplicate entry '2.2' for key 'sec_index' +ERROR 23000: Duplicate entry '2.5' for key 'sec_index' alter table t1 add index sec_index(t1_f); -explain select * from t1 where t1_f > 2.2; +explain select * from t1 where t1_f >= 2.5; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL sec_index NULL NULL NULL 4 Using where -select * from t1 where t1_f > 2.2; +select * from t1 where t1_f >= 2.5; t1_i t1_f -2 2.2 -3 2.2 +2 2.5 +3 2.5 4 4.4 alter table t1 add column (t1_c char(10)); select * from t1; t1_i t1_f t1_c 1 1.1 NULL -2 2.2 NULL -3 2.2 NULL +2 2.5 NULL +3 2.5 NULL 4 4.4 NULL insert into t1 values (5, 5.5, 'krunal'); alter table t1 drop column t1_f; @@ -150,7 +150,7 @@ t1 CREATE TEMPORARY TABLE `t1` ( `t1_c` char(10) DEFAULT NULL, UNIQUE KEY `pri_index` (`t1_i`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 -select * from t1 where t1_f > 2.2; +select * from t1 where t1_f >= 2.5; ERROR 42S22: Unknown column 't1_f' in 'where clause' alter table t1 add index sec_index2(t1_c), algorithm=inplace; ERROR 0A000: ALGORITHM=INPLACE is not supported for this operation. Try ALGORITHM=COPY diff --git a/mysql-test/suite/innodb/t/temporary_table_optimization.test b/mysql-test/suite/innodb/t/temporary_table_optimization.test index ae41c87839b..967965f9998 100644 --- a/mysql-test/suite/innodb/t/temporary_table_optimization.test +++ b/mysql-test/suite/innodb/t/temporary_table_optimization.test @@ -100,7 +100,7 @@ drop procedure populate_t1; # 3. Alter of temp-table. # create temporary table t1 (t1_i int, t1_f float) engine = innodb; -insert into t1 values (1, 1.1), (2, 2.2), (3, 2.2), (4, 4.4); +insert into t1 values (1, 1.1), (2, 2.5), (3, 2.5), (4, 4.4); # explain select * from t1 where t1_i = 1; alter table t1 add unique index pri_index(t1_i); @@ -110,8 +110,8 @@ select * from t1 where t1_i = 1; --error ER_DUP_ENTRY alter table t1 add unique index sec_index(t1_f); alter table t1 add index sec_index(t1_f); -explain select * from t1 where t1_f > 2.2; -select * from t1 where t1_f > 2.2; +explain select * from t1 where t1_f >= 2.5; +select * from t1 where t1_f >= 2.5; # alter table t1 add column (t1_c char(10)); select * from t1; @@ -120,7 +120,7 @@ insert into t1 values (5, 5.5, 'krunal'); alter table t1 drop column t1_f; show create table t1; --error ER_BAD_FIELD_ERROR -select * from t1 where t1_f > 2.2; +select * from t1 where t1_f >= 2.5; # --error ER_ALTER_OPERATION_NOT_SUPPORTED alter table t1 add index sec_index2(t1_c), algorithm=inplace; From b8b4b6594ed9fb5dd14bb9e4012ef9add8575c69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lindstr=C3=B6m?= Date: Thu, 5 Sep 2019 07:43:57 +0300 Subject: [PATCH 10/36] MDEV-19926: Galera SST tests fail Enable after SST script changes. --- mysql-test/suite/galera/disabled.def | 2 -- 1 file changed, 2 deletions(-) diff --git a/mysql-test/suite/galera/disabled.def b/mysql-test/suite/galera/disabled.def index c0dd58f85b9..1e2833042fc 100644 --- a/mysql-test/suite/galera/disabled.def +++ b/mysql-test/suite/galera/disabled.def @@ -18,7 +18,6 @@ galera_as_master_gtid : Requires MySQL GTID galera_as_master_gtid_change_master : Requires MySQL GTID galera_as_slave_preordered : wsrep-preordered feature not merged to MariaDB galera_as_slave_replication_bundle : MDEV-15785 OPTION_GTID_BEGIN is set in Gtid_log_event::do_apply_event() -galera_autoinc_sst_mariabackup : MDEV-19926 Galera SST tests fail galera_binlog_rows_query_log_events: MariaDB does not support binlog_rows_query_log_events galera_binlog_stmt_autoinc: MDEV-19959 Galera test failure on galera_binlog_stmt_autoinc galera_flush : MariaDB does not have global.thread_statistics @@ -27,7 +26,6 @@ galera_ist_mariabackup : MDEV-18829 test leaves port open galera_ist_progress : MDEV-15236 fails when trying to read transfer status galera_migrate : MariaDB does not support START SLAVE USER galera_ssl_upgrade : MDEV-19950 Galera test failure on galera_ssl_upgrade -galera_sst_mariabackup_encrypt_with_key : MDEV-19926 Galera SST tests fail galera_var_node_address : MDEV-20485 Galera test failure on galera.galera_var_node_address galera_wan : MDEV-17259 Test failure on galera.galera_wan partition : MDEV-19958 Galera test failure on galera.partition From caa7bb62f64f6173f45b6e6bcf15bd3c7a6eea92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lindstr=C3=B6m?= Date: Wed, 4 Sep 2019 09:21:07 +0300 Subject: [PATCH 11/36] MDEV-20485: Galera test failure on galera.galera_var_node_address Test changes only. --- mysql-test/suite/galera/disabled.def | 1 - .../galera/r/galera_var_node_address.result | 19 +++++++++------- .../galera/t/galera_var_node_address.test | 22 +++++++++---------- 3 files changed, 22 insertions(+), 20 deletions(-) diff --git a/mysql-test/suite/galera/disabled.def b/mysql-test/suite/galera/disabled.def index 1e2833042fc..d97b7a1ff14 100644 --- a/mysql-test/suite/galera/disabled.def +++ b/mysql-test/suite/galera/disabled.def @@ -26,7 +26,6 @@ galera_ist_mariabackup : MDEV-18829 test leaves port open galera_ist_progress : MDEV-15236 fails when trying to read transfer status galera_migrate : MariaDB does not support START SLAVE USER galera_ssl_upgrade : MDEV-19950 Galera test failure on galera_ssl_upgrade -galera_var_node_address : MDEV-20485 Galera test failure on galera.galera_var_node_address galera_wan : MDEV-17259 Test failure on galera.galera_wan partition : MDEV-19958 Galera test failure on galera.partition query_cache: MDEV-15805 Test failure on galera.query_cache \ No newline at end of file diff --git a/mysql-test/suite/galera/r/galera_var_node_address.result b/mysql-test/suite/galera/r/galera_var_node_address.result index 7696d1e3f4f..0c85d554229 100644 --- a/mysql-test/suite/galera/r/galera_var_node_address.result +++ b/mysql-test/suite/galera/r/galera_var_node_address.result @@ -1,17 +1,20 @@ -call mtr.add_suppression("WSREP: Stray state UUID msg: .* current group state WAIT_STATE_UUID .*"); -call mtr.add_suppression("WSREP: Protocol violation. JOIN message sender .* is not in state transfer (.*). Message ignored."); -call mtr.add_suppression("WSREP: Sending JOIN failed: -[0-9]+ (Transport endpoint is not connected). Will retry in new primary component."); -SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; -VARIABLE_VALUE = 4 -1 +call mtr.add_suppression("WSREP: Stray state UUID msg: .*"); +call mtr.add_suppression("WSREP: Protocol violation. JOIN message sender .*"); +call mtr.add_suppression("WSREP: Sending JOIN failed: .*"); +flush tables; +SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; +VARIABLE_VALUE +4 connection node_1; CREATE TABLE t1 (f1 INTEGER) ENGINE=INNODB; connection node_2; +set global wsrep_sync_wait=15; INSERT INTO t1 VALUES (1); connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3; connection node_3; -SELECT COUNT(*) = 1 FROM t1; -COUNT(*) = 1 +set global wsrep_sync_wait=15; +SELECT COUNT(*) FROM t1; +COUNT(*) 1 connection node_1; DROP TABLE t1; diff --git a/mysql-test/suite/galera/t/galera_var_node_address.test b/mysql-test/suite/galera/t/galera_var_node_address.test index b50265be5ae..99cb30e7b91 100644 --- a/mysql-test/suite/galera/t/galera_var_node_address.test +++ b/mysql-test/suite/galera/t/galera_var_node_address.test @@ -6,27 +6,27 @@ --source include/galera_cluster.inc --source include/have_innodb.inc -call mtr.add_suppression("WSREP: Stray state UUID msg: .* current group state WAIT_STATE_UUID .*"); -call mtr.add_suppression("WSREP: Protocol violation. JOIN message sender .* is not in state transfer (.*). Message ignored."); -call mtr.add_suppression("WSREP: Sending JOIN failed: -[0-9]+ (Transport endpoint is not connected). Will retry in new primary component."); +call mtr.add_suppression("WSREP: Stray state UUID msg: .*"); +call mtr.add_suppression("WSREP: Protocol violation. JOIN message sender .*"); +call mtr.add_suppression("WSREP: Sending JOIN failed: .*"); +flush tables; -SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; +--let $wait_condition = SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; +--source include/wait_condition.inc + +SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; --connection node_1 CREATE TABLE t1 (f1 INTEGER) ENGINE=INNODB; --connection node_2 -let $wait_condition= SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME LIKE 'test/t1'; ---source include/wait_condition.inc +set global wsrep_sync_wait=15; INSERT INTO t1 VALUES (1); --connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3 --connection node_3 -let $wait_condition= SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME LIKE 'test/t1'; ---source include/wait_condition.inc -let $wait_condition= SELECT COUNT(*) = 1 FROM t1; ---source include/wait_condition.inc -SELECT COUNT(*) = 1 FROM t1; +set global wsrep_sync_wait=15; +SELECT COUNT(*) FROM t1; --connection node_1 DROP TABLE t1; From efbfded563c0d9fe5904bac0436ca5fd88baff20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lindstr=C3=B6m?= Date: Thu, 5 Sep 2019 12:26:36 +0300 Subject: [PATCH 12/36] Move MW-328B to big test to avoid test timeout. --- mysql-test/suite/galera/t/MW-328B.test | 1 + 1 file changed, 1 insertion(+) diff --git a/mysql-test/suite/galera/t/MW-328B.test b/mysql-test/suite/galera/t/MW-328B.test index 11969dd0b47..04503ce31e3 100644 --- a/mysql-test/suite/galera/t/MW-328B.test +++ b/mysql-test/suite/galera/t/MW-328B.test @@ -8,6 +8,7 @@ # --source include/galera_cluster.inc +--source include/big_test.inc --source suite/galera/t/MW-328-header.inc --connection node_2 From 0fd5b11eb05be8e8e996b26d845aae3b863448d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lindstr=C3=B6m?= Date: Fri, 6 Sep 2019 14:54:22 +0300 Subject: [PATCH 13/36] MDEV-20511: Galera replication of events is not consistent After SST from master node (the one where event is ENABLED) - you will end up with the event enabled on two nodes, hence it's now being executed twice. It can be solved by comparing event's originator with server_id. if not equal, then change its status to 'SLAVESIDE_DISABLED' Changes to be committed: new file: mysql-test/suite/galera/r/galera_events2.result new file: mysql-test/suite/galera/t/galera_events2.test modified: sql/events.cc --- .../suite/galera/r/galera_events2.result | 122 +++++++++++++++ mysql-test/suite/galera/t/galera_events2.test | 144 ++++++++++++++++++ sql/events.cc | 40 +++++ 3 files changed, 306 insertions(+) create mode 100644 mysql-test/suite/galera/r/galera_events2.result create mode 100644 mysql-test/suite/galera/t/galera_events2.test diff --git a/mysql-test/suite/galera/r/galera_events2.result b/mysql-test/suite/galera/r/galera_events2.result new file mode 100644 index 00000000000..fa33e75ff57 --- /dev/null +++ b/mysql-test/suite/galera/r/galera_events2.result @@ -0,0 +1,122 @@ +connection node_1; +connection node_2; +connection node_1; +CREATE TABLE event_table(a int) engine=innodb; +CREATE EVENT event_2 ON SCHEDULE EVERY 1 SECOND +ENDS NOW() + INTERVAL 6 SECOND +ON COMPLETION NOT PRESERVE +DO +INSERT INTO event_table VALUES (1); +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. +# node_1 event should be there +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +def test event_2 root@localhost SQL INSERT INTO event_table VALUES (1) RECURRING NULL 1 SECOND ENABLED NOT PRESERVE +connection node_2; +# node_2 event should be there +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +def test event_2 root@localhost SQL INSERT INTO event_table VALUES (1) RECURRING NULL 1 SECOND SLAVESIDE_DISABLED NOT PRESERVE +connection node_1; +SET GLOBAL event_scheduler=ON; +SHOW VARIABLES LIKE 'event_scheduler'; +Variable_name Value +event_scheduler ON +# node_1 event should be removed +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +connection node_2; +# node_2 event should be removed +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +connection node_1; +SET GLOBAL event_scheduler=OFF; +DROP TABLE event_table; +connection node_1; +CREATE DATABASE IF NOT EXISTS events_test; +use events_test; +CREATE USER ev_test@localhost; +GRANT ALL ON events_test.* to ev_test@localhost; +connect ev_con1,localhost,ev_test,,events_test; +CREATE EVENT one_event ON SCHEDULE EVERY 10 SECOND DO SELECT 123; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. +SHOW EVENTS; +Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation +events_test one_event ev_test@localhost SYSTEM RECURRING NULL 10 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_SCHEMA, EVENT_NAME; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +def events_test one_event ev_test@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE +ALTER EVENT one_event ON SCHEDULE EVERY 10 SECOND; +"The definer should be ev_test@localhost" +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +def events_test one_event ev_test@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE +connection node_2; +use events_test; +"The definer should be ev_test@localhost" +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +def events_test one_event ev_test@localhost SQL SELECT 123 RECURRING NULL 10 SECOND SLAVESIDE_DISABLED NOT PRESERVE +connection node_1; +disconnect ev_con1; +use test; +DROP EVENT events_test.one_event; +DROP USER ev_test@localhost; +DROP DATABASE events_test; +connection node_1; +use test; +CREATE EVENT one_event ON SCHEDULE EVERY 10 SECOND DO SELECT 123; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. +# node_1 Event should be enabled +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +def test one_event root@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE +connection node_2; +use test; +# node_2 Event should be SERVERSIDE_DISABLED +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +def test one_event root@localhost SQL SELECT 123 RECURRING NULL 10 SECOND SLAVESIDE_DISABLED NOT PRESERVE +CREATE TABLE t1 (f1 INTEGER PRIMARY KEY, f2 CHAR(1)) engine=InnoDB; +INSERT INTO t1 VALUES (1, 'a'), (2, 'a'), (3, 'a'); +SELECT * FROM t1; +f1 f2 +1 a +2 a +3 a +Shutting down server ... +connection node_1; +UPDATE t1 SET f2 = 'b' WHERE f1 > 1; +UPDATE t1 SET f2 = 'c' WHERE f1 > 2; +SELECT * FROM t1; +f1 f2 +1 a +2 b +3 c +connection node_2; +# Force SST from node_1 to node_2 +Starting server ... +SELECT * FROM t1; +f1 f2 +1 a +2 b +3 c +# node_2 Event should be SERVERSIDE_DISABLED +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +def test one_event root@localhost SQL SELECT 123 RECURRING NULL 10 SECOND SLAVESIDE_DISABLED NOT PRESERVE +connection node_1; +SELECT * FROM t1; +f1 f2 +1 a +2 b +3 c +# node_1 Event should be ENABLED +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; +EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT +def test one_event root@localhost SQL SELECT 123 RECURRING NULL 10 SECOND ENABLED NOT PRESERVE +DROP TABLE t1; +DROP EVENT one_event; diff --git a/mysql-test/suite/galera/t/galera_events2.test b/mysql-test/suite/galera/t/galera_events2.test new file mode 100644 index 00000000000..54b90386851 --- /dev/null +++ b/mysql-test/suite/galera/t/galera_events2.test @@ -0,0 +1,144 @@ +--source include/galera_cluster.inc + +# Save original auto_increment_offset values. +--let $node_1=node_1 +--let $node_2=node_2 +--source include/auto_increment_offset_save.inc + +# +# Test case 1: "ONE TIME" events should be dropped on slave nodes after expiring on master (event creator node) +# + +--connection node_1 + +CREATE TABLE event_table(a int) engine=innodb; + +CREATE EVENT event_2 ON SCHEDULE EVERY 1 SECOND +ENDS NOW() + INTERVAL 6 SECOND +ON COMPLETION NOT PRESERVE +DO + INSERT INTO event_table VALUES (1); + +--echo # node_1 event should be there +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; + +--connection node_2 +--echo # node_2 event should be there +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; + +--connection node_1 +SET GLOBAL event_scheduler=ON; +SHOW VARIABLES LIKE 'event_scheduler'; + +# Let event_2 reach the end of its execution interval +let $wait_condition=select count(*) = 0 from information_schema.events where event_name='event_2'; +--source include/wait_condition.inc + +--echo # node_1 event should be removed +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; + +--connection node_2 +--echo # node_2 event should be removed +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; + +--connection node_1 +SET GLOBAL event_scheduler=OFF; +DROP TABLE event_table; + +# +# Test case 2: After doing ALTER EVENT, slave nodes should have same definer as master +# + +--connection node_1 + +CREATE DATABASE IF NOT EXISTS events_test; +use events_test; +CREATE USER ev_test@localhost; +GRANT ALL ON events_test.* to ev_test@localhost; +connect (ev_con1,localhost,ev_test,,events_test); + +CREATE EVENT one_event ON SCHEDULE EVERY 10 SECOND DO SELECT 123; +--replace_column 8 # 9 # +SHOW EVENTS; +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_SCHEMA, EVENT_NAME; +ALTER EVENT one_event ON SCHEDULE EVERY 10 SECOND; +--echo "The definer should be ev_test@localhost" +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; + +--connection node_2 +use events_test; +--echo "The definer should be ev_test@localhost" +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; + +--connection node_1 +--disconnect ev_con1 +use test; +DROP EVENT events_test.one_event; +DROP USER ev_test@localhost; +DROP DATABASE events_test; + +# +# Test case 3: After SST from master node (the one where event is ENABLED) , slave event status should be 'SLAVESIDE_DISABLED' +# + +--connection node_1 +use test; +CREATE EVENT one_event ON SCHEDULE EVERY 10 SECOND DO SELECT 123; + +--echo # node_1 Event should be enabled +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; + +--connection node_2 +use test; +--echo # node_2 Event should be SERVERSIDE_DISABLED +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; + +CREATE TABLE t1 (f1 INTEGER PRIMARY KEY, f2 CHAR(1)) engine=InnoDB; +INSERT INTO t1 VALUES (1, 'a'), (2, 'a'), (3, 'a'); + +SELECT * FROM t1; + +# Initiate normal shutdown on the node 2 and wait until shutdown has been completed: + +--echo Shutting down server ... +--source include/shutdown_mysqld.inc + +--connection node_1 + +--let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size' +--source include/wait_condition.inc + +UPDATE t1 SET f2 = 'b' WHERE f1 > 1; +UPDATE t1 SET f2 = 'c' WHERE f1 > 2; + +SELECT * FROM t1; + +--connection node_2 + +# Remove the "grastate.dat" file (to initiate new SST) and restart node 2 + +--remove_file $MYSQLTEST_VARDIR/mysqld.2/data/grastate.dat + +--echo # Force SST from node_1 to node_2 +--let $start_mysqld_params= +--echo Starting server ... +--source include/start_mysqld.inc + +--let $wait_condition = SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size' +--source include/wait_condition.inc + +# Sanity check (node 2 is running now and can perform SQL operators): + +SELECT * FROM t1; +--echo # node_2 Event should be SERVERSIDE_DISABLED +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; + +--connection node_1 +SELECT * FROM t1; +--echo # node_1 Event should be ENABLED +SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; + +DROP TABLE t1; +DROP EVENT one_event; + +--source include/auto_increment_offset_restore.inc diff --git a/sql/events.cc b/sql/events.cc index 15da0adee70..c189354d5eb 100644 --- a/sql/events.cc +++ b/sql/events.cc @@ -1198,6 +1198,46 @@ Events::load_events_from_db(THD *thd) delete et; goto end; } + +#ifdef WITH_WSREP + /** + IF SST is done from a galera node that is also acting as MASTER + newly synced node in galera eco-system will also copy-over the event state + enabling duplicate event in galera eco-system. + DISABLE such events if the current node is not event orginator. + (Also, make sure you skip disabling it if is already disabled to avoid + creation of redundant action) + NOTE: + This complete system relies on server-id. Ideally server-id should be + same for all nodes of galera eco-system but they aren't same. + Infact, based on galera use-case it seems like it recommends to have each + node with different server-id. + */ + if (et->originator != thd->variables.server_id) + { + if (et->status == Event_parse_data::SLAVESIDE_DISABLED) + continue; + + store_record(table, record[1]); + table->field[ET_FIELD_STATUS]-> + store((longlong) Event_parse_data::SLAVESIDE_DISABLED, + TRUE); + + /* All the dmls to mysql.events tables are stmt bin-logged. */ + bool save_binlog_row_based; + if ((save_binlog_row_based= thd->is_current_stmt_binlog_format_row())) + thd->set_current_stmt_binlog_format_stmt(); + + (void) table->file->ha_update_row(table->record[1], table->record[0]); + + if (save_binlog_row_based) + thd->set_current_stmt_binlog_format_row(); + + delete et; + continue; + } +#endif /* WITH_WSREP */ + /** Since the Event_queue_element object could be deleted inside Event_queue::create_event we should save the value of dropped flag From 031c695b8c865e5eb6c4c09ced404ae08f98430f Mon Sep 17 00:00:00 2001 From: Alexey Botchkov Date: Mon, 9 Sep 2019 15:39:12 +0400 Subject: [PATCH 14/36] MDEV-16594 ALTER DATA DIRECTORY in PARTITIONS of InnoDB storage does nothing silently InnoDB intentionally (it's a documented behavior) ignores changing of DATA DIRECTORY and INDEX DIRECTORY for partitions. Though we should issue warning when this happens. --- .../r/alter_data_directory_innodb.result | 3 + .../r/reorganize_partition_innodb.result | 153 ++++++++++++++++++ .../parts/t/reorganize_partition_innodb.test | 100 ++++++++++++ sql/share/errmsg-utf8.txt | 2 + sql/sql_partition.cc | 65 ++++++++ 5 files changed, 323 insertions(+) create mode 100644 mysql-test/suite/parts/r/reorganize_partition_innodb.result create mode 100644 mysql-test/suite/parts/t/reorganize_partition_innodb.test diff --git a/mysql-test/suite/parts/r/alter_data_directory_innodb.result b/mysql-test/suite/parts/r/alter_data_directory_innodb.result index ee0a7b80ebb..5dd73874d04 100644 --- a/mysql-test/suite/parts/r/alter_data_directory_innodb.result +++ b/mysql-test/suite/parts/r/alter_data_directory_innodb.result @@ -53,6 +53,9 @@ ALTER TABLE t REORGANIZE PARTITION p1,p2 INTO ( PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = INNODB, PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = INNODB ); +Warnings: +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition SHOW CREATE TABLE t; Table Create Table t CREATE TABLE `t` ( diff --git a/mysql-test/suite/parts/r/reorganize_partition_innodb.result b/mysql-test/suite/parts/r/reorganize_partition_innodb.result new file mode 100644 index 00000000000..29ecd87c16a --- /dev/null +++ b/mysql-test/suite/parts/r/reorganize_partition_innodb.result @@ -0,0 +1,153 @@ +# +# MDEV-15953 Alter InnoDB Partitioned Table Moves Files (which were originally not in the datadir) to the datadir +# +CREATE TABLE t ( +a INT NOT NULL +) ENGINE=INNODB +PARTITION BY HASH (a) ( +PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here/' ENGINE = INNODB, +PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here/' ENGINE = INNODB +); +INSERT INTO t VALUES (1); +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` int(11) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +/*!50100 PARTITION BY HASH (a) +(PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB, + PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB) */ +ALTER TABLE t ADD PRIMARY KEY pk(a), ALGORITHM=INPLACE; +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` int(11) NOT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +/*!50100 PARTITION BY HASH (a) +(PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB, + PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB) */ +ALTER TABLE t DROP PRIMARY KEY, ALGORITHM=COPY; +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` int(11) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +/*!50100 PARTITION BY HASH (a) +(PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB, + PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB) */ +SET @TMP = @@GLOBAL.INNODB_FILE_PER_TABLE; +SET GLOBAL INNODB_FILE_PER_TABLE=OFF; +ALTER TABLE t ADD PRIMARY KEY pk(a), ALGORITHM=INPLACE; +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` int(11) NOT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +/*!50100 PARTITION BY HASH (a) +(PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB, + PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB) */ +SET GLOBAL INNODB_FILE_PER_TABLE=@TMP; +ALTER TABLE t REORGANIZE PARTITION p1,p2 INTO ( +PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = INNODB, +PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = INNODB +); +Warnings: +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` int(11) NOT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +/*!50100 PARTITION BY HASH (a) +(PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB, + PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB) */ +ALTER TABLE t REORGANIZE PARTITION p1,p2 INTO ( +PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/', +PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' +); +Warnings: +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` int(11) NOT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +/*!50100 PARTITION BY HASH (a) +(PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB, + PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB) */ +ALTER TABLE t REORGANIZE PARTITION p1,p2 INTO ( +PARTITION p1 INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = INNODB, +PARTITION p2 INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = INNODB +); +Warnings: +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` int(11) NOT NULL, + PRIMARY KEY (`a`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +/*!50100 PARTITION BY HASH (a) +(PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB, + PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here' ENGINE = InnoDB) */ +DROP TABLE t; +CREATE TABLE t ( +a INT NOT NULL +) ENGINE=INNODB +PARTITION BY RANGE (a) +SUBPARTITION BY HASH (a) +SUBPARTITIONS 2 +( +PARTITION p1 VALUES LESS THAN (7) +DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here/' + INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here/' + ENGINE = INNODB, +PARTITION p2 VALUES LESS THAN MAXVALUE +DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here/' + INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_here/' + ENGINE = INNODB +); +Warnings: +Warning 1618 option ignored +Warning 1618 option ignored +Warning 1618 option ignored +Warning 1618 option ignored +ALTER TABLE t +REORGANIZE PARTITION p1,p2 INTO +( +PARTITION p1 VALUES LESS THAN (7) +DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' + INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' + ENGINE = INNODB, +PARTITION p2 VALUES LESS THAN MAXVALUE +DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' + INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' + ENGINE = INNODB +); +Warnings: +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition +Warning 1982 option ignored for InnoDB partition +SHOW CREATE TABLE t; +Table Create Table +t CREATE TABLE `t` ( + `a` int(11) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +/*!50100 PARTITION BY RANGE (a) +SUBPARTITION BY HASH (a) +SUBPARTITIONS 2 +(PARTITION p1 VALUES LESS THAN (7) DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = InnoDB, + PARTITION p2 VALUES LESS THAN MAXVALUE DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = InnoDB) */ +DROP TABLE t; diff --git a/mysql-test/suite/parts/t/reorganize_partition_innodb.test b/mysql-test/suite/parts/t/reorganize_partition_innodb.test new file mode 100644 index 00000000000..78e8a1a9f21 --- /dev/null +++ b/mysql-test/suite/parts/t/reorganize_partition_innodb.test @@ -0,0 +1,100 @@ +--source include/have_innodb.inc +--source include/have_partition.inc + +--echo # +--echo # MDEV-15953 Alter InnoDB Partitioned Table Moves Files (which were originally not in the datadir) to the datadir +--echo # + +mkdir $MYSQLTEST_VARDIR/tmp/partitions_here; + +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +eval CREATE TABLE t ( + a INT NOT NULL + ) ENGINE=INNODB +PARTITION BY HASH (a) ( + PARTITION p1 DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_here/' ENGINE = INNODB, + PARTITION p2 DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_here/' ENGINE = INNODB +); +INSERT INTO t VALUES (1); + +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +SHOW CREATE TABLE t; +ALTER TABLE t ADD PRIMARY KEY pk(a), ALGORITHM=INPLACE; +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +SHOW CREATE TABLE t; +ALTER TABLE t DROP PRIMARY KEY, ALGORITHM=COPY; +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +SHOW CREATE TABLE t; +SET @TMP = @@GLOBAL.INNODB_FILE_PER_TABLE; +SET GLOBAL INNODB_FILE_PER_TABLE=OFF; +ALTER TABLE t ADD PRIMARY KEY pk(a), ALGORITHM=INPLACE; +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +SHOW CREATE TABLE t; +SET GLOBAL INNODB_FILE_PER_TABLE=@TMP; + +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +eval ALTER TABLE t REORGANIZE PARTITION p1,p2 INTO ( + PARTITION p1 DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = INNODB, + PARTITION p2 DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = INNODB +); +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +SHOW CREATE TABLE t; + +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +eval ALTER TABLE t REORGANIZE PARTITION p1,p2 INTO ( + PARTITION p1 DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/', + PARTITION p2 DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' +); +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +SHOW CREATE TABLE t; + +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +eval ALTER TABLE t REORGANIZE PARTITION p1,p2 INTO ( + PARTITION p1 INDEX DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = INNODB, + PARTITION p2 INDEX DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' ENGINE = INNODB +); +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +SHOW CREATE TABLE t; + +DROP TABLE t; + +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +eval CREATE TABLE t ( + a INT NOT NULL + ) ENGINE=INNODB +PARTITION BY RANGE (a) + SUBPARTITION BY HASH (a) + SUBPARTITIONS 2 + ( + PARTITION p1 VALUES LESS THAN (7) + DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_here/' + INDEX DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_here/' + ENGINE = INNODB, + PARTITION p2 VALUES LESS THAN MAXVALUE + DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_here/' + INDEX DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_here/' + ENGINE = INNODB + ); + +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +eval ALTER TABLE t +REORGANIZE PARTITION p1,p2 INTO +( + PARTITION p1 VALUES LESS THAN (7) + DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' + INDEX DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' + ENGINE = INNODB, + PARTITION p2 VALUES LESS THAN MAXVALUE + DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' + INDEX DIRECTORY = '$MYSQLTEST_VARDIR/tmp/partitions_somewhere_else/' + ENGINE = INNODB +); + +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +SHOW CREATE TABLE t; + +DROP TABLE t; + +rmdir $MYSQLTEST_VARDIR/tmp/partitions_here/test; +rmdir $MYSQLTEST_VARDIR/tmp/partitions_here; + diff --git a/sql/share/errmsg-utf8.txt b/sql/share/errmsg-utf8.txt index 43d63fd705a..c5e83062f0f 100644 --- a/sql/share/errmsg-utf8.txt +++ b/sql/share/errmsg-utf8.txt @@ -7142,3 +7142,5 @@ ER_NO_EIS_FOR_FIELD ER_WARN_AGGFUNC_DEPENDENCE eng "Aggregate function '%-.192s)' of SELECT #%d belongs to SELECT #%d" ukr "Агрегатна функція '%-.192s)' з SELECTу #%d належить до SELECTу #%d" +WARN_INNODB_PARTITION_OPTION_IGNORED + eng "<%-.64s> option ignored for InnoDB partition" diff --git a/sql/sql_partition.cc b/sql/sql_partition.cc index 6ca181cdbb0..c214c2a13ee 100644 --- a/sql/sql_partition.cc +++ b/sql/sql_partition.cc @@ -4660,6 +4660,69 @@ bool compare_partition_options(HA_CREATE_INFO *table_create_info, } +/** + Check if the ALTER command tries to change DATA DIRECTORY + or INDEX DIRECTORY for its partitions and warn if so. + @param thd THD + @param part_elem partition_element to check + */ +static void warn_if_datadir_altered(THD *thd, + const partition_element *part_elem) +{ + DBUG_ASSERT(part_elem); + + if (part_elem->engine_type && + part_elem->engine_type->db_type != DB_TYPE_INNODB) + return; + + if (part_elem->data_file_name) + { + push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN, + WARN_INNODB_PARTITION_OPTION_IGNORED, + ER(WARN_INNODB_PARTITION_OPTION_IGNORED), + "DATA DIRECTORY"); + } + if (part_elem->index_file_name) + { + push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN, + WARN_INNODB_PARTITION_OPTION_IGNORED, + ER(WARN_INNODB_PARTITION_OPTION_IGNORED), + "INDEX DIRECTORY"); + } +} + + +/** + Currently changing DATA DIRECTORY and INDEX DIRECTORY for InnoDB partitions is + not possible. This function checks it and warns on that case. + @param thd THD + @param tab_part_info old partition info + @param alt_part_info new partition info + */ +static void check_datadir_altered_for_innodb(THD *thd, + partition_info *tab_part_info, + partition_info *alt_part_info) +{ + if (tab_part_info->default_engine_type->db_type != DB_TYPE_INNODB) + return; + + for (List_iterator_fast it(alt_part_info->partitions); + partition_element *part_elem= it++;) + { + if (alt_part_info->is_sub_partitioned()) + { + for (List_iterator_fast it2(part_elem->subpartitions); + const partition_element *sub_part_elem= it2++;) + { + warn_if_datadir_altered(thd, sub_part_elem); + } + } + else + warn_if_datadir_altered(thd, part_elem); + } +} + + /* Prepare for ALTER TABLE of partition structure @@ -5389,6 +5452,8 @@ state of p1. { goto err; } + check_datadir_altered_for_innodb(thd, tab_part_info, alt_part_info); + /* Online handling: REORGANIZE PARTITION: From 803bb5cdf86196b783560bc21a8a2bd1c6a0e2ea Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Mon, 9 Sep 2019 10:51:10 +0200 Subject: [PATCH 15/36] Windows, cmake : Fix occasional link error when switching between debug to optimized compilation For Visual Studio generator, use a per-config .def/.lib files with symbols exported from mysqld.exe Functions exported from mysqld.exe may differ between debug/optimized compilation, e.g dbug functions are missing in release config. --- sql/CMakeLists.txt | 47 ++++++++++++++-------------------------------- 1 file changed, 14 insertions(+), 33 deletions(-) diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt index 963243c9767..f7c97b23e87 100644 --- a/sql/CMakeLists.txt +++ b/sql/CMakeLists.txt @@ -197,9 +197,9 @@ IF(MSVC AND NOT WITHOUT_DYNAMIC_PLUGINS) # without necessity.E.g source modifications, that do not # change list of exported symbols, will not result in a relink for plugins. - SET(MYSQLD_DEF ${CMAKE_CURRENT_BINARY_DIR}/mysqld_lib.def) - SET(MYSQLD_EXP ${CMAKE_CURRENT_BINARY_DIR}/mysqld_lib.exp) - SET(MYSQLD_LIB ${CMAKE_CURRENT_BINARY_DIR}/mysqld_lib.lib) + SET(MYSQLD_DEF ${CMAKE_CURRENT_BINARY_DIR}/mysqld_lib${CMAKE_CFG_INTDIR}.def) + SET(MYSQLD_EXP ${CMAKE_CURRENT_BINARY_DIR}/mysqld_lib${CMAKE_CFG_INTDIR}.exp) + SET(MYSQLD_LIB ${CMAKE_CURRENT_BINARY_DIR}/mysqld_lib${CMAKE_CFG_INTDIR}.lib) SET(MYSQLD_CORELIBS sql mysys dbug strings) FOREACH (CORELIB ${MYSQLD_CORELIBS}) GET_TARGET_PROPERTY(LOC ${CORELIB} LOCATION) @@ -214,12 +214,12 @@ IF(MSVC AND NOT WITHOUT_DYNAMIC_PLUGINS) # Create a cmake script to generate import and export libs # from a .def file SET(CMAKE_CONFIGURABLE_FILE_CONTENT " - IF ((mysqld_lib.def IS_NEWER_THAN mysqld_lib.lib) OR - (mysqld_lib.def IS_NEWER_THAN mysqld_lib.exp)) - FILE(REMOVE mysqld_lib.lib mysqld_lib.exp) + IF ((mysqld_lib\${CFG}.def IS_NEWER_THAN mysqld_lib\${CFG}.lib) OR + (mysqld_lib\${CFG}.def IS_NEWER_THAN mysqld_lib\${CFG}.exp)) + FILE(REMOVE mysqld_lib\${CFG}.lib mysqld_lib\${CFG}.exp) SET(ENV{VS_UNICODE_OUTPUT}) EXECUTE_PROCESS ( - COMMAND \"${CMAKE_LINKER}\" /lib /NAME:mysqld.exe \"/DEF:${MYSQLD_DEF}\" /MACHINE:${_PLATFORM} + COMMAND \"${CMAKE_LINKER}\" /lib /NAME:mysqld.exe \"/DEF:${CMAKE_CURRENT_BINARY_DIR}/mysqld_lib\${CFG}.def\" /MACHINE:${_PLATFORM} RESULT_VARIABLE ret) IF(NOT ret EQUAL 0) MESSAGE(FATAL_ERROR \"process failed ret=\${ret}\") @@ -229,41 +229,22 @@ IF(MSVC AND NOT WITHOUT_DYNAMIC_PLUGINS) CONFIGURE_FILE( ${PROJECT_SOURCE_DIR}/cmake/configurable_file_content.in - make_mysqld_lib.cmake) + make_mysqld_lib.cmake + @ONLY) IF(CMAKE_VERSION VERSION_GREATER "3.2.0") SET(MYSQLD_LIB_BYPRODUCTS BYPRODUCTS ${MYSQLD_DEF} ${MYSQLD_LIB} ${MYSQLD_EXP}) ENDIF() - # Create a cmake script to generate import and export libs - # from a .def file - SET(CMAKE_CONFIGURABLE_FILE_CONTENT " - IF ((mysqld_lib.def IS_NEWER_THAN mysqld_lib.lib) OR - (mysqld_lib.def IS_NEWER_THAN mysqld_lib.exp)) - FILE(REMOVE mysqld_lib.lib mysqld_lib.exp) - SET(ENV{VS_UNICODE_OUTPUT}) - EXECUTE_PROCESS ( - COMMAND \"${CMAKE_LINKER}\" /lib /NAME:mysqld.exe \"/DEF:${MYSQLD_DEF}\" /MACHINE:${_PLATFORM} - RESULT_VARIABLE ret) - IF(NOT ret EQUAL 0) - MESSAGE(FATAL_ERROR \"process failed ret=\${ret}\") - ENDIF() - ENDIF() - ") - - CONFIGURE_FILE( - ${PROJECT_SOURCE_DIR}/cmake/configurable_file_content.in - make_mysqld_lib.cmake) - ADD_CUSTOM_COMMAND( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/mysqld_lib.stamp ${MYSQLD_LIB_BYPRODUCTS} - COMMENT "Generating mysqld_lib.def, mysqld_lib.lib, mysqld_lib.exp" + COMMENT "Generating ${MYSQLD_DEF}, ${MYSQLD_LIB}, ${MYSQLD_EXP}" COMMAND cscript //nologo ${PROJECT_SOURCE_DIR}/win/create_def_file.js - ${_PLATFORM} /forLib ${LIB_LOCATIONS} > mysqld_lib.def.tmp - COMMAND ${CMAKE_COMMAND} -E copy_if_different mysqld_lib.def.tmp mysqld_lib.def - COMMAND ${CMAKE_COMMAND} -E remove mysqld_lib.def.tmp - COMMAND ${CMAKE_COMMAND} -P make_mysqld_lib.cmake + ${_PLATFORM} /forLib ${LIB_LOCATIONS} > ${MYSQLD_DEF}.tmp + COMMAND ${CMAKE_COMMAND} -E copy_if_different ${MYSQLD_DEF}.tmp ${MYSQLD_DEF} + COMMAND ${CMAKE_COMMAND} -E remove ${MYSQLD_DEF}.tmp + COMMAND ${CMAKE_COMMAND} "-DCFG=${CMAKE_CFG_INTDIR}" -P make_mysqld_lib.cmake COMMAND ${CMAKE_COMMAND} -E touch mysqld_lib.stamp WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} DEPENDS ${MYSQLD_CORELIBS} From 7e7b6ec4d6ffe24c8008e7108f728104b89802c2 Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Mon, 9 Sep 2019 12:06:29 +0200 Subject: [PATCH 16/36] Fix connect RESTSDK support. Remove debug output, remove overriding of the Windows C runtime flags(linker warning) do not add code that depends on restsdk if library is not going to be linked. freaking Connect --- storage/connect/CMakeLists.txt | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/storage/connect/CMakeLists.txt b/storage/connect/CMakeLists.txt index 7fc73bce59e..a1234179311 100644 --- a/storage/connect/CMakeLists.txt +++ b/storage/connect/CMakeLists.txt @@ -73,10 +73,6 @@ ELSE(NOT UNIX) tabwmi.cpp tabwmi.h tabmac.cpp tabmac.h macutil.cpp macutil.h) # Add exception handling to the CONNECT project) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHsc") - SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") - SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - SET(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} /MD") SET(IPHLPAPI_LIBRARY iphlpapi.lib) IF(MSVC AND (CMAKE_CXX_COMPILER_ID MATCHES Clang)) # Connect does not work with clang-cl @@ -322,20 +318,20 @@ ENDIF(CONNECT_WITH_MONGO) OPTION(CONNECT_WITH_REST "Compile CONNECT storage engine with REST support" ON) IF(CONNECT_WITH_REST) - MESSAGE(STATUS "=====> REST support is ON") - FIND_PACKAGE(cpprestsdk) + FIND_PACKAGE(cpprestsdk QUIET) IF (cpprestsdk_FOUND) - MESSAGE(STATUS "=====> cpprestsdk found") IF(UNIX) # INCLUDE_DIRECTORIES(${CPPRESTSDK_INCLUDE_DIR}) # If needed edit next line to set the path to libcpprest.so SET(REST_LIBRARY -lcpprest) - MESSAGE (STATUS ${REST_LIBRARY}) +# MESSAGE (STATUS ${REST_LIBRARY}) ENDIF(UNIX) - SET(CONNECT_SOURCES ${CONNECT_SOURCES} tabrest.cpp restget.cpp tabrest.h) - add_definitions(-DREST_SUPPORT) + IF(REST_LIBRARY) + SET(CONNECT_SOURCES ${CONNECT_SOURCES} tabrest.cpp restget.cpp tabrest.h) + add_definitions(-DREST_SUPPORT) + ENDIF() ELSE(NOT cpprestsdk_FOUND) - MESSAGE(STATUS "=====> cpprestsdk package not found") +# MESSAGE(STATUS "=====> cpprestsdk package not found") ENDIF (cpprestsdk_FOUND) ENDIF(CONNECT_WITH_REST) From d251b76884557580d1dbac877e3b22216c55ecee Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Mon, 9 Sep 2019 12:07:47 +0200 Subject: [PATCH 17/36] Fix warning when compiling with OpenSSL. --- vio/viossl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vio/viossl.c b/vio/viossl.c index 02ef41db2de..30946d3261c 100644 --- a/vio/viossl.c +++ b/vio/viossl.c @@ -333,7 +333,7 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, long timeout, DBUG_PRINT("info", ("ssl: %p timeout: %ld", ssl, timeout)); SSL_clear(ssl); SSL_SESSION_set_timeout(SSL_get_session(ssl), timeout); - SSL_set_fd(ssl, sd); + SSL_set_fd(ssl, (int)sd); /* Since yaSSL does not support non-blocking send operations, use From a895c68c58441e84d8ecbe336a7bbd19fc995e37 Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Mon, 9 Sep 2019 12:08:47 +0200 Subject: [PATCH 18/36] On Windows, treat linker warnings as errors, if MYSQL_MAINTAINER_MODE is ERR --- cmake/os/Windows.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cmake/os/Windows.cmake b/cmake/os/Windows.cmake index efbbfc285c0..ae0beeae5c5 100644 --- a/cmake/os/Windows.cmake +++ b/cmake/os/Windows.cmake @@ -154,6 +154,11 @@ IF(MSVC) IF(MYSQL_MAINTAINER_MODE MATCHES "ERR") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /WX") SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /WX") + FOREACH(type EXE SHARED MODULE) + FOREACH(cfg RELEASE DEBUG RELWITHDEBINFO) + SET(CMAKE_${type}_LINKER_FLAGS_${cfg} "${CMAKE_${type}_LINKER_FLAGS_${cfg}} /WX") + ENDFOREACH() + ENDFOREACH() ENDIF() IF(MSVC_VERSION LESS 1910) # Noisy warning C4800: 'type': forcing value to bool 'true' or 'false' (performance warning), From 2336e0b3944b73379f9d773b4e1b37cbc723bce4 Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Mon, 9 Sep 2019 13:48:36 +0200 Subject: [PATCH 19/36] MDEV-20206 : Crash inside timer_callback()[threadpool_win.cc:419] The most likely cause of the crash is that a timer fired, after it was closed. MSDN documents such a possibility, in the documentation for CloseThreadpoolTimer() function, and recommends disabling the timer before calling WaitForThreadpoolTimerCallbacks()/CloseThreadpoolTimer(). The fix follows this recommendation. Note, that 5.5-10.1 disabled the timer before close, but this code was lost in threadpool refactoring in 10.2 --- sql/threadpool_win.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/sql/threadpool_win.cc b/sql/threadpool_win.cc index 10d6e96b22f..1e2084b9c07 100644 --- a/sql/threadpool_win.cc +++ b/sql/threadpool_win.cc @@ -308,6 +308,7 @@ TP_connection_win::~TP_connection_win() if (timer) { + SetThreadpoolTimer(timer, 0, 0, 0); WaitForThreadpoolTimerCallbacks(timer, TRUE); CloseThreadpoolTimer(timer); } From 43a6e81ccb5026c4d60e27b504fbdc77951e906d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Mon, 9 Sep 2019 18:18:52 +0300 Subject: [PATCH 20/36] MDEV-19514 preparation: Remove innodb_change_buffering_debug=2 The setting innodb_change_buffering_debug=2 was supposed to inject a crash during change buffer merge. There is no public test for that functionality, and even if there were, it would be better to use DEBUG_SYNC to halt the thread that does change buffer merge, force a redo log flush from another thread, and finally kill the server externally. --- .../innodb_change_buffering_debug_basic.result | 6 ++++++ .../suite/sys_vars/r/sysvars_innodb.result | 4 ++-- .../t/innodb_change_buffering_debug_basic.test | 5 ++--- storage/innobase/handler/ha_innodb.cc | 4 ++-- storage/innobase/ibuf/ibuf0ibuf.cc | 17 ----------------- 5 files changed, 12 insertions(+), 24 deletions(-) diff --git a/mysql-test/suite/sys_vars/r/innodb_change_buffering_debug_basic.result b/mysql-test/suite/sys_vars/r/innodb_change_buffering_debug_basic.result index fc0078581fb..2cb3fc76e30 100644 --- a/mysql-test/suite/sys_vars/r/innodb_change_buffering_debug_basic.result +++ b/mysql-test/suite/sys_vars/r/innodb_change_buffering_debug_basic.result @@ -55,6 +55,12 @@ Warnings: Warning 1292 Truncated incorrect innodb_change_buffering_debug value: '-2' set global innodb_change_buffering_debug=1e1; ERROR 42000: Incorrect argument type to variable 'innodb_change_buffering_debug' +set global innodb_change_buffering_debug=2; +Warnings: +Warning 1292 Truncated incorrect innodb_change_buffering_debug value: '2' +select @@global.innodb_change_buffering_debug; +@@global.innodb_change_buffering_debug +1 SET @@global.innodb_change_buffering_debug = @start_global_value; SELECT @@global.innodb_change_buffering_debug; @@global.innodb_change_buffering_debug diff --git a/mysql-test/suite/sys_vars/r/sysvars_innodb.result b/mysql-test/suite/sys_vars/r/sysvars_innodb.result index f424f5a6c05..79d24242435 100644 --- a/mysql-test/suite/sys_vars/r/sysvars_innodb.result +++ b/mysql-test/suite/sys_vars/r/sysvars_innodb.result @@ -347,9 +347,9 @@ SESSION_VALUE NULL DEFAULT_VALUE 0 VARIABLE_SCOPE GLOBAL VARIABLE_TYPE INT UNSIGNED -VARIABLE_COMMENT Debug flags for InnoDB change buffering (0=none, 2=crash at merge) +VARIABLE_COMMENT Debug flags for InnoDB change buffering (0=none, 1=try to buffer) NUMERIC_MIN_VALUE 0 -NUMERIC_MAX_VALUE 2 +NUMERIC_MAX_VALUE 1 NUMERIC_BLOCK_SIZE 0 ENUM_VALUE_LIST NULL READ_ONLY NO diff --git a/mysql-test/suite/sys_vars/t/innodb_change_buffering_debug_basic.test b/mysql-test/suite/sys_vars/t/innodb_change_buffering_debug_basic.test index a6fc09f767e..70f8bee1523 100644 --- a/mysql-test/suite/sys_vars/t/innodb_change_buffering_debug_basic.test +++ b/mysql-test/suite/sys_vars/t/innodb_change_buffering_debug_basic.test @@ -48,9 +48,8 @@ set global innodb_change_buffering_debug='foo'; set global innodb_change_buffering_debug=-2; --error ER_WRONG_TYPE_FOR_VAR set global innodb_change_buffering_debug=1e1; -# The value 2 is supposed to kill the server if there are unmerged changes. -# Do not try to set the value to 2 or anything that can be clamped to 2. -#set global innodb_change_buffering_debug=2; +set global innodb_change_buffering_debug=2; +select @@global.innodb_change_buffering_debug; # # Cleanup diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc index 7c9e4148886..347cf6f21b7 100644 --- a/storage/innobase/handler/ha_innodb.cc +++ b/storage/innobase/handler/ha_innodb.cc @@ -20616,8 +20616,8 @@ static MYSQL_SYSVAR_ENUM(stats_method, srv_innodb_stats_method, #if defined UNIV_DEBUG || defined UNIV_IBUF_DEBUG static MYSQL_SYSVAR_UINT(change_buffering_debug, ibuf_debug, PLUGIN_VAR_RQCMDARG, - "Debug flags for InnoDB change buffering (0=none, 2=crash at merge)", - NULL, NULL, 0, 0, 2, 0); + "Debug flags for InnoDB change buffering (0=none, 1=try to buffer)", + NULL, NULL, 0, 0, 1, 0); static MYSQL_SYSVAR_BOOL(disable_background_merge, srv_ibuf_disable_background_merge, diff --git a/storage/innobase/ibuf/ibuf0ibuf.cc b/storage/innobase/ibuf/ibuf0ibuf.cc index 29a7e8908a3..5581d1d1093 100644 --- a/storage/innobase/ibuf/ibuf0ibuf.cc +++ b/storage/innobase/ibuf/ibuf0ibuf.cc @@ -4241,23 +4241,6 @@ ibuf_delete_rec( ut_ad(ibuf_rec_get_page_no(mtr, btr_pcur_get_rec(pcur)) == page_no); ut_ad(ibuf_rec_get_space(mtr, btr_pcur_get_rec(pcur)) == space); -#if defined UNIV_DEBUG || defined UNIV_IBUF_DEBUG - if (ibuf_debug == 2) { - /* Inject a fault (crash). We do this before trying - optimistic delete, because a pessimistic delete in the - change buffer would require a larger test case. */ - - /* Flag the buffered record as processed, to avoid - an assertion failure after crash recovery. */ - btr_cur_set_deleted_flag_for_ibuf( - btr_pcur_get_rec(pcur), NULL, TRUE, mtr); - - ibuf_mtr_commit(mtr); - log_write_up_to(LSN_MAX, true); - DBUG_SUICIDE(); - } -#endif /* UNIV_DEBUG || UNIV_IBUF_DEBUG */ - success = btr_cur_optimistic_delete(btr_pcur_get_btr_cur(pcur), 0, mtr); From f6a7730c4505c14c8b63b00623917ddaf90c60ae Mon Sep 17 00:00:00 2001 From: Nikita Malyavin Date: Fri, 22 Jun 2018 23:26:43 +1000 Subject: [PATCH 21/36] MDEV-16490: It's possible to make a system versioned table without any versioning field * do not allow versioned table to be without versioned (non-system) fields * prohibit changing field versioning, when removing table versioning * handle CREATE...SELECT as well --- mysql-test/suite/versioning/r/alter.result | 42 ++++++++++ mysql-test/suite/versioning/r/create.result | 10 +++ mysql-test/suite/versioning/t/alter.test | 34 +++++++++ mysql-test/suite/versioning/t/create.test | 11 +++ sql/handler.cc | 85 +++++++++++---------- sql/handler.h | 7 +- sql/sql_insert.cc | 8 +- sql/sql_table.cc | 17 +++-- 8 files changed, 158 insertions(+), 56 deletions(-) diff --git a/mysql-test/suite/versioning/r/alter.result b/mysql-test/suite/versioning/r/alter.result index 61665b32f2e..b5d44332955 100644 --- a/mysql-test/suite/versioning/r/alter.result +++ b/mysql-test/suite/versioning/r/alter.result @@ -639,3 +639,45 @@ create or replace table t1 (f1 int) with system versioning; alter table t1 drop system versioning, add f2 int with system versioning; ERROR HY000: Table `t1` is not system-versioned drop table t1; +# MDEV-16490 It's possible to make a system versioned table without any versioning field +set @@system_versioning_alter_history=keep; +create or replace table t (a int) with system versioning engine=innodb; +alter table t change column a a int without system versioning; +ERROR HY000: Table `t` must have at least one versioned column +alter table t +change column a a int without system versioning, +add column b int with system versioning; +show create table t; +Table Create Table +t CREATE TABLE `t` ( + `a` int(11) DEFAULT NULL WITHOUT SYSTEM VERSIONING, + `b` int(11) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 WITH SYSTEM VERSIONING +alter table t +change column a new_a int, +drop system versioning; +show create table t; +Table Create Table +t CREATE TABLE `t` ( + `new_a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 +alter table t add system versioning; +alter table t change column new_a a int without system versioning; +show create table t; +Table Create Table +t CREATE TABLE `t` ( + `a` int(11) DEFAULT NULL WITHOUT SYSTEM VERSIONING, + `b` int(11) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1 WITH SYSTEM VERSIONING +alter table t +add column c int, +change column c c int without system versioning, +change column b b int without system versioning; +ERROR HY000: Table `t` must have at least one versioned column +alter table t +add column c int without system versioning, +change column c c int, +change column b b int without system versioning; +drop database test; +create database test; diff --git a/mysql-test/suite/versioning/r/create.result b/mysql-test/suite/versioning/r/create.result index 89cec6c038a..f9d13123db5 100644 --- a/mysql-test/suite/versioning/r/create.result +++ b/mysql-test/suite/versioning/r/create.result @@ -515,3 +515,13 @@ row_end datetime(6) generated always as row end, period for system_time(row_start, row_end) ) with system versioning; ERROR HY000: `row_start` must be of type TIMESTAMP(6) for system-versioned table `t` +# MDEV-16490 It's possible to make a system versioned table without any versioning field +create or replace table t1 (x int without system versioning) +with system versioning +select 1 as y; +create or replace table t1 (x int without system versioning) +with system versioning +select 1 as x; +ERROR HY000: Table `t1` must have at least one versioned column +drop database test; +create database test; diff --git a/mysql-test/suite/versioning/t/alter.test b/mysql-test/suite/versioning/t/alter.test index ac6f4acc7d3..735bde0614d 100644 --- a/mysql-test/suite/versioning/t/alter.test +++ b/mysql-test/suite/versioning/t/alter.test @@ -542,3 +542,37 @@ alter table t1 drop system versioning, add f2 int with system versioning; drop table t1; --source suite/versioning/common_finish.inc +--echo # MDEV-16490 It's possible to make a system versioned table without any versioning field + +set @@system_versioning_alter_history=keep; +create or replace table t (a int) with system versioning engine=innodb; +--error ER_VERS_TABLE_MUST_HAVE_COLUMNS +alter table t change column a a int without system versioning; + +alter table t + change column a a int without system versioning, + add column b int with system versioning; +show create table t; + +alter table t + change column a new_a int, + drop system versioning; +show create table t; + +alter table t add system versioning; +alter table t change column new_a a int without system versioning; +show create table t; + +--error ER_VERS_TABLE_MUST_HAVE_COLUMNS +alter table t + add column c int, + change column c c int without system versioning, + change column b b int without system versioning; + +alter table t + add column c int without system versioning, + change column c c int, + change column b b int without system versioning; + +drop database test; +create database test; diff --git a/mysql-test/suite/versioning/t/create.test b/mysql-test/suite/versioning/t/create.test index b53a9d6f369..b8caf6b7097 100644 --- a/mysql-test/suite/versioning/t/create.test +++ b/mysql-test/suite/versioning/t/create.test @@ -396,3 +396,14 @@ create table t ( ) with system versioning; --source suite/versioning/common_finish.inc +--echo # MDEV-16490 It's possible to make a system versioned table without any versioning field +create or replace table t1 (x int without system versioning) +with system versioning +select 1 as y; +--error ER_VERS_TABLE_MUST_HAVE_COLUMNS +create or replace table t1 (x int without system versioning) +with system versioning +select 1 as x; + +drop database test; +create database test; diff --git a/sql/handler.cc b/sql/handler.cc index 37811e08ac8..26aad3951c9 100644 --- a/sql/handler.cc +++ b/sql/handler.cc @@ -7164,8 +7164,7 @@ bool Vers_parse_info::fix_implicit(THD *thd, Alter_info *alter_info) bool Table_scope_and_contents_source_st::vers_fix_system_fields( - THD *thd, Alter_info *alter_info, const TABLE_LIST &create_table, - bool create_select) + THD *thd, Alter_info *alter_info, const TABLE_LIST &create_table) { DBUG_ASSERT(!(alter_info->flags & ALTER_DROP_SYSTEM_VERSIONING)); @@ -7205,40 +7204,55 @@ bool Table_scope_and_contents_source_st::vers_fix_system_fields( if (vers_info.fix_implicit(thd, alter_info)) return true; - int plain_cols= 0; // columns don't have WITH or WITHOUT SYSTEM VERSIONING - int vers_cols= 0; // columns have WITH SYSTEM VERSIONING - it.rewind(); - while (const Create_field *f= it++) - { - if (vers_info.is_start(*f) || vers_info.is_end(*f)) - continue; - - if (f->versioning == Column_definition::VERSIONING_NOT_SET) - plain_cols++; - else if (f->versioning == Column_definition::WITH_VERSIONING) - vers_cols++; - } - - if (!thd->lex->tmp_table() && - // CREATE from SELECT (Create_fields are not yet added) - !create_select && vers_cols == 0 && (plain_cols == 0 || !vers_info)) - { - my_error(ER_VERS_TABLE_MUST_HAVE_COLUMNS, MYF(0), - create_table.table_name.str); - return true; - } - return false; } bool Table_scope_and_contents_source_st::vers_check_system_fields( - THD *thd, Alter_info *alter_info, const TABLE_LIST &create_table) + THD *thd, Alter_info *alter_info, const Lex_table_name &table_name, + const Lex_table_name &db, int select_count) { if (!(options & HA_VERSIONED_TABLE)) return false; - return vers_info.check_sys_fields( - create_table.table_name, create_table.db, alter_info, + + if (!(alter_info->flags & ALTER_DROP_SYSTEM_VERSIONING)) + { + uint versioned_fields= 0; + uint fieldnr= 0; + List_iterator field_it(alter_info->create_list); + while (Create_field *f= field_it++) + { + /* + The field from the CREATE part can be duplicated in the SELECT part of + CREATE...SELECT. In that case double counts should be avoided. + select_create::create_table_from_items just pushes the fields back into + the create_list, without additional manipulations, so the fields from + SELECT go last there. + */ + bool is_dup= false; + if (fieldnr >= alter_info->create_list.elements - select_count) + { + List_iterator dup_it(alter_info->create_list); + for (Create_field *dup= dup_it++; !is_dup && dup != f; dup= dup_it++) + is_dup= my_strcasecmp(default_charset_info, + dup->field_name.str, f->field_name.str) == 0; + } + + if (!(f->flags & VERS_UPDATE_UNVERSIONED_FLAG) && !is_dup) + versioned_fields++; + fieldnr++; + } + if (versioned_fields == VERSIONING_FIELDS) + { + my_error(ER_VERS_TABLE_MUST_HAVE_COLUMNS, MYF(0), table_name.str); + return true; + } + } + + if (!(alter_info->flags & ALTER_ADD_SYSTEM_VERSIONING)) + return false; + + return vers_info.check_sys_fields(table_name, db, alter_info, ha_check_storage_engine_flag(db_type, HTON_NATIVE_SYS_VERSIONING)); } @@ -7343,20 +7357,7 @@ bool Vers_parse_info::fix_alter_info(THD *thd, Alter_info *alter_info, return false; } - if (fix_implicit(thd, alter_info)) - return true; - - if (alter_info->flags & ALTER_ADD_SYSTEM_VERSIONING) - { - const bool can_native= - ha_check_storage_engine_flag(create_info->db_type, - HTON_NATIVE_SYS_VERSIONING) || - create_info->db_type->db_type == DB_TYPE_PARTITION_DB; - if (check_sys_fields(table_name, share->db, alter_info, can_native)) - return true; - } - - return false; + return fix_implicit(thd, alter_info); } bool diff --git a/sql/handler.h b/sql/handler.h index 00698f853e3..8a5c16dc4a7 100644 --- a/sql/handler.h +++ b/sql/handler.h @@ -2104,11 +2104,12 @@ struct Table_scope_and_contents_source_st: } bool vers_fix_system_fields(THD *thd, Alter_info *alter_info, - const TABLE_LIST &create_table, - bool create_select= false); + const TABLE_LIST &create_table); bool vers_check_system_fields(THD *thd, Alter_info *alter_info, - const TABLE_LIST &create_table); + const Lex_table_name &table_name, + const Lex_table_name &db, + int select_count= 0); }; diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc index 2a7fca591c2..7913ea2b2ec 100644 --- a/sql/sql_insert.cc +++ b/sql/sql_insert.cc @@ -4185,8 +4185,7 @@ TABLE *select_create::create_table_from_items(THD *thd, if (!opt_explicit_defaults_for_timestamp) promote_first_timestamp_column(&alter_info->create_list); - if (create_info->vers_fix_system_fields(thd, alter_info, *create_table, - true)) + if (create_info->vers_fix_system_fields(thd, alter_info, *create_table)) DBUG_RETURN(NULL); while ((item=it++)) @@ -4225,7 +4224,10 @@ TABLE *select_create::create_table_from_items(THD *thd, alter_info->create_list.push_back(cr_field, thd->mem_root); } - if (create_info->vers_check_system_fields(thd, alter_info, *create_table)) + if (create_info->vers_check_system_fields(thd, alter_info, + create_table->table_name, + create_table->db, + select_field_count)) DBUG_RETURN(NULL); DEBUG_SYNC(thd,"create_table_select_before_create"); diff --git a/sql/sql_table.cc b/sql/sql_table.cc index 2df5858c6ea..490fabf145c 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -8511,13 +8511,6 @@ mysql_prepare_alter_table(THD *thd, TABLE *table, } } - if (table->versioned() && !(alter_info->flags & ALTER_DROP_SYSTEM_VERSIONING) && - new_create_list.elements == VERSIONING_FIELDS) - { - my_error(ER_VERS_TABLE_MUST_HAVE_COLUMNS, MYF(0), table->s->table_name.str); - goto err; - } - if (!create_info->comment.str) { create_info->comment.str= table->s->comment.str; @@ -9553,6 +9546,12 @@ do_continue:; DBUG_RETURN(true); } + if (create_info->vers_check_system_fields(thd, alter_info, + table->s->table_name, table->s->db)) + { + DBUG_RETURN(true); + } + set_table_default_charset(thd, create_info, &alter_ctx.db); if (!opt_explicit_defaults_for_timestamp) @@ -11170,7 +11169,9 @@ bool Sql_cmd_create_table_like::execute(THD *thd) else { if (create_info.vers_fix_system_fields(thd, &alter_info, *create_table) || - create_info.vers_check_system_fields(thd, &alter_info, *create_table)) + create_info.vers_check_system_fields(thd, &alter_info, + create_table->table_name, + create_table->db)) goto end_with_restore_list; /* From 879c9ddce7fd89f06f538e380016b408e4f2a2f4 Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Mon, 9 Sep 2019 19:57:25 +0200 Subject: [PATCH 22/36] MDEV-20542 Windows enable/d2OptimizeHugeFunctions --- cmake/os/Windows.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cmake/os/Windows.cmake b/cmake/os/Windows.cmake index ae0beeae5c5..ca6d13e1c1b 100644 --- a/cmake/os/Windows.cmake +++ b/cmake/os/Windows.cmake @@ -164,6 +164,8 @@ IF(MSVC) # Noisy warning C4800: 'type': forcing value to bool 'true' or 'false' (performance warning), # removed in VS2017 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4800") + ELSE() + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /d2OptimizeHugeFunctions") ENDIF() ENDIF() From aabd1c8fcbd19b9b0ec0fddea7071d815a984b12 Mon Sep 17 00:00:00 2001 From: Nikita Malyavin Date: Mon, 9 Sep 2019 22:30:53 +0300 Subject: [PATCH 23/36] MDEV-16490 fix versioning.partition failure --- sql/handler.cc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sql/handler.cc b/sql/handler.cc index 26aad3951c9..587ec633245 100644 --- a/sql/handler.cc +++ b/sql/handler.cc @@ -7252,8 +7252,11 @@ bool Table_scope_and_contents_source_st::vers_check_system_fields( if (!(alter_info->flags & ALTER_ADD_SYSTEM_VERSIONING)) return false; - return vers_info.check_sys_fields(table_name, db, alter_info, - ha_check_storage_engine_flag(db_type, HTON_NATIVE_SYS_VERSIONING)); + bool can_native= ha_check_storage_engine_flag(db_type, + HTON_NATIVE_SYS_VERSIONING) + || db_type->db_type == DB_TYPE_PARTITION_DB; + + return vers_info.check_sys_fields(table_name, db, alter_info, can_native); } From ff5ecfd335582967d76c418514a4310f6804fdaa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Tue, 10 Sep 2019 10:04:04 +0300 Subject: [PATCH 24/36] Correct the merge 0f83c8878dc1389212c134f65d37a43d9d248250 Re-enable some Galera tests that should have been enabled. Add client_ed25519.so to debian/libmariadb3.install; merge e47a143fc08f7114fd877ad8ee83d322f877a672 correctly. Remove a duplicated #include from wsrep_mysqld.cc. --- debian/libmariadb3.install | 1 + mysql-test/suite/galera/disabled.def | 7 +------ mysql-test/suite/wsrep/disabled.def | 1 - sql/wsrep_mysqld.cc | 1 - 4 files changed, 2 insertions(+), 8 deletions(-) diff --git a/debian/libmariadb3.install b/debian/libmariadb3.install index 8636166a493..9783e7b0b01 100644 --- a/debian/libmariadb3.install +++ b/debian/libmariadb3.install @@ -3,3 +3,4 @@ usr/lib/mysql/plugin/client_ed25519.so usr/lib/mysql/plugin/dialog.so usr/lib/mysql/plugin/mysql_clear_password.so usr/lib/mysql/plugin/sha256_password.so +usr/lib/mysql/plugin/client_ed25519.so diff --git a/mysql-test/suite/galera/disabled.def b/mysql-test/suite/galera/disabled.def index f88410321ca..1e2833042fc 100644 --- a/mysql-test/suite/galera/disabled.def +++ b/mysql-test/suite/galera/disabled.def @@ -25,12 +25,7 @@ galera_gcache_recover_manytrx : MDEV-18834 Galera test failure galera_ist_mariabackup : MDEV-18829 test leaves port open galera_ist_progress : MDEV-15236 fails when trying to read transfer status galera_migrate : MariaDB does not support START SLAVE USER -galera_pc_ignore_sb : MDEV-15811/MDEV-17357 Test failure -galera_ssl_upgrade : MDEV-13549 Galera test failures -galera_sst_mysqldump_with_key : MDEV-16890 Galera test failure -galera_var_node_address : MDEV-17151 Galera test failure -galera_var_notify_cmd : MDEV-13549 Galera test failures -galera_var_slave_threads : MDEV-19746 Galera test failures because of wsrep_slave_threads identification +galera_ssl_upgrade : MDEV-19950 Galera test failure on galera_ssl_upgrade galera_var_node_address : MDEV-20485 Galera test failure on galera.galera_var_node_address galera_wan : MDEV-17259 Test failure on galera.galera_wan partition : MDEV-19958 Galera test failure on galera.partition diff --git a/mysql-test/suite/wsrep/disabled.def b/mysql-test/suite/wsrep/disabled.def index 27f3f9287b6..66722b0bda3 100644 --- a/mysql-test/suite/wsrep/disabled.def +++ b/mysql-test/suite/wsrep/disabled.def @@ -11,4 +11,3 @@ ############################################################################## foreign_key : Sporadic failure "WSREP has not yet prepared node for application use" -variables : MDEV-19746 Galera test failures because of wsrep_slave_threads identification diff --git a/sql/wsrep_mysqld.cc b/sql/wsrep_mysqld.cc index 28a9ddb0bea..08adaac0e85 100644 --- a/sql/wsrep_mysqld.cc +++ b/sql/wsrep_mysqld.cc @@ -38,7 +38,6 @@ #include #include "log_event.h" #include -#include "sql_plugin.h" /* wsrep_plugins_pre_init() */ wsrep_t *wsrep = NULL; /* From acf0f2d59270ce8acc20e09c9c4d95091f13045f Mon Sep 17 00:00:00 2001 From: Nikita Malyavin Date: Tue, 10 Sep 2019 14:54:31 +0300 Subject: [PATCH 25/36] MDEV-20143 innodb.innodb-virtual-columns-debug failed in buildbot with wrong result there was a SELECT/DELETE race --- mysql-test/suite/innodb/r/innodb-virtual-columns-debug.result | 2 +- mysql-test/suite/innodb/t/innodb-virtual-columns-debug.test | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mysql-test/suite/innodb/r/innodb-virtual-columns-debug.result b/mysql-test/suite/innodb/r/innodb-virtual-columns-debug.result index efe43945c69..df6bf83d24f 100644 --- a/mysql-test/suite/innodb/r/innodb-virtual-columns-debug.result +++ b/mysql-test/suite/innodb/r/innodb-virtual-columns-debug.result @@ -6,11 +6,11 @@ SET debug_sync= "ib_open_after_dict_open SIGNAL delete_open WAIT_FOR another_ope DELETE FROM t1; connection default; SET debug_sync= "now WAIT_FOR delete_open"; -SET debug_sync= "ib_open_after_dict_open SIGNAL another_open"; SELECT a FROM t1; a NULL NULL +SET debug_sync= "now SIGNAL another_open"; connection con1; disconnect con1; connection default; diff --git a/mysql-test/suite/innodb/t/innodb-virtual-columns-debug.test b/mysql-test/suite/innodb/t/innodb-virtual-columns-debug.test index 6de43dd80f8..d4947ca4d8b 100644 --- a/mysql-test/suite/innodb/t/innodb-virtual-columns-debug.test +++ b/mysql-test/suite/innodb/t/innodb-virtual-columns-debug.test @@ -15,8 +15,8 @@ SET debug_sync= "ib_open_after_dict_open SIGNAL delete_open WAIT_FOR another_ope DELETE FROM t1; --connection default SET debug_sync= "now WAIT_FOR delete_open"; -SET debug_sync= "ib_open_after_dict_open SIGNAL another_open"; SELECT a FROM t1; +SET debug_sync= "now SIGNAL another_open"; --connection con1 --reap From 5ec4efb7b1b36006e629d258e396d8a95df127e1 Mon Sep 17 00:00:00 2001 From: Alexander Barkov Date: Wed, 11 Sep 2019 04:44:24 +0400 Subject: [PATCH 26/36] Adding missing semicolons to sql_yacc.yy (10.2) --- sql/sql_yacc.yy | 54 ++++++++++++++++++++++++++++++++++--------------- 1 file changed, 38 insertions(+), 16 deletions(-) diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index b5cece45148..468729b9bf9 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -3550,6 +3550,7 @@ statement_information_item: if ($$ == NULL) MYSQL_YYABORT; } + ; simple_target_specification: ident @@ -3607,6 +3608,7 @@ condition_information_item: if ($$ == NULL) MYSQL_YYABORT; } + ; condition_information_item_name: CLASS_ORIGIN_SYM @@ -6561,15 +6563,18 @@ field_length: '(' LONG_NUM ')' { $$= $2.str; } | '(' ULONGLONG_NUM ')' { $$= $2.str; } | '(' DECIMAL_NUM ')' { $$= $2.str; } - | '(' NUM ')' { $$= $2.str; }; + | '(' NUM ')' { $$= $2.str; } + ; opt_field_length: /* empty */ { $$= (char*) 0; /* use default length */ } | field_length { $$= $1; } + ; opt_field_length_default_1: /* empty */ { $$= (char*) "1"; } | field_length { $$= $1; } + ; opt_precision: /* empty */ { $$.set(0, 0); } @@ -6989,12 +6994,14 @@ fulltext_key_opts: opt_USING_key_algorithm: /* Empty*/ { $$= HA_KEY_ALG_UNDEF; } | USING btree_or_rtree { $$= $2; } + ; /* TYPE is a valid identifier, so it's handled differently than USING */ opt_key_algorithm_clause: /* Empty*/ { $$= HA_KEY_ALG_UNDEF; } | USING btree_or_rtree { $$= $2; } | TYPE_SYM btree_or_rtree { $$= $2; } + ; key_using_alg: USING btree_or_rtree @@ -7106,7 +7113,8 @@ string_list: text_string { Lex->last_field->interval_list.push_back($1, thd->mem_root); } | string_list ',' text_string - { Lex->last_field->interval_list.push_back($3, thd->mem_root); }; + { Lex->last_field->interval_list.push_back($3, thd->mem_root); } + ; /* ** Alter table @@ -7755,6 +7763,7 @@ opt_index_lock_algorithm: | alter_algorithm_option | alter_lock_option alter_algorithm_option | alter_algorithm_option alter_lock_option + ; alter_algorithm_option: ALGORITHM_SYM opt_equal DEFAULT @@ -7813,6 +7822,7 @@ alter_option: Lex->alter_info.requested_lock= Alter_info::ALTER_TABLE_LOCK_NONE; } + ; opt_restrict: @@ -8077,6 +8087,7 @@ persistent_stat_spec: {} | COLUMNS persistent_column_stat_spec INDEXES persistent_index_stat_spec {} + ; persistent_column_stat_spec: ALL {} @@ -8780,13 +8791,13 @@ select_alias: opt_default_time_precision: /* empty */ { $$= NOT_FIXED_DEC; } | '(' ')' { $$= NOT_FIXED_DEC; } - | '(' real_ulong_num ')' { $$= $2; }; + | '(' real_ulong_num ')' { $$= $2; } ; opt_time_precision: /* empty */ { $$= 0; } | '(' ')' { $$= 0; } - | '(' real_ulong_num ')' { $$= $2; }; + | '(' real_ulong_num ')' { $$= $2; } ; optional_braces: @@ -9265,6 +9276,7 @@ dyncall_create_element: else $$->len= 0; } + ; dyncall_create_list: dyncall_create_element @@ -10664,7 +10676,7 @@ opt_gconcat_separator: opt_gorder_clause: /* empty */ - | ORDER_SYM BY gorder_list; + | ORDER_SYM BY gorder_list ; gorder_list: @@ -11569,6 +11581,7 @@ opt_window_ref: if (thd->lex->win_ref == NULL) MYSQL_YYABORT; } + ; opt_window_partition_clause: /* empty */ { } @@ -11894,6 +11907,7 @@ limit_rows_option: LEX *lex=Lex; lex->limit_rows_examined= $1; } + ; delete_limit_clause: /* empty */ @@ -12406,7 +12420,8 @@ insert_table: lex->field_list.empty(); lex->many_values.empty(); lex->insert_list=0; - }; + } + ; insert_field_spec: insert_values {} @@ -13424,6 +13439,7 @@ delete_domain_id: optional_flush_tables_arguments: /* empty */ {$$= 0;} | AND_SYM DISABLE_SYM CHECKPOINT_SYM {$$= REFRESH_CHECKPOINT; } + ; reset: RESET_SYM @@ -13516,6 +13532,7 @@ kill_type: /* Empty */ { $$= (int) KILL_HARD_BIT; } | HARD_SYM { $$= (int) KILL_HARD_BIT; } | SOFT_SYM { $$= 0; } + ; kill_option: /* empty */ { $$= (int) KILL_CONNECTION; } @@ -13690,7 +13707,8 @@ line_term: opt_xml_rows_identified_by: /* empty */ { } | ROWS_SYM IDENTIFIED_SYM BY text_string - { Lex->exchange->line_term = $4; }; + { Lex->exchange->line_term = $4; } + ; opt_ignore_lines: /* empty */ @@ -14507,6 +14525,7 @@ TEXT_STRING_filesystem: MYSQL_YYABORT; } } + ; ident_table_alias: IDENT_sys { $$= $1; } @@ -15799,12 +15818,14 @@ grant_command: ; opt_with_admin: - /* nothing */ { Lex->definer = 0; } - | WITH ADMIN_SYM user_or_role { Lex->definer = $3; } + /* nothing */ { Lex->definer = 0; } + | WITH ADMIN_SYM user_or_role { Lex->definer = $3; } + ; opt_with_admin_option: - /* nothing */ { Lex->with_admin_option= false; } - | WITH ADMIN_SYM OPTION { Lex->with_admin_option= true; } + /* nothing */ { Lex->with_admin_option= false; } + | WITH ADMIN_SYM OPTION { Lex->with_admin_option= true; } + ; role_list: grant_role @@ -16231,7 +16252,7 @@ opt_release: { $$= TVL_UNKNOWN; } | RELEASE_SYM { $$= TVL_YES; } | NO_SYM RELEASE_SYM { $$= TVL_NO; } -; + ; opt_savepoint: /* empty */ {} @@ -17052,10 +17073,11 @@ uninstall: /* Avoid compiler warning from sql_yacc.cc where yyerrlab1 is not used */ keep_gcc_happy: - IMPOSSIBLE_ACTION - { - YYERROR; - } + IMPOSSIBLE_ACTION + { + YYERROR; + } + ; /** @} (end of group Parser) From f1309fac33086f404ef096be3e67dad737091da8 Mon Sep 17 00:00:00 2001 From: Alexander Barkov Date: Wed, 11 Sep 2019 05:12:37 +0400 Subject: [PATCH 27/36] Adding missing semicolons to sql_yacc.yy (10.3), indentation cleanups. --- sql/sql_yacc.yy | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 60fdb79cf68..5977404e9c3 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -2901,24 +2901,26 @@ create: ; sf_tail_not_aggregate: - sf_tail - { - if (unlikely(Lex->sphead->m_flags & sp_head::HAS_AGGREGATE_INSTR)) + sf_tail { - my_yyabort_error((ER_NOT_AGGREGATE_FUNCTION, MYF(0))); + if (unlikely(Lex->sphead->m_flags & sp_head::HAS_AGGREGATE_INSTR)) + { + my_yyabort_error((ER_NOT_AGGREGATE_FUNCTION, MYF(0))); + } + Lex->sphead->set_chistics_agg_type(NOT_AGGREGATE); } - Lex->sphead->set_chistics_agg_type(NOT_AGGREGATE); - } + ; sf_tail_aggregate: - sf_tail - { - if (unlikely(!(Lex->sphead->m_flags & sp_head::HAS_AGGREGATE_INSTR))) + sf_tail { - my_yyabort_error((ER_INVALID_AGGREGATE_FUNCTION, MYF(0))); + if (unlikely(!(Lex->sphead->m_flags & sp_head::HAS_AGGREGATE_INSTR))) + { + my_yyabort_error((ER_INVALID_AGGREGATE_FUNCTION, MYF(0))); + } + Lex->sphead->set_chistics_agg_type(GROUP_AGGREGATE); } - Lex->sphead->set_chistics_agg_type(GROUP_AGGREGATE); - } + ; create_function_tail: sf_tail_not_aggregate { } @@ -13008,6 +13010,7 @@ opt_plus: int_num: opt_plus NUM { int error; $$= (int) my_strtoll10($2.str, (char**) 0, &error); } | '-' NUM { int error; $$= -(int) my_strtoll10($2.str, (char**) 0, &error); } + ; ulong_num: opt_plus NUM { int error; $$= (ulong) my_strtoll10($2.str, (char**) 0, &error); } @@ -13031,7 +13034,7 @@ longlong_num: | LONG_NUM { int error; $$= (longlong) my_strtoll10($1.str, (char**) 0, &error); } | '-' NUM { int error; $$= -(longlong) my_strtoll10($2.str, (char**) 0, &error); } | '-' LONG_NUM { int error; $$= -(longlong) my_strtoll10($2.str, (char**) 0, &error); } - + ; ulonglong_num: opt_plus NUM { int error; $$= (ulonglong) my_strtoll10($2.str, (char**) 0, &error); } @@ -13068,7 +13071,7 @@ bool: ulong_num { $$= $1 != 0; } | TRUE_SYM { $$= 1; } | FALSE_SYM { $$= 0; } - + ; procedure_clause: PROCEDURE_SYM ident /* Procedure name */ @@ -17492,7 +17495,7 @@ unit_type_decl: { $$= INTERSECT_TYPE; } | EXCEPT_SYM { $$= EXCEPT_TYPE; } - + ; union_clause: /* empty */ {} From f1616bacb7dab7bd62f509647d4e3fd2f7a4234e Mon Sep 17 00:00:00 2001 From: Alexander Barkov Date: Wed, 11 Sep 2019 10:13:19 +0400 Subject: [PATCH 28/36] Adding missing semicolons to sql_yacc_ora.yy (10.3), indentation cleanups. --- sql/sql_yacc_ora.yy | 64 +++++++++++++++++++++++++++++++-------------- 1 file changed, 44 insertions(+), 20 deletions(-) diff --git a/sql/sql_yacc_ora.yy b/sql/sql_yacc_ora.yy index b31f2a0f890..5dc3e82edce 100644 --- a/sql/sql_yacc_ora.yy +++ b/sql/sql_yacc_ora.yy @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ /* sql_yacc.yy */ @@ -3734,6 +3734,7 @@ statement_information_item: if (unlikely($$ == NULL)) MYSQL_YYABORT; } + ; simple_target_specification: ident_cli @@ -3790,6 +3791,7 @@ condition_information_item: if (unlikely($$ == NULL)) MYSQL_YYABORT; } + ; condition_information_item_name: CLASS_ORIGIN_SYM @@ -7133,15 +7135,18 @@ field_length: '(' LONG_NUM ')' { $$= $2.str; } | '(' ULONGLONG_NUM ')' { $$= $2.str; } | '(' DECIMAL_NUM ')' { $$= $2.str; } - | '(' NUM ')' { $$= $2.str; }; + | '(' NUM ')' { $$= $2.str; } + ; opt_field_length: /* empty */ { $$= (char*) 0; /* use default length */ } | field_length { $$= $1; } + ; opt_field_length_default_1: /* empty */ { $$= (char*) "1"; } | field_length { $$= $1; } + ; /* @@ -7164,10 +7169,12 @@ opt_field_length_default_1: opt_field_length_default_sp_param_varchar: /* empty */ { $$.set("4000", "4000"); } | field_length { $$.set($1, NULL); } + ; opt_field_length_default_sp_param_char: /* empty */ { $$.set("2000", "2000"); } | field_length { $$.set($1, NULL); } + ; opt_precision: /* empty */ { $$.set(0, 0); } @@ -7671,12 +7678,14 @@ fulltext_key_opts: opt_USING_key_algorithm: /* Empty*/ { $$= HA_KEY_ALG_UNDEF; } | USING btree_or_rtree { $$= $2; } + ; /* TYPE is a valid identifier, so it's handled differently than USING */ opt_key_algorithm_clause: /* Empty*/ { $$= HA_KEY_ALG_UNDEF; } | USING btree_or_rtree { $$= $2; } | TYPE_SYM btree_or_rtree { $$= $2; } + ; key_using_alg: USING btree_or_rtree @@ -7787,7 +7796,8 @@ string_list: text_string { Lex->last_field->interval_list.push_back($1, thd->mem_root); } | string_list ',' text_string - { Lex->last_field->interval_list.push_back($3, thd->mem_root); }; + { Lex->last_field->interval_list.push_back($3, thd->mem_root); } + ; /* ** Alter table @@ -8454,6 +8464,7 @@ opt_index_lock_algorithm: | alter_algorithm_option | alter_lock_option alter_algorithm_option | alter_algorithm_option alter_lock_option + ; alter_algorithm_option: ALGORITHM_SYM opt_equal DEFAULT @@ -8512,6 +8523,7 @@ alter_option: Lex->alter_info.requested_lock= Alter_info::ALTER_TABLE_LOCK_NONE; } + ; opt_restrict: @@ -8779,6 +8791,7 @@ persistent_stat_spec: {} | COLUMNS persistent_column_stat_spec INDEXES persistent_index_stat_spec {} + ; persistent_column_stat_spec: ALL {} @@ -9597,13 +9610,13 @@ select_alias: opt_default_time_precision: /* empty */ { $$= NOT_FIXED_DEC; } | '(' ')' { $$= NOT_FIXED_DEC; } - | '(' real_ulong_num ')' { $$= $2; }; + | '(' real_ulong_num ')' { $$= $2; } ; opt_time_precision: /* empty */ { $$= 0; } | '(' ')' { $$= 0; } - | '(' real_ulong_num ')' { $$= $2; }; + | '(' real_ulong_num ')' { $$= $2; } ; optional_braces: @@ -10108,6 +10121,7 @@ dyncall_create_element: else $$->len= 0; } + ; dyncall_create_list: dyncall_create_element @@ -11588,7 +11602,7 @@ opt_gconcat_separator: opt_gorder_clause: /* empty */ - | ORDER_SYM BY gorder_list; + | ORDER_SYM BY gorder_list ; gorder_list: @@ -12605,6 +12619,7 @@ opt_window_ref: if (unlikely(thd->lex->win_ref == NULL)) MYSQL_YYABORT; } + ; opt_window_partition_clause: /* empty */ { } @@ -12913,6 +12928,7 @@ limit_rows_option: LEX *lex=Lex; lex->limit_rows_examined= $1; } + ; delete_limit_clause: /* empty */ @@ -12939,6 +12955,7 @@ opt_plus: int_num: opt_plus NUM { int error; $$= (int) my_strtoll10($2.str, (char**) 0, &error); } | '-' NUM { int error; $$= -(int) my_strtoll10($2.str, (char**) 0, &error); } + ; ulong_num: opt_plus NUM { int error; $$= (ulong) my_strtoll10($2.str, (char**) 0, &error); } @@ -12962,7 +12979,7 @@ longlong_num: | LONG_NUM { int error; $$= (longlong) my_strtoll10($1.str, (char**) 0, &error); } | '-' NUM { int error; $$= -(longlong) my_strtoll10($2.str, (char**) 0, &error); } | '-' LONG_NUM { int error; $$= -(longlong) my_strtoll10($2.str, (char**) 0, &error); } - + ; ulonglong_num: opt_plus NUM { int error; $$= (ulonglong) my_strtoll10($2.str, (char**) 0, &error); } @@ -12999,7 +13016,7 @@ bool: ulong_num { $$= $1 != 0; } | TRUE_SYM { $$= 1; } | FALSE_SYM { $$= 0; } - + ; procedure_clause: PROCEDURE_SYM ident /* Procedure name */ @@ -13468,7 +13485,8 @@ insert_table: lex->field_list.empty(); lex->many_values.empty(); lex->insert_list=0; - }; + } + ; insert_field_spec: insert_values {} @@ -14633,6 +14651,7 @@ delete_domain_id: optional_flush_tables_arguments: /* empty */ {$$= 0;} | AND_SYM DISABLE_SYM CHECKPOINT_SYM {$$= REFRESH_CHECKPOINT; } + ; reset: RESET_SYM @@ -14725,6 +14744,7 @@ kill_type: /* Empty */ { $$= (int) KILL_HARD_BIT; } | HARD_SYM { $$= (int) KILL_HARD_BIT; } | SOFT_SYM { $$= 0; } + ; kill_option: /* empty */ { $$= (int) KILL_CONNECTION; } @@ -14901,7 +14921,8 @@ line_term: opt_xml_rows_identified_by: /* empty */ { } | ROWS_SYM IDENTIFIED_SYM BY text_string - { Lex->exchange->line_term = $4; }; + { Lex->exchange->line_term = $4; } + ; opt_ignore_lines: /* empty */ @@ -17026,12 +17047,14 @@ grant_command: ; opt_with_admin: - /* nothing */ { Lex->definer = 0; } - | WITH ADMIN_SYM user_or_role { Lex->definer = $3; } + /* nothing */ { Lex->definer = 0; } + | WITH ADMIN_SYM user_or_role { Lex->definer = $3; } + ; opt_with_admin_option: - /* nothing */ { Lex->with_admin_option= false; } - | WITH ADMIN_SYM OPTION { Lex->with_admin_option= true; } + /* nothing */ { Lex->with_admin_option= false; } + | WITH ADMIN_SYM OPTION { Lex->with_admin_option= true; } + ; role_list: grant_role @@ -17459,7 +17482,7 @@ opt_release: { $$= TVL_UNKNOWN; } | RELEASE_SYM { $$= TVL_YES; } | NO_SYM RELEASE_SYM { $$= TVL_NO; } -; + ; commit: COMMIT_SYM opt_work opt_chain opt_release @@ -17526,7 +17549,7 @@ unit_type_decl: { $$= INTERSECT_TYPE; } | EXCEPT_SYM { $$= EXCEPT_TYPE; } - + ; union_clause: /* empty */ {} @@ -18232,10 +18255,11 @@ uninstall: /* Avoid compiler warning from sql_yacc.cc where yyerrlab1 is not used */ keep_gcc_happy: - IMPOSSIBLE_ACTION - { - YYERROR; - } + IMPOSSIBLE_ACTION + { + YYERROR; + } + ; /** @} (end of group Parser) From df4dee4b84ddc34799fa3a9648c142f12564597f Mon Sep 17 00:00:00 2001 From: Thirunarayanan Balathandayuthapani Date: Wed, 11 Sep 2019 16:02:41 +0530 Subject: [PATCH 29/36] MDEV-17939 Assertion `++loop_count < 2' failed in trx_undo_report_rename - During trx_undo_report_rename(), InnoDB can fail to write undo log for it if undo log doesn't fit in the undo page. In that case, InnoDB adds one more undo log page and retry to write the rename undo log. But the assert is wrong and it doesn't allow to fail even for one time. --- storage/innobase/trx/trx0rec.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage/innobase/trx/trx0rec.cc b/storage/innobase/trx/trx0rec.cc index 821da9abd55..3bf5e1d6fcf 100644 --- a/storage/innobase/trx/trx0rec.cc +++ b/storage/innobase/trx/trx0rec.cc @@ -1953,7 +1953,7 @@ dberr_t trx_undo_report_rename(trx_t* trx, const dict_table_t* table) ut_ad((err == DB_SUCCESS) == !!block); for (ut_d(int loop_count = 0); block;) { - ut_ad(++loop_count < 2); + ut_ad(loop_count++ < 2); buf_block_dbg_add_level(block, SYNC_TRX_UNDO_PAGE); ut_ad(undo->last_page_no == block->page.id.page_no()); From 0f950e53f0f6432cbc3f6c9c11cffa53205e1e60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Wed, 11 Sep 2019 15:08:32 +0300 Subject: [PATCH 30/36] MDEV-20562 btr_cur_open_at_rnd_pos() fails to return error for corrupted page In mysql-server/commit@f46329044f8618212923bdf52e15d5b464201edc the InnoDB function btr_cur_open_at_rnd_pos() was corrected so that it would return a status that indicates whether the cursor was successfully positioned. But this change was not correctly merged to MariaDB in 2e814d4702d71a04388386a9f591d14a35980bfe. btr_cur_open_at_rnd_pos(): In the code path that was introduced in MDEV-8588, properly return failure status. No deterministic test case was found for this failure. It was caught after removing the function page_copy_rec_list_end_to_created_page() in a development branch. As a result, the fill factor of index trees would improve, and supposedly, so would the probability of btr_cur_open_at_rnd_pos() reaching the intentionally corrupted page in the test innodb.leaf_page_corrupted_during_recovery. The wrong return value would cause btr_estimate_number_of_different_key_vals() to wrongly invoke btr_rec_get_externally_stored_len() on a non-leaf page and trigger an assertion failure at the start of that function. --- storage/innobase/btr/btr0cur.cc | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/storage/innobase/btr/btr0cur.cc b/storage/innobase/btr/btr0cur.cc index 349ae990edb..b23cacac227 100644 --- a/storage/innobase/btr/btr0cur.cc +++ b/storage/innobase/btr/btr0cur.cc @@ -2658,7 +2658,7 @@ btr_cur_open_at_rnd_pos_func( index->table->file_unreadable = true; } - goto exit_loop; + break; } page = buf_block_get_frame(block); @@ -2815,12 +2815,11 @@ btr_cur_open_at_rnd_pos_func( n_blocks++; } - exit_loop: if (UNIV_LIKELY_NULL(heap)) { mem_heap_free(heap); } - return(true); + return err == DB_SUCCESS; } /*==================== B-TREE INSERT =========================*/ From 863a95173110e1528e7a47fe688fea8784eb67b6 Mon Sep 17 00:00:00 2001 From: Daniel Bartholomew Date: Wed, 11 Sep 2019 09:11:58 -0400 Subject: [PATCH 31/36] bump the VERSION --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 5bceb99bb75..afc278083d5 100644 --- a/VERSION +++ b/VERSION @@ -1,3 +1,3 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=2 -MYSQL_VERSION_PATCH=27 +MYSQL_VERSION_PATCH=28 From 40ab433ecca1ce265e6a9213061bcae4f8014767 Mon Sep 17 00:00:00 2001 From: Daniel Bartholomew Date: Wed, 11 Sep 2019 09:13:47 -0400 Subject: [PATCH 32/36] bump the VERSION --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index f8eaedc3ab8..cc5f307fe82 100644 --- a/VERSION +++ b/VERSION @@ -1,4 +1,4 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=3 -MYSQL_VERSION_PATCH=18 +MYSQL_VERSION_PATCH=19 SERVER_MATURITY=stable From 5c5452a5a086a9584efb2255059da671fff6e484 Mon Sep 17 00:00:00 2001 From: Daniel Bartholomew Date: Wed, 11 Sep 2019 09:15:28 -0400 Subject: [PATCH 33/36] bump the VERSION --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 647db66e3f8..04c5d83db42 100644 --- a/VERSION +++ b/VERSION @@ -1,4 +1,4 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=4 -MYSQL_VERSION_PATCH=8 +MYSQL_VERSION_PATCH=9 SERVER_MATURITY=stable From 9bacc9d0c1957650374951637dcfd42cd09c5f5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lindstr=C3=B6m?= Date: Wed, 11 Sep 2019 13:13:37 +0300 Subject: [PATCH 34/36] MDEV-20505: Server crash on startup beacuse of bad wsrep configuration Problem was that if user used bad wsrep configuration we call unireg_abort and in wsrep case there is check to wsrep_server_state that might not yet be initialized. Fixed by checking that wsrep_server_state is initialized before checking it's state. Changes to be committed: modified: sql/mysqld.cc modified: sql/wsrep_server_state.h --- sql/mysqld.cc | 2 ++ sql/wsrep_server_state.h | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 268c8114d83..3e664491bac 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -1879,6 +1879,7 @@ extern "C" void unireg_abort(int exit_code) #ifdef WITH_WSREP if (WSREP_ON && + Wsrep_server_state::is_inited() && Wsrep_server_state::instance().state() != wsrep::server_state::s_disconnected) { /* @@ -5108,6 +5109,7 @@ static int init_server_components() #ifdef WITH_WSREP if (wsrep_init_server()) unireg_abort(1); + if (WSREP_ON && !wsrep_recovery && !opt_abort) { if (opt_bootstrap) // bootsrap option given - disable wsrep functionality diff --git a/sql/wsrep_server_state.h b/sql/wsrep_server_state.h index 34ff4105180..1ef937300f6 100644 --- a/sql/wsrep_server_state.h +++ b/sql/wsrep_server_state.h @@ -35,11 +35,17 @@ public: const wsrep::gtid& initial_position, int max_protocol_version); static void destroy(); + static Wsrep_server_state& instance() { return *m_instance; } + static bool is_inited() + { + return (m_instance != NULL); + } + static wsrep::provider& get_provider() { return instance().provider(); From 9554ef067878c4650ef4b9ad44e0b222cdb313a5 Mon Sep 17 00:00:00 2001 From: Alexey Botchkov Date: Thu, 12 Sep 2019 11:12:55 +0400 Subject: [PATCH 35/36] MDEV-19670 json escaped unicode parse error. Fixed 4-byte length characters handled incorrectly. --- mysql-test/main/func_json.result | 9 +++++++++ mysql-test/main/func_json.test | 7 +++++++ strings/json_lib.c | 4 +++- 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/mysql-test/main/func_json.result b/mysql-test/main/func_json.result index 4faa6f44f9f..b6f49c82895 100644 --- a/mysql-test/main/func_json.result +++ b/mysql-test/main/func_json.result @@ -942,5 +942,14 @@ def json_depnth 3 10 1 N 32897 0 63 json_length json_depnth 2 3 # +# MDEV-19670 json escaped unicode parse error +# +SELECT json_valid('{"value":"\\ud83d\\ude0a"}'); +json_valid('{"value":"\\ud83d\\ude0a"}') +1 +SELECT json_valid('{"test": "\\ud83d\\ude0b"}'); +json_valid('{"test": "\\ud83d\\ude0b"}') +1 +# # End of 10.3 tests # diff --git a/mysql-test/main/func_json.test b/mysql-test/main/func_json.test index 33f8a598670..ccee538e74f 100644 --- a/mysql-test/main/func_json.test +++ b/mysql-test/main/func_json.test @@ -561,6 +561,13 @@ SELECT --enable_ps_protocol --disable_metadata +--echo # +--echo # MDEV-19670 json escaped unicode parse error +--echo # + +SELECT json_valid('{"value":"\\ud83d\\ude0a"}'); +SELECT json_valid('{"test": "\\ud83d\\ude0b"}'); + --echo # --echo # End of 10.3 tests --echo # diff --git a/strings/json_lib.c b/strings/json_lib.c index 24c79cb9044..77b41dceb20 100644 --- a/strings/json_lib.c +++ b/strings/json_lib.c @@ -320,15 +320,17 @@ static int json_handle_esc(json_string_t *s) if (s->c_next != '\\') return s->error= JE_SYN; + s->c_str+= c_len; if ((c_len= json_next_char(s)) <= 0) return s->error= json_eos(s) ? JE_EOS : JE_BAD_CHR; if (s->c_next != 'u') return s->error= JE_SYN; + s->c_str+= c_len; if (read_4_hexdigits(s, code+2)) return 1; - if ((c_len= my_utf16_uni(0, &s->c_next, code, code+4)) == 2) + if ((c_len= my_utf16_uni(0, &s->c_next, code, code+4)) == 4) return 0; } return s->error= JE_BAD_CHR; From ebddd8699c02519f99a313182b96ae1c04a67a63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Thu, 12 Sep 2019 11:42:48 +0300 Subject: [PATCH 36/36] MDEV-20565 Assertion failure on CHANGE COLUMN...SYSTEM VERSIONING innobase_rename_or_enlarge_column_try(): Relax a debug assertion. The DATA_VERSIONED bits in dict_col_t::prtype do not affect the storage format. --- .../suite/innodb/r/instant_alter_bugs.result | 14 ++++++++++++++ .../suite/innodb/t/instant_alter_bugs.test | 16 ++++++++++++++++ storage/innobase/handler/handler0alter.cc | 2 +- 3 files changed, 31 insertions(+), 1 deletion(-) diff --git a/mysql-test/suite/innodb/r/instant_alter_bugs.result b/mysql-test/suite/innodb/r/instant_alter_bugs.result index 109cbffe871..045b7468049 100644 --- a/mysql-test/suite/innodb/r/instant_alter_bugs.result +++ b/mysql-test/suite/innodb/r/instant_alter_bugs.result @@ -269,3 +269,17 @@ ALTER TABLE t1 ADD COLUMN (b INT, c INT, d INT, e INT NOT NULL DEFAULT 0); ALTER TABLE t1 ADD UNIQUE INDEX(e); ALTER TABLE t1 DROP b, DROP c, DROP d, DROP e; DROP TABLE t1; +# +# MDEV-20565 Assertion on CHANGE COLUMN...SYSTEM VERSIONING +# +set @@system_versioning_alter_history = keep; +CREATE TABLE t (a INT WITHOUT SYSTEM VERSIONING, b INT) ENGINE=InnoDB +WITH SYSTEM VERSIONING; +ALTER TABLE t CHANGE COLUMN a alpha INT WITH SYSTEM VERSIONING, +ALGORITHM=INSTANT; +DROP TABLE t; +CREATE TABLE t (alpha INT, b INT) ENGINE=InnoDB WITH SYSTEM VERSIONING; +ALTER TABLE t CHANGE COLUMN alpha a INT WITHOUT SYSTEM VERSIONING, +ALGORITHM=INSTANT; +DROP TABLE t; +set @@system_versioning_alter_history = error; diff --git a/mysql-test/suite/innodb/t/instant_alter_bugs.test b/mysql-test/suite/innodb/t/instant_alter_bugs.test index fc5e3ca56e4..fda8e88d70c 100644 --- a/mysql-test/suite/innodb/t/instant_alter_bugs.test +++ b/mysql-test/suite/innodb/t/instant_alter_bugs.test @@ -277,3 +277,19 @@ ALTER TABLE t1 ADD COLUMN (b INT, c INT, d INT, e INT NOT NULL DEFAULT 0); ALTER TABLE t1 ADD UNIQUE INDEX(e); ALTER TABLE t1 DROP b, DROP c, DROP d, DROP e; DROP TABLE t1; + +--echo # +--echo # MDEV-20565 Assertion on CHANGE COLUMN...SYSTEM VERSIONING +--echo # +set @@system_versioning_alter_history = keep; +CREATE TABLE t (a INT WITHOUT SYSTEM VERSIONING, b INT) ENGINE=InnoDB +WITH SYSTEM VERSIONING; +ALTER TABLE t CHANGE COLUMN a alpha INT WITH SYSTEM VERSIONING, +ALGORITHM=INSTANT; +DROP TABLE t; + +CREATE TABLE t (alpha INT, b INT) ENGINE=InnoDB WITH SYSTEM VERSIONING; +ALTER TABLE t CHANGE COLUMN alpha a INT WITHOUT SYSTEM VERSIONING, +ALGORITHM=INSTANT; +DROP TABLE t; +set @@system_versioning_alter_history = error; diff --git a/storage/innobase/handler/handler0alter.cc b/storage/innobase/handler/handler0alter.cc index f280c735e05..5a7360e516a 100644 --- a/storage/innobase/handler/handler0alter.cc +++ b/storage/innobase/handler/handler0alter.cc @@ -9139,7 +9139,7 @@ innobase_rename_or_enlarge_column_try( case DATA_BLOB: break; default: - ut_ad(col->prtype == prtype); + ut_ad(!((col->prtype ^ prtype) & ~DATA_VERSIONED)); ut_ad(col->mtype == mtype); ut_ad(col->len == len); }