From 4438ff07cda1766d08730c93f92b298e845e3df9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Tue, 20 Aug 2019 16:03:43 +0300 Subject: [PATCH] MDEV-20389: Refine the test case Let us invoke wait_all_purged.inc right before the workload. Starting with MDEV-12288 in MariaDB Server 10.3, also INSERT generates purge workload. If we do not ensure that purge has run to completion, the results on 10.3 and later could be nondeterministic. --- mysql-test/suite/innodb/r/innodb_bug84958.result | 2 +- mysql-test/suite/innodb/t/innodb_bug84958.test | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/mysql-test/suite/innodb/r/innodb_bug84958.result b/mysql-test/suite/innodb/r/innodb_bug84958.result index e0c2f913407..4076999415f 100644 --- a/mysql-test/suite/innodb/r/innodb_bug84958.result +++ b/mysql-test/suite/innodb/r/innodb_bug84958.result @@ -6,7 +6,6 @@ # SET @saved_frequency= @@GLOBAL.innodb_purge_rseg_truncate_frequency; SET GLOBAL innodb_purge_rseg_truncate_frequency= 1; -InnoDB 0 transactions not purged CREATE PROCEDURE insert_n(start int, end int) BEGIN DECLARE i INT DEFAULT start; @@ -52,6 +51,7 @@ connection default; # Connect to default and record how many pages were accessed # when selecting the record using the secondary key. # +InnoDB 3 transactions not purged SET @num_pages_1 = num_pages_get(); SELECT * FROM t1 force index (b); a b c diff --git a/mysql-test/suite/innodb/t/innodb_bug84958.test b/mysql-test/suite/innodb/t/innodb_bug84958.test index 417aa814411..98904680fce 100644 --- a/mysql-test/suite/innodb/t/innodb_bug84958.test +++ b/mysql-test/suite/innodb/t/innodb_bug84958.test @@ -8,7 +8,6 @@ --source include/have_innodb.inc SET @saved_frequency= @@GLOBAL.innodb_purge_rseg_truncate_frequency; SET GLOBAL innodb_purge_rseg_truncate_frequency= 1; ---source include/wait_all_purged.inc DELIMITER ~~; CREATE PROCEDURE insert_n(start int, end int) @@ -65,6 +64,8 @@ connection default; --echo # Connect to default and record how many pages were accessed --echo # when selecting the record using the secondary key. --echo # +--let $wait_all_purged=3 +--source include/wait_all_purged.inc SET @num_pages_1 = num_pages_get(); SELECT * FROM t1 force index (b); SET @num_pages_2= num_pages_get();