1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Bug#52117 "Pending FLUSH TALBES <list> aborts transactions unnecessarily"

The bug was fixed by the patch for Bug 52044.
Add a test case.
This commit is contained in:
Konstantin Osipov
2010-08-13 18:14:36 +04:00
parent 4e935a5329
commit 2086e1664f
2 changed files with 185 additions and 0 deletions

View File

@ -304,3 +304,72 @@ a
1
handler t1 close;
drop table t1;
#
# Bug#52117 Pending FLUSH TALBES <list> aborts
# transactions unnecessarily.
#
drop table if exists t1;
# --> conection default
create table t1 (a int);
begin;
select * from t1;
a
# --> connection con1
#
# Issue a LOCK TABLE t1 READ. We could use HANDLER t1 OPEN
# or a long-running select -- anything that
# prevents FLUSH TABLE t1 from immediate completion would do.
#
lock table t1 read;
# --> connection con2
#
# FLUSH TABLE expels the table definition from the cache.
# Sending 'flush table t1'...
flush table t1;
# --> connection default
# Let flush table sync in.
select * from t1;
# --> connection con1
select * from t1;
a
unlock tables;
# --> connection con2
# Reaping 'flush table t1'...
# --> connection default
# Reaping 'select * from t1'...
a
commit;
#
# Repeat the same test but with FLUSH TABLES
#
begin;
select * from t1;
a
# --> connection con1
#
# Issue a LOCK TABLE t1 READ.
#
lock table t1 read;
# --> connection con2
#
# FLUSH TABLES expels the table definition from the cache.
# Sending 'flush tables'...
flush tables;
# --> connection default
# Let flush table sync in.
select * from t1;
# --> connection con1
select * from t1;
a
unlock tables;
# --> connection con2
# Reaping 'flush tables'...
# --> connection default
# Reaping 'select * from t1'...
a
commit;
# Cleanup
# --> connection con1
# --> connection con2
# --> connection default
drop table t1;