From e61b99073f07f0ed1ae7f70b1cdf16dddebe554f Mon Sep 17 00:00:00 2001 From: Thirunarayanan Balathandayuthapani Date: Tue, 17 Mar 2020 19:22:20 +0530 Subject: [PATCH] MDEV-14808 innodb_fts.sync fails in buildbot with wrong result AUTO_INCREMENT values are nondeterministic after crash recovery. While MDEV-6076 guarantees that the AUTO_INCREMENT values of committed transactions will not roll back, it is possible that the AUTO_INCREMENT values will be durably incremented for incomplete transactions. So changing the test case to avoid showing the result of AUTO_INCREMENT value. --- mysql-test/suite/innodb_fts/r/sync.result | 14 +++++++------- mysql-test/suite/innodb_fts/t/sync.test | 6 ++++-- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/mysql-test/suite/innodb_fts/r/sync.result b/mysql-test/suite/innodb_fts/r/sync.result index 82959cfea96..4d28866ec82 100644 --- a/mysql-test/suite/innodb_fts/r/sync.result +++ b/mysql-test/suite/innodb_fts/r/sync.result @@ -99,17 +99,17 @@ SET debug_dbug = '+d,fts_instrument_sync_debug,fts_write_node_crash'; INSERT INTO t1(title) VALUES('mysql'); ERROR HY000: Lost connection to MySQL server during query After restart -SELECT * FROM t1 WHERE MATCH(title) AGAINST ('mysql database'); -FTS_DOC_ID title -1 database +SELECT title FROM t1 WHERE MATCH(title) AGAINST ('mysql database'); +title +database SET @old_dbug = @@SESSION.debug_dbug; SET debug_dbug = '+d,fts_instrument_sync_debug'; INSERT INTO t1(title) VALUES('mysql'); SET debug_dbug = @old_dbug; -SELECT * FROM t1 WHERE MATCH(title) AGAINST ('mysql database'); -FTS_DOC_ID title -1 database -2 mysql +SELECT title FROM t1 WHERE MATCH(title) AGAINST ('mysql database'); +title +database +mysql DROP TABLE t1; # Case 4: Test sync commit & rollback in background CREATE TABLE t1( diff --git a/mysql-test/suite/innodb_fts/t/sync.test b/mysql-test/suite/innodb_fts/t/sync.test index 2ad5423d73b..6929dce31b8 100644 --- a/mysql-test/suite/innodb_fts/t/sync.test +++ b/mysql-test/suite/innodb_fts/t/sync.test @@ -123,7 +123,9 @@ INSERT INTO t1(title) VALUES('mysql'); --source include/start_mysqld.inc -- echo After restart -SELECT * FROM t1 WHERE MATCH(title) AGAINST ('mysql database'); +# PAGE_ROOT_AUTO_INC could contain last failed autoinc value. Avoid +# doing show the result of auto increment field +SELECT title FROM t1 WHERE MATCH(title) AGAINST ('mysql database'); SET @old_dbug = @@SESSION.debug_dbug; @@ -133,7 +135,7 @@ INSERT INTO t1(title) VALUES('mysql'); SET debug_dbug = @old_dbug; -SELECT * FROM t1 WHERE MATCH(title) AGAINST ('mysql database'); +SELECT title FROM t1 WHERE MATCH(title) AGAINST ('mysql database'); DROP TABLE t1;