mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 05:22:25 +01:00
a1bc393630
mysql-test/suite/maria/lock.result: Added test case mysql-test/suite/maria/lock.test: Added test case sql/sql_table.cc: One can't call HA_EXTRA_FORCE_REOPEN on something that may be opened twice. It's safe to remove the call in this case as we will call HA_EXTRA_PREPARE_FOR_DROP for the table anyway. (One nice side effect is that drop is a bit faster as we are not flushing the cache to disk before the drop anymore)
52 lines
1 KiB
Text
52 lines
1 KiB
Text
#
|
|
# Testing of potential problems in Aria with locking
|
|
#
|
|
|
|
-- source include/have_maria.inc
|
|
|
|
drop table if exists t1,t2;
|
|
|
|
#
|
|
# Test for Bug#973039
|
|
# Assertion `share->in_trans == 0' failed in maria_close on DROP TABLE
|
|
# under LOCK
|
|
#
|
|
|
|
# Test DROP TABLE
|
|
|
|
CREATE TABLE t1 (i INT) ENGINE=Aria;
|
|
CREATE TABLE t2 (i INT) ENGINE=Aria;
|
|
LOCK TABLE t1 WRITE, t2 WRITE;
|
|
# Also fails with FLUSH TABLE t1 and with REPAIR TABLE t1 USE_FRM
|
|
DROP TABLE t1;
|
|
UNLOCK TABLES;
|
|
DROP TABLE t2;
|
|
|
|
#Test FLUSH TABLE
|
|
|
|
CREATE TABLE t1 (i INT) ENGINE=Aria;
|
|
CREATE TABLE t2 (i INT) ENGINE=Aria;
|
|
LOCK TABLE t1 WRITE, t2 WRITE;
|
|
FLUSH TABLE t1;
|
|
select * from t1;
|
|
unlock tables;
|
|
drop table t1,t2;
|
|
|
|
# Test REPAIR ... USE_FRM and unlock tables last
|
|
|
|
CREATE TABLE t1 (i INT) ENGINE=Aria;
|
|
CREATE TABLE t2 (i INT) ENGINE=Aria;
|
|
LOCK TABLE t1 WRITE, t2 WRITE;
|
|
repair table t1 use_frm;
|
|
select * from t1;
|
|
drop table t2;
|
|
unlock tables;
|
|
drop table t1;
|
|
|
|
#
|
|
# MDEV-366: lock table twice with LOCK TABLES and then drop it
|
|
#
|
|
|
|
CREATE TABLE t1 (i INT) ENGINE=Aria;
|
|
LOCK TABLES t1 WRITE, t1 AS t1a WRITE;
|
|
DROP TABLE t1;
|