mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 20:12:31 +01:00
e4e85cd2ef
Fixed wrong mutex order bug in Aria when flush_log_for_bitmap() was called when table is not yet marked for change. include/my_base.h: Added flag that table is opened only for status mysql-test/r/myisam-big.result: Test case for lp:925377 mysql-test/t/myisam-big.test: Test case for lp:925377 sql/sql_base.cc: If thd->version == 0 (happens only when we are opening a table that is flushed under MYSQL_LOCK_IGNORE_FLUSH), open the table in HA_OPEN_FOR_STATUS mode storage/maria/ma_bitmap.c: Fixed wrong mutex order bug in Aria when flush_log_for_bitmap() was called when table is not yet marked for change. storage/maria/ma_dbug.c: Ignore last_version <= 1 as these are either flushed or only opened for status storage/maria/ma_open.c: Use last_version=1 as a marker that table was opened with HA_OPEN_FOR_STATUS. In this case we just open a new version of the table in read only mode. storage/myisam/mi_create.c: Update prototype storage/myisam/mi_dbug.c: Ignore last_version <= 1 as these are either flushed or only opened for status storage/myisam/mi_open.c: Use last_version=1 as a marker that table was opened with HA_OPEN_FOR_STATUS. If HA_OPEN_FOR_STATUS is used, we will not assert if there is an old not-to-be-used version of the table existing. In this case we just open a new version of the table in read only mode. storage/myisam/myisamdef.h: Updated prototype
40 lines
1.3 KiB
Text
40 lines
1.3 KiB
Text
drop table if exists t1,t2;
|
|
create table t1 (id int, sometext varchar(100)) engine=myisam;
|
|
insert into t1 values (1, "hello"),(2, "hello2"),(4, "hello3"),(4, "hello4");
|
|
create table t2 like t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
insert into t2 select * from t1;
|
|
insert into t1 select * from t1;
|
|
select count(*) from t1;
|
|
count(*)
|
|
131072
|
|
alter table t1 add index (id), add index(sometext), add index(sometext,id);
|
|
alter table t1 disable keys;
|
|
alter table t1 enable keys;
|
|
drop table t1,t2;
|