diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2021-04-08 08:15:11 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2021-04-08 08:15:11 +0300 |
commit | b4f09aa268481d14b5d739f20bb66641d8f1d838 (patch) | |
tree | c5a83c5b0a2e0b1b96c002cc3c5e343ab49fbfa6 /mysql-test/main | |
parent | 2a7810759d4127f30f6705892eb73277325984a9 (diff) | |
parent | 4e2ca42225311f73745c9eec309bc941183aba30 (diff) | |
download | mariadb-git-b4f09aa268481d14b5d739f20bb66641d8f1d838.tar.gz |
Merge 10.4 into 10.5bb-10.5-merge
Diffstat (limited to 'mysql-test/main')
-rw-r--r-- | mysql-test/main/backup_lock_binlog.result | 40 | ||||
-rw-r--r-- | mysql-test/main/backup_lock_binlog.test | 49 |
2 files changed, 89 insertions, 0 deletions
diff --git a/mysql-test/main/backup_lock_binlog.result b/mysql-test/main/backup_lock_binlog.result new file mode 100644 index 00000000000..adf960a9cb1 --- /dev/null +++ b/mysql-test/main/backup_lock_binlog.result @@ -0,0 +1,40 @@ +# +# MDEV-25334 FTWRL/Backup blocks DDL on temporary tables with binlog +# enabled assertion fails in Diagnostics_area::set_error_status +# +select @@binlog_format; +@@binlog_format +MIXED +connect con1,localhost,root,,; +connection default; +# +# Test 1 +# +CREATE TEMPORARY TABLE tmp (a INT); +connection con1; +FLUSH TABLES WITH READ LOCK; +connection default; +SET lock_wait_timeout= 1; +ALTER TABLE tmp; +ERROR HY000: Lock wait timeout exceeded; try restarting transaction +connection con1; +unlock tables; +connection default; +drop table tmp; +# +# Test 2 (In statement format to ensure temporary table gets logged) +# +set @@binlog_format=statement; +CREATE TEMPORARY TABLE tmp (a INT); +connection con1; +BACKUP STAGE START; +BACKUP STAGE BLOCK_COMMIT; +connection default; +SET lock_wait_timeout= 1; +ALTER TABLE tmp; +ERROR HY000: Lock wait timeout exceeded; try restarting transaction +connection con1; +BACKUP STAGE end; +connection default; +drop table tmp; +disconnect con1; diff --git a/mysql-test/main/backup_lock_binlog.test b/mysql-test/main/backup_lock_binlog.test new file mode 100644 index 00000000000..45b3f1cfbd9 --- /dev/null +++ b/mysql-test/main/backup_lock_binlog.test @@ -0,0 +1,49 @@ +--source include/have_binlog_format_mixed_or_statement.inc + +# +# Tests involving locks and binlog +# + +--echo # +--echo # MDEV-25334 FTWRL/Backup blocks DDL on temporary tables with binlog +--echo # enabled assertion fails in Diagnostics_area::set_error_status +--echo # + +select @@binlog_format; +--connect (con1,localhost,root,,) +connection default; + +--echo # +--echo # Test 1 +--echo # + +CREATE TEMPORARY TABLE tmp (a INT); +--connection con1 +FLUSH TABLES WITH READ LOCK; +--connection default +SET lock_wait_timeout= 1; +--error ER_LOCK_WAIT_TIMEOUT +ALTER TABLE tmp; +--connection con1 +unlock tables; +--connection default +drop table tmp; + +--echo # +--echo # Test 2 (In statement format to ensure temporary table gets logged) +--echo # + +set @@binlog_format=statement; +CREATE TEMPORARY TABLE tmp (a INT); +--connection con1 +BACKUP STAGE START; +BACKUP STAGE BLOCK_COMMIT; +--connection default +SET lock_wait_timeout= 1; +--error ER_LOCK_WAIT_TIMEOUT +ALTER TABLE tmp; +--connection con1 +BACKUP STAGE end; +--connection default +drop table tmp; +--disconnect con1 |