diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2017-12-21 17:40:01 +0200 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2017-12-21 17:40:01 +0200 |
commit | 461cf3e5a3c2d346d75b1407b285f8daf9d01f67 (patch) | |
tree | f4267b1ef1d1ba502687d4d8513075344fa30f12 /mysql-test | |
parent | 9d7c0882fa4aa36cd5f6a435645b14330f213fa2 (diff) | |
download | mariadb-git-461cf3e5a3c2d346d75b1407b285f8daf9d01f67.tar.gz |
Make a test more robustmariadb-10.1.30
Sometimes, the test would fail with a result difference for
the READ UNCOMMITTED read, because the incremental backup
would finish before redo log was written for all the rows
that were inserted in the second batch.
To fix that, cause a redo log write by creating another
transaction. The transaction rollback (which internally does commit)
will be flushed to the redo log, and before that, all the preceding
changes will be flushed to the redo log as well.
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/suite/mariabackup/apply-log-only-incr.result | 4 | ||||
-rw-r--r-- | mysql-test/suite/mariabackup/apply-log-only-incr.test | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/mysql-test/suite/mariabackup/apply-log-only-incr.result b/mysql-test/suite/mariabackup/apply-log-only-incr.result index 2baed8c1db9..f724d1d1fdc 100644 --- a/mysql-test/suite/mariabackup/apply-log-only-incr.result +++ b/mysql-test/suite/mariabackup/apply-log-only-incr.result @@ -3,6 +3,10 @@ CREATE TABLE t(a INT UNSIGNED PRIMARY KEY) ENGINE INNODB; INSERT INTO t VALUES(0); COMMIT; start transaction; +BEGIN; +DELETE FROM t LIMIT 1; +SET GLOBAL innodb_flush_log_at_trx_commit = 1; +ROLLBACK; NOT FOUND /Rollback of trx with id/ in current_test # expect NOT FOUND NOT FOUND /Rollback of trx with id/ in current_test diff --git a/mysql-test/suite/mariabackup/apply-log-only-incr.test b/mysql-test/suite/mariabackup/apply-log-only-incr.test index aa5110cc51e..81c91d3c452 100644 --- a/mysql-test/suite/mariabackup/apply-log-only-incr.test +++ b/mysql-test/suite/mariabackup/apply-log-only-incr.test @@ -26,6 +26,13 @@ eval INSERT t VALUES(201-$n); dec $n; } --enable_query_log +connect (flush_log,localhost,root,,); +BEGIN; +DELETE FROM t LIMIT 1; +SET GLOBAL innodb_flush_log_at_trx_commit = 1; +ROLLBACK; +disconnect flush_log; +connection default; --disable_result_log exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --backup --ftwrl-wait-timeout=5 --ftwrl-wait-threshold=300 --ftwrl-wait-query-type=all --target-dir=$incremental_dir --incremental-basedir=$basedir ; |