mariadb/mysql-test/t/federated_bug_25714.test
unknown 57ae28ab95 Bug#35788 A few tests fail due to concurrent inserts
The problem is that since MyISAM's concurrent_insert is on by
default some concurrent SELECT statements might not see changes
made by INSERT statements in other connections, even if the
INSERT statement has returned.

The solution is to disable concurrent_insert so that INSERT
statements returns after the data is actually visible to other
statements.


mysql-test/r/client_xml.result:
  Update test case result.
mysql-test/r/federated.result:
  Update test case result.
mysql-test/r/federated_bug_25714.result:
  Update test case result.
mysql-test/t/client_xml.test:
  Disable concurrent insert and restore old value at the
  end of the test so it doesn't affect other tests.
mysql-test/t/federated.test:
  Disable concurrent insert and restore old value at the
  end of the test so it doesn't affect other tests.
mysql-test/t/federated_bug_25714.test:
  Disable concurrent insert and restore old value at the
  end of the test so it doesn't affect other tests.
2008-04-30 10:28:19 -03:00

56 lines
1.3 KiB
Text

--source include/have_bug25714.inc
source include/federated.inc;
connection default;
# Disable concurrent inserts to avoid test failures when reading
# data from concurrent connections (insert might return before
# the data is actually in the table).
SET @OLD_CONCURRENT_INSERT= @@GLOBAL.CONCURRENT_INSERT;
SET @@GLOBAL.CONCURRENT_INSERT= 0;
connection slave;
--disable_warnings
DROP TABLE IF EXISTS federated.bug_13118_table;
--enable_warnings
CREATE TABLE federated.t1 (
`id` int auto_increment primary key,
`value` int
) ENGINE=MyISAM;
INSERT INTO federated.t1 SET value=1;
INSERT INTO federated.t1 SET value=2;
INSERT INTO federated.t1 SET value=2;
connection master;
--disable_warnings
DROP TABLE IF EXISTS federated.t1;
--enable_warnings
--replace_result $SLAVE_MYPORT SLAVE_PORT
eval CREATE TABLE federated.t1 (
`id` int auto_increment primary key,
`value` int
) ENGINE=FEDERATED
CONNECTION='mysql://root@127.0.0.1:$SLAVE_MYPORT/federated/t1';
SELECT * from federated.t1;
INSERT INTO federated.t1 SET value=4;
SELECT LAST_INSERT_ID();
--exec $MYSQL_BUG25714 $SLAVE_MYPORT
--exec $MYSQL_BUG25714 $MASTER_MYPORT
SELECT * from federated.t1;
DROP TABLE federated.t1;
connection slave;
DROP TABLE federated.t1;
source include/federated_cleanup.inc;
connection default;
SET @@GLOBAL.CONCURRENT_INSERT= @OLD_CONCURRENT_INSERT;