Loading mysql-test/r/flush.result +17 −0 Original line number Diff line number Diff line Loading @@ -55,3 +55,20 @@ flush tables with read lock; insert into t2 values(1); unlock tables; drop table t1, t2; drop table if exists t1, t2; set session low_priority_updates=1; create table t1 (a int); create table t2 (b int); lock tables t1 write; flush tables with read lock; ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction unlock tables; lock tables t1 read, t2 write; flush tables with read lock; ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction unlock tables; lock tables t1 read; flush tables with read lock; unlock tables; drop table t1, t2; set session low_priority_updates=default; mysql-test/t/flush.test +31 −0 Original line number Diff line number Diff line Loading @@ -133,4 +133,35 @@ disconnect con3; connection default; drop table t1, t2; # # Bug#32528 Global read lock with a low priority write lock causes a server crash # --disable_warnings drop table if exists t1, t2; --enable_warnings set session low_priority_updates=1; create table t1 (a int); create table t2 (b int); lock tables t1 write; --error ER_LOCK_OR_ACTIVE_TRANSACTION flush tables with read lock; unlock tables; lock tables t1 read, t2 write; --error ER_LOCK_OR_ACTIVE_TRANSACTION flush tables with read lock; unlock tables; lock tables t1 read; flush tables with read lock; unlock tables; drop table t1, t2; set session low_priority_updates=default; # End of 5.0 tests sql/sql_parse.cc +1 −1 Original line number Diff line number Diff line Loading @@ -7054,7 +7054,7 @@ bool reload_acl_and_cache(THD *thd, ulong options, TABLE_LIST *tables, for (; lock_p < end_p; lock_p++) { if ((*lock_p)->type == TL_WRITE) if ((*lock_p)->type >= TL_WRITE_ALLOW_WRITE) { my_error(ER_LOCK_OR_ACTIVE_TRANSACTION, MYF(0)); return 1; Loading Loading
mysql-test/r/flush.result +17 −0 Original line number Diff line number Diff line Loading @@ -55,3 +55,20 @@ flush tables with read lock; insert into t2 values(1); unlock tables; drop table t1, t2; drop table if exists t1, t2; set session low_priority_updates=1; create table t1 (a int); create table t2 (b int); lock tables t1 write; flush tables with read lock; ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction unlock tables; lock tables t1 read, t2 write; flush tables with read lock; ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction unlock tables; lock tables t1 read; flush tables with read lock; unlock tables; drop table t1, t2; set session low_priority_updates=default;
mysql-test/t/flush.test +31 −0 Original line number Diff line number Diff line Loading @@ -133,4 +133,35 @@ disconnect con3; connection default; drop table t1, t2; # # Bug#32528 Global read lock with a low priority write lock causes a server crash # --disable_warnings drop table if exists t1, t2; --enable_warnings set session low_priority_updates=1; create table t1 (a int); create table t2 (b int); lock tables t1 write; --error ER_LOCK_OR_ACTIVE_TRANSACTION flush tables with read lock; unlock tables; lock tables t1 read, t2 write; --error ER_LOCK_OR_ACTIVE_TRANSACTION flush tables with read lock; unlock tables; lock tables t1 read; flush tables with read lock; unlock tables; drop table t1, t2; set session low_priority_updates=default; # End of 5.0 tests
sql/sql_parse.cc +1 −1 Original line number Diff line number Diff line Loading @@ -7054,7 +7054,7 @@ bool reload_acl_and_cache(THD *thd, ulong options, TABLE_LIST *tables, for (; lock_p < end_p; lock_p++) { if ((*lock_p)->type == TL_WRITE) if ((*lock_p)->type >= TL_WRITE_ALLOW_WRITE) { my_error(ER_LOCK_OR_ACTIVE_TRANSACTION, MYF(0)); return 1; Loading