summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2018-08-31 13:47:48 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2018-08-31 15:10:02 +0300
commit206528f722799b04708c60a71b59d75bd32bdeb3 (patch)
treed59cf6cdc943a797bc9ef901865da3566c27d93a /mysql-test
parentb245023fe0bc6fa0bd6e2dfa9352b30b71d0d27d (diff)
parentf693170c75a1f39f3f06aca683fe4a1998785008 (diff)
downloadmariadb-git-206528f722799b04708c60a71b59d75bd32bdeb3.tar.gz
Merge 10.1 into 10.2
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/suite/galera/r/galera_binlog_stmt_autoinc.result161
-rw-r--r--mysql-test/suite/galera/r/galera_sst_rsync_data_dir.result396
-rw-r--r--mysql-test/suite/galera/t/galera_binlog_stmt_autoinc.test223
-rw-r--r--mysql-test/suite/galera/t/galera_sst_rsync_data_dir.cnf11
-rw-r--r--mysql-test/suite/galera/t/galera_sst_rsync_data_dir.test16
-rw-r--r--mysql-test/suite/maria/concurrent.result33
-rw-r--r--mysql-test/suite/maria/concurrent.test28
-rw-r--r--mysql-test/suite/plugins/r/auth_ed25519.result2
8 files changed, 485 insertions, 385 deletions
diff --git a/mysql-test/suite/galera/r/galera_binlog_stmt_autoinc.result b/mysql-test/suite/galera/r/galera_binlog_stmt_autoinc.result
deleted file mode 100644
index 78b40228eb0..00000000000
--- a/mysql-test/suite/galera/r/galera_binlog_stmt_autoinc.result
+++ /dev/null
@@ -1,161 +0,0 @@
-connection node_1;
-connection node_2;
-connection node_2;
-SET GLOBAL wsrep_forced_binlog_format='STATEMENT';
-connection node_1;
-SET GLOBAL wsrep_forced_binlog_format='STATEMENT';
-CREATE TABLE t1 (
-i int(11) NOT NULL AUTO_INCREMENT,
-c char(32) DEFAULT 'dummy_text',
-PRIMARY KEY (i)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-insert into t1(i) values(null);
-select * from t1;
-i c
-1 dummy_text
-insert into t1(i) values(null), (null), (null);
-select * from t1;
-i c
-1 dummy_text
-3 dummy_text
-5 dummy_text
-7 dummy_text
-connection node_2;
-select * from t1;
-i c
-1 dummy_text
-3 dummy_text
-5 dummy_text
-7 dummy_text
-SET GLOBAL wsrep_forced_binlog_format='none';
-connection node_1;
-SET GLOBAL wsrep_forced_binlog_format='none';
-drop table t1;
-SET SESSION binlog_format='STATEMENT';
-show variables like 'binlog_format';
-Variable_name Value
-binlog_format STATEMENT
-SET GLOBAL wsrep_auto_increment_control='OFF';
-SET SESSION auto_increment_increment = 3;
-SET SESSION auto_increment_offset = 1;
-CREATE TABLE t1 (
-i int(11) NOT NULL AUTO_INCREMENT,
-c char(32) DEFAULT 'dummy_text',
-PRIMARY KEY (i)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-insert into t1(i) values(null);
-select * from t1;
-i c
-1 dummy_text
-insert into t1(i) values(null), (null), (null);
-select * from t1;
-i c
-1 dummy_text
-4 dummy_text
-7 dummy_text
-10 dummy_text
-connection node_2;
-select * from t1;
-i c
-1 dummy_text
-4 dummy_text
-7 dummy_text
-10 dummy_text
-connection node_1;
-SET GLOBAL wsrep_auto_increment_control='ON';
-SET SESSION binlog_format='ROW';
-show variables like 'binlog_format';
-Variable_name Value
-binlog_format ROW
-show variables like '%auto_increment%';
-Variable_name Value
-auto_increment_increment 2
-auto_increment_offset 1
-wsrep_auto_increment_control ON
-SET GLOBAL wsrep_auto_increment_control='OFF';
-show variables like '%auto_increment%';
-Variable_name Value
-auto_increment_increment 3
-auto_increment_offset 1
-wsrep_auto_increment_control OFF
-SET GLOBAL wsrep_auto_increment_control='ON';
-drop table t1;
-connection node_2;
-SET GLOBAL wsrep_forced_binlog_format='ROW';
-connection node_1;
-SET GLOBAL wsrep_forced_binlog_format='ROW';
-CREATE TABLE t1 (
-i int(11) NOT NULL AUTO_INCREMENT,
-c char(32) DEFAULT 'dummy_text',
-PRIMARY KEY (i)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-insert into t1(i) values(null);
-select * from t1;
-i c
-1 dummy_text
-insert into t1(i) values(null), (null), (null);
-select * from t1;
-i c
-1 dummy_text
-3 dummy_text
-5 dummy_text
-7 dummy_text
-connection node_2;
-select * from t1;
-i c
-1 dummy_text
-3 dummy_text
-5 dummy_text
-7 dummy_text
-SET GLOBAL wsrep_forced_binlog_format='none';
-connection node_1;
-SET GLOBAL wsrep_forced_binlog_format='none';
-drop table t1;
-SET SESSION binlog_format='ROW';
-show variables like 'binlog_format';
-Variable_name Value
-binlog_format ROW
-SET GLOBAL wsrep_auto_increment_control='OFF';
-SET SESSION auto_increment_increment = 3;
-SET SESSION auto_increment_offset = 1;
-CREATE TABLE t1 (
-i int(11) NOT NULL AUTO_INCREMENT,
-c char(32) DEFAULT 'dummy_text',
-PRIMARY KEY (i)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-insert into t1(i) values(null);
-select * from t1;
-i c
-1 dummy_text
-insert into t1(i) values(null), (null), (null);
-select * from t1;
-i c
-1 dummy_text
-4 dummy_text
-7 dummy_text
-10 dummy_text
-connection node_2;
-select * from t1;
-i c
-1 dummy_text
-4 dummy_text
-7 dummy_text
-10 dummy_text
-connection node_1;
-SET GLOBAL wsrep_auto_increment_control='ON';
-show variables like 'binlog_format';
-Variable_name Value
-binlog_format ROW
-show variables like '%auto_increment%';
-Variable_name Value
-auto_increment_increment 2
-auto_increment_offset 1
-wsrep_auto_increment_control ON
-SET GLOBAL wsrep_auto_increment_control='OFF';
-show variables like '%auto_increment%';
-Variable_name Value
-auto_increment_increment 3
-auto_increment_offset 1
-wsrep_auto_increment_control OFF
-SET GLOBAL wsrep_auto_increment_control='ON';
-drop table t1;
diff --git a/mysql-test/suite/galera/r/galera_sst_rsync_data_dir.result b/mysql-test/suite/galera/r/galera_sst_rsync_data_dir.result
new file mode 100644
index 00000000000..d5c6a11f61f
--- /dev/null
+++ b/mysql-test/suite/galera/r/galera_sst_rsync_data_dir.result
@@ -0,0 +1,396 @@
+connection node_1;
+connection node_2;
+Performing State Transfer on a server that has been shut down cleanly and restarted
+connection node_1;
+CREATE TABLE t1 (f1 CHAR(255)) ENGINE=InnoDB;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+COMMIT;
+connection node_2;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+COMMIT;
+Shutting down server ...
+connection node_1;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+COMMIT;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+connect node_1a_galera_st_shutdown_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+connection node_2;
+Starting server ...
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+COMMIT;
+connection node_1;
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+COMMIT;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+COMMIT;
+connection node_1a_galera_st_shutdown_slave;
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+ROLLBACK;
+SELECT COUNT(*) = 35 FROM t1;
+COUNT(*) = 35
+1
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
+COUNT(*) = 0
+1
+COMMIT;
+SET AUTOCOMMIT=ON;
+connection node_1;
+SELECT COUNT(*) = 35 FROM t1;
+COUNT(*) = 35
+1
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
+COUNT(*) = 0
+1
+DROP TABLE t1;
+COMMIT;
+SET AUTOCOMMIT=ON;
+Performing State Transfer on a server that starts from a clean var directory
+This is accomplished by shutting down node #2 and removing its var directory before restarting it
+connection node_1;
+CREATE TABLE t1 (f1 CHAR(255)) ENGINE=InnoDB;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+COMMIT;
+connection node_2;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+COMMIT;
+Shutting down server ...
+connection node_1;
+Cleaning var directory ...
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+COMMIT;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+connect node_1a_galera_st_clean_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+connection node_2;
+Starting server ...
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+COMMIT;
+connection node_1;
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+COMMIT;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+COMMIT;
+connection node_1a_galera_st_clean_slave;
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+ROLLBACK;
+SELECT COUNT(*) = 35 FROM t1;
+COUNT(*) = 35
+1
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
+COUNT(*) = 0
+1
+COMMIT;
+SET AUTOCOMMIT=ON;
+connection node_1;
+SELECT COUNT(*) = 35 FROM t1;
+COUNT(*) = 35
+1
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
+COUNT(*) = 0
+1
+DROP TABLE t1;
+COMMIT;
+SET AUTOCOMMIT=ON;
+Performing State Transfer on a server that has been killed and restarted
+connection node_1;
+CREATE TABLE t1 (f1 CHAR(255)) ENGINE=InnoDB;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+COMMIT;
+connection node_2;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+COMMIT;
+Killing server ...
+connection node_1;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+INSERT INTO t1 VALUES ('node1_committed_during');
+COMMIT;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+connect node_1a_galera_st_kill_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+connection node_2;
+Performing --wsrep-recover ...
+Starting server ...
+Using --wsrep-start-position when starting mysqld ...
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+INSERT INTO t1 VALUES ('node2_committed_after');
+COMMIT;
+connection node_1;
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 VALUES ('node1_to_be_committed_after');
+COMMIT;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+INSERT INTO t1 VALUES ('node1_committed_after');
+COMMIT;
+connection node_1a_galera_st_kill_slave;
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after');
+ROLLBACK;
+SELECT COUNT(*) = 35 FROM t1;
+COUNT(*) = 35
+1
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
+COUNT(*) = 0
+1
+COMMIT;
+SET AUTOCOMMIT=ON;
+connection node_1;
+SELECT COUNT(*) = 35 FROM t1;
+COUNT(*) = 35
+1
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
+COUNT(*) = 0
+1
+DROP TABLE t1;
+COMMIT;
+SET AUTOCOMMIT=ON;
+Performing State Transfer on a server that has been killed and restarted
+while a DDL was in progress on it
+connection node_1;
+CREATE TABLE t1 (f1 CHAR(255)) ENGINE=InnoDB;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before');
+connection node_2;
+START TRANSACTION;
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before');
+COMMIT;
+SET GLOBAL debug_dbug = 'd,sync.alter_opened_table';
+connection node_1;
+ALTER TABLE t1 ADD COLUMN f2 INTEGER;
+connection node_2;
+SET wsrep_sync_wait = 0;
+Killing server ...
+connection node_1;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 (f1) VALUES ('node1_committed_during');
+INSERT INTO t1 (f1) VALUES ('node1_committed_during');
+INSERT INTO t1 (f1) VALUES ('node1_committed_during');
+INSERT INTO t1 (f1) VALUES ('node1_committed_during');
+INSERT INTO t1 (f1) VALUES ('node1_committed_during');
+COMMIT;
+START TRANSACTION;
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+connect node_1a_galera_st_kill_slave_ddl, 127.0.0.1, root, , test, $NODE_MYPORT_1;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+connection node_2;
+Performing --wsrep-recover ...
+connection node_2;
+Starting server ...
+Using --wsrep-start-position when starting mysqld ...
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 (f1) VALUES ('node2_committed_after');
+INSERT INTO t1 (f1) VALUES ('node2_committed_after');
+INSERT INTO t1 (f1) VALUES ('node2_committed_after');
+INSERT INTO t1 (f1) VALUES ('node2_committed_after');
+INSERT INTO t1 (f1) VALUES ('node2_committed_after');
+COMMIT;
+connection node_1;
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+COMMIT;
+SET AUTOCOMMIT=OFF;
+START TRANSACTION;
+INSERT INTO t1 (f1) VALUES ('node1_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_committed_after');
+COMMIT;
+connection node_1a_galera_st_kill_slave_ddl;
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+ROLLBACK;
+SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1';
+COUNT(*) = 2
+1
+SELECT COUNT(*) = 35 FROM t1;
+COUNT(*) = 35
+1
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
+COUNT(*) = 0
+1
+COMMIT;
+SET AUTOCOMMIT=ON;
+connection node_1;
+SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1';
+COUNT(*) = 2
+1
+SELECT COUNT(*) = 35 FROM t1;
+COUNT(*) = 35
+1
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
+COUNT(*) = 0
+1
+DROP TABLE t1;
+COMMIT;
+SET AUTOCOMMIT=ON;
+SET GLOBAL debug_dbug = $debug_orig;
diff --git a/mysql-test/suite/galera/t/galera_binlog_stmt_autoinc.test b/mysql-test/suite/galera/t/galera_binlog_stmt_autoinc.test
deleted file mode 100644
index aab4fea9f2e..00000000000
--- a/mysql-test/suite/galera/t/galera_binlog_stmt_autoinc.test
+++ /dev/null
@@ -1,223 +0,0 @@
-##
-## Tests the auto-increment with binlog in STATEMENT mode.
-##
-
---source include/galera_cluster.inc
---source include/have_innodb.inc
-
---let $node_1=node_1
---let $node_2=node_2
---source include/auto_increment_offset_save.inc
-
-##
-## Verify the correct operation of the auto-increment when the binlog
-## format artificially set to the 'STATEMENT' (although this mode is
-## not recommended in the current version):
-##
-
---connection node_2
-SET GLOBAL wsrep_forced_binlog_format='STATEMENT';
-
---connection node_1
-SET GLOBAL wsrep_forced_binlog_format='STATEMENT';
-
-CREATE TABLE t1 (
- i int(11) NOT NULL AUTO_INCREMENT,
- c char(32) DEFAULT 'dummy_text',
- PRIMARY KEY (i)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-insert into t1(i) values(null);
-
-select * from t1;
-
-insert into t1(i) values(null), (null), (null);
-
-select * from t1;
-
---connection node_2
-
-select * from t1;
-
-SET GLOBAL wsrep_forced_binlog_format='none';
-
---connection node_1
-
-SET GLOBAL wsrep_forced_binlog_format='none';
-
-drop table t1;
-
-##
-## Check the operation when the automatic control over the auto-increment
-## settings is switched off, that is, when we use the increment step and
-## the offset specified by the user. In the current session, the binlog
-## format is set to 'STATEMENT'. It is important that the values of the
-## auto-increment options does not changed on other node - it allows us
-## to check the correct transmission of the auto-increment options to
-## other nodes:
-##
-
---disable_warnings
-SET SESSION binlog_format='STATEMENT';
---enable_warnings
-
-show variables like 'binlog_format';
-
-SET GLOBAL wsrep_auto_increment_control='OFF';
-
-SET SESSION auto_increment_increment = 3;
-SET SESSION auto_increment_offset = 1;
-
-CREATE TABLE t1 (
- i int(11) NOT NULL AUTO_INCREMENT,
- c char(32) DEFAULT 'dummy_text',
- PRIMARY KEY (i)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-insert into t1(i) values(null);
-
-select * from t1;
-
-insert into t1(i) values(null), (null), (null);
-
-select * from t1;
-
---connection node_2
-
-select * from t1;
-
---connection node_1
-
-##
-## Verify the return to automatic calculation of the step
-## and offset of the auto-increment:
-##
-
-SET GLOBAL wsrep_auto_increment_control='ON';
-
-SET SESSION binlog_format='ROW';
-
-show variables like 'binlog_format';
-show variables like '%auto_increment%';
-
-##
-## Verify the recovery of original user-defined values after
-## stopping the automatic control over auto-increment:
-##
-
-SET GLOBAL wsrep_auto_increment_control='OFF';
-
-show variables like '%auto_increment%';
-
-##
-## Restore original options and drop test table:
-##
-
-SET GLOBAL wsrep_auto_increment_control='ON';
-
-drop table t1;
-
-##
-## Verify the correct operation of the auto-increment when the binlog
-## format set to the 'ROW':
-##
-
---connection node_2
-SET GLOBAL wsrep_forced_binlog_format='ROW';
-
---connection node_1
-SET GLOBAL wsrep_forced_binlog_format='ROW';
-
-CREATE TABLE t1 (
- i int(11) NOT NULL AUTO_INCREMENT,
- c char(32) DEFAULT 'dummy_text',
- PRIMARY KEY (i)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-insert into t1(i) values(null);
-
-select * from t1;
-
-insert into t1(i) values(null), (null), (null);
-
-select * from t1;
-
---connection node_2
-
-select * from t1;
-
-SET GLOBAL wsrep_forced_binlog_format='none';
-
---connection node_1
-
-SET GLOBAL wsrep_forced_binlog_format='none';
-
-drop table t1;
-
-##
-## Check the operation when the automatic control over the auto-increment
-## settings is switched off, that is, when we use the increment step and
-## the offset specified by the user. In the current session, the binlog
-## format is set to 'ROW'. It is important that the values of the
-## auto-increment options does not changed on other node - it allows us
-## to check the correct transmission of the auto-increment options to
-## other nodes:
-##
-
-SET SESSION binlog_format='ROW';
-
-show variables like 'binlog_format';
-
-SET GLOBAL wsrep_auto_increment_control='OFF';
-
-SET SESSION auto_increment_increment = 3;
-SET SESSION auto_increment_offset = 1;
-
-CREATE TABLE t1 (
- i int(11) NOT NULL AUTO_INCREMENT,
- c char(32) DEFAULT 'dummy_text',
- PRIMARY KEY (i)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
-insert into t1(i) values(null);
-
-select * from t1;
-
-insert into t1(i) values(null), (null), (null);
-
-select * from t1;
-
---connection node_2
-
-select * from t1;
-
---connection node_1
-
-##
-## Verify the return to automatic calculation of the step
-## and offset of the auto-increment:
-##
-
-SET GLOBAL wsrep_auto_increment_control='ON';
-
-show variables like 'binlog_format';
-show variables like '%auto_increment%';
-
-##
-## Verify the recovery of original user-defined values after
-## stopping the automatic control over auto-increment:
-##
-
-SET GLOBAL wsrep_auto_increment_control='OFF';
-
-show variables like '%auto_increment%';
-
-##
-## Restore original options and drop test table:
-##
-
-SET GLOBAL wsrep_auto_increment_control='ON';
-
-drop table t1;
-
---source include/auto_increment_offset_restore.inc
diff --git a/mysql-test/suite/galera/t/galera_sst_rsync_data_dir.cnf b/mysql-test/suite/galera/t/galera_sst_rsync_data_dir.cnf
new file mode 100644
index 00000000000..afe9796a11a
--- /dev/null
+++ b/mysql-test/suite/galera/t/galera_sst_rsync_data_dir.cnf
@@ -0,0 +1,11 @@
+!include ../galera_2nodes.cnf
+
+[mysqld]
+wsrep_sst_method=rsync
+
+[mysqld.1]
+wsrep_provider_options='base_port=@mysqld.1.#galera_port;gcache.size=1;pc.ignore_sb=true'
+
+[mysqld.2]
+innodb_data_home_dir=@ENV.MYSQL_TMP_DIR/rsync_test_2
+wsrep_provider_options='base_port=@mysqld.2.#galera_port;gcache.size=1;pc.ignore_sb=true'
diff --git a/mysql-test/suite/galera/t/galera_sst_rsync_data_dir.test b/mysql-test/suite/galera/t/galera_sst_rsync_data_dir.test
new file mode 100644
index 00000000000..68aa1068f75
--- /dev/null
+++ b/mysql-test/suite/galera/t/galera_sst_rsync_data_dir.test
@@ -0,0 +1,16 @@
+--source include/big_test.inc
+--source include/galera_cluster.inc
+
+--let $node_1=node_1
+--let $node_2=node_2
+--source include/auto_increment_offset_save.inc
+
+--source suite/galera/include/galera_st_shutdown_slave.inc
+--source suite/galera/include/galera_st_clean_slave.inc
+
+--source suite/galera/include/galera_st_kill_slave.inc
+--source suite/galera/include/galera_st_kill_slave_ddl.inc
+--source include/auto_increment_offset_restore.inc
+
+# cleanup temporary database files:
+--remove_files_wildcard $MYSQL_TMP_DIR/rsync_test_2 *
diff --git a/mysql-test/suite/maria/concurrent.result b/mysql-test/suite/maria/concurrent.result
new file mode 100644
index 00000000000..caea6fd1fb9
--- /dev/null
+++ b/mysql-test/suite/maria/concurrent.result
@@ -0,0 +1,33 @@
+CREATE TABLE t1 (a INT, b CHAR(12), c INT, FULLTEXT KEY(b), KEY (c)) ENGINE=Aria;
+CREATE TABLE t2 (a INT, b CHAR(12), c INT) ENGINE=Aria;
+INSERT INTO t2 VALUES (1,'foo',8), (2,'bar',9);
+connect con1,localhost,root,,test;
+INSERT INTO t1 SELECT * FROM t2;
+connection default;
+select 1;
+1
+1
+select 1;
+1
+1
+select 1;
+1
+1
+select 1;
+1
+1
+select 1;
+1
+1
+select 1;
+1
+1
+select 1;
+1
+1
+SELECT * FROM t1 WHERE a = ( SELECT 1 FROM non_existing_table2 );
+ERROR 42S02: Table 'test.non_existing_table2' doesn't exist
+connection con1;
+disconnect con1;
+connection default;
+DROP TABLE t1, t2;
diff --git a/mysql-test/suite/maria/concurrent.test b/mysql-test/suite/maria/concurrent.test
new file mode 100644
index 00000000000..42adb082d40
--- /dev/null
+++ b/mysql-test/suite/maria/concurrent.test
@@ -0,0 +1,28 @@
+#
+# MDEV-15797 Assertion `thd->killed != 0' failed in ha_maria::enable_indexes
+#
+
+CREATE TABLE t1 (a INT, b CHAR(12), c INT, FULLTEXT KEY(b), KEY (c)) ENGINE=Aria;
+CREATE TABLE t2 (a INT, b CHAR(12), c INT) ENGINE=Aria;
+INSERT INTO t2 VALUES (1,'foo',8), (2,'bar',9);
+
+--connect (con1,localhost,root,,test)
+--send
+ INSERT INTO t1 SELECT * FROM t2;
+--connection default
+select 1;
+select 1;
+select 1;
+select 1;
+select 1;
+select 1;
+select 1;
+--error ER_NO_SUCH_TABLE
+SELECT * FROM t1 WHERE a = ( SELECT 1 FROM non_existing_table2 );
+--connection con1
+--reap
+
+# Cleanup
+--disconnect con1
+--connection default
+DROP TABLE t1, t2;
diff --git a/mysql-test/suite/plugins/r/auth_ed25519.result b/mysql-test/suite/plugins/r/auth_ed25519.result
index ee9320bbc6c..4785bef3ef7 100644
--- a/mysql-test/suite/plugins/r/auth_ed25519.result
+++ b/mysql-test/suite/plugins/r/auth_ed25519.result
@@ -33,7 +33,7 @@ PLUGIN_DESCRIPTION Elliptic curve ED25519 based authentication
PLUGIN_LICENSE GPL
LOAD_OPTION ON
PLUGIN_MATURITY Stable
-PLUGIN_AUTH_VERSION 1.0-alpha
+PLUGIN_AUTH_VERSION 1.0
create user test1@localhost identified via ed25519 using 'ZIgUREUg5PVgQ6LskhXmO+eZLS0nC8be6HPjYWR4YJY';
show grants for test1@localhost;
Grants for test1@localhost