diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2017-03-24 18:19:15 +0200 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2017-03-24 18:19:15 +0200 |
commit | c51fc679f50cf202d11f159ae661e9f8026fab6d (patch) | |
tree | 60d6a511ac90a95c2ce693231d3bc0a357a71d7f /mysql-test/suite | |
parent | 0d622bed4f1a1484af747840c39325c67d7767d4 (diff) | |
parent | a821ef76057f17a9532f525d2858bb1d31c0a56d (diff) | |
download | mariadb-git-c51fc679f50cf202d11f159ae661e9f8026fab6d.tar.gz |
Merge 5.5 into 10.0
Diffstat (limited to 'mysql-test/suite')
-rw-r--r-- | mysql-test/suite/innodb/r/innodb_bug14676111.result | 29 | ||||
-rw-r--r-- | mysql-test/suite/innodb/t/innodb_bug14676111.test | 65 |
2 files changed, 43 insertions, 51 deletions
diff --git a/mysql-test/suite/innodb/r/innodb_bug14676111.result b/mysql-test/suite/innodb/r/innodb_bug14676111.result index 1135259cfbf..fd73ca298fe 100644 --- a/mysql-test/suite/innodb/r/innodb_bug14676111.result +++ b/mysql-test/suite/innodb/r/innodb_bug14676111.result @@ -1,9 +1,13 @@ +set @old_innodb_limit_optimistic_insert_debug = @@innodb_limit_optimistic_insert_debug; CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB STATS_PERSISTENT=0; set global innodb_limit_optimistic_insert_debug = 2; insert into t1 values (1); +begin; insert into t1 values (5); +begin; insert into t1 values (4); insert into t1 values (3); +begin; insert into t1 values (2); analyze table t1; Table Op Msg_type Msg_text @@ -11,48 +15,40 @@ test.t1 analyze status OK select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME = 'test/t1'; CLUST_INDEX_SIZE 10 -delete from t1 where a=4; -set global innodb_purge_stop_now=ON; -set global innodb_purge_run_now=ON; +rollback; analyze table t1; Table Op Msg_type Msg_text test.t1 analyze status OK select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME = 'test/t1'; CLUST_INDEX_SIZE 8 -delete from t1 where a=5; -set global innodb_purge_stop_now=ON; -set global innodb_purge_run_now=ON; +rollback; analyze table t1; Table Op Msg_type Msg_text test.t1 analyze status OK select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME = 'test/t1'; CLUST_INDEX_SIZE 5 -set global innodb_limit_optimistic_insert_debug = 0; -delete from t1 where a=2; -set global innodb_purge_stop_now=ON; -set global innodb_purge_run_now=ON; +set global innodb_limit_optimistic_insert_debug = 10000; +rollback; analyze table t1; Table Op Msg_type Msg_text test.t1 analyze status OK select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME = 'test/t1'; CLUST_INDEX_SIZE 3 +begin; insert into t1 values (2); -delete from t1 where a=2; -set global innodb_purge_stop_now=ON; -set global innodb_purge_run_now=ON; +rollback; analyze table t1; Table Op Msg_type Msg_text test.t1 analyze status OK select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME = 'test/t1'; CLUST_INDEX_SIZE 2 +begin; insert into t1 values (2); -delete from t1 where a=2; -set global innodb_purge_stop_now=ON; -set global innodb_purge_run_now=ON; +rollback; analyze table t1; Table Op Msg_type Msg_text test.t1 analyze status OK @@ -60,3 +56,4 @@ select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME CLUST_INDEX_SIZE 1 drop table t1; +set global innodb_limit_optimistic_insert_debug = @old_innodb_limit_optimistic_insert_debug; diff --git a/mysql-test/suite/innodb/t/innodb_bug14676111.test b/mysql-test/suite/innodb/t/innodb_bug14676111.test index 02ef5e5e7f0..3abc574a8d2 100644 --- a/mysql-test/suite/innodb/t/innodb_bug14676111.test +++ b/mysql-test/suite/innodb/t/innodb_bug14676111.test @@ -2,18 +2,9 @@ -- source include/have_innodb.inc -- source include/have_debug.inc +-- source include/count_sessions.inc -if (`select count(*)=0 from information_schema.global_variables where variable_name = 'INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG'`) -{ - --skip Test requires InnoDB built with UNIV_DEBUG definition. -} - ---disable_query_log set @old_innodb_limit_optimistic_insert_debug = @@innodb_limit_optimistic_insert_debug; -set @old_innodb_undo_logs = @@innodb_undo_logs; -# Limit undo segments for stable progress of purge. -set global innodb_undo_logs = 1; ---enable_query_log CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB STATS_PERSISTENT=0; @@ -22,22 +13,29 @@ CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB STATS_PERSISTENT=0; # set global innodb_limit_optimistic_insert_debug = 2; insert into t1 values (1); +--connect (con5,localhost,root) +begin; insert into t1 values (5); #current tree form # (1, 5) +--connect (con4,localhost,root) +begin; insert into t1 values (4); #records in a page is limited to 2 artificially. root rise occurs #current tree form # (1, 5) #(1, 4) (5) +--connection default insert into t1 values (3); #current tree form # (1, 5) # (1, 4) (5) #(1, 3) (4) (5) +--connect (con2,localhost,root) +begin; insert into t1 values (2); #current tree form # (1, 5) @@ -45,13 +43,15 @@ insert into t1 values (2); # (1, 3) (4) (5) #(1, 2) (3) (4) (5) +--connection default analyze table t1; select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME = 'test/t1'; -delete from t1 where a=4; -set global innodb_purge_stop_now=ON; -set global innodb_purge_run_now=ON; ---source include/wait_innodb_all_purged.inc +--connection con4 +rollback; +--disconnect con4 +--connection default + #deleting 1 record of 2 records don't cause merge artificially. #current tree form # (1, 5) @@ -62,10 +62,11 @@ set global innodb_purge_run_now=ON; analyze table t1; select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME = 'test/t1'; -delete from t1 where a=5; -set global innodb_purge_stop_now=ON; -set global innodb_purge_run_now=ON; ---source include/wait_innodb_all_purged.inc +--connection con5 +rollback; +--disconnect con5 +--connection default + #deleting 1 record of 2 records don't cause merge artificially. #current tree form # (1) @@ -81,11 +82,12 @@ select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME # #disable the artificial limitation of records in a page -set global innodb_limit_optimistic_insert_debug = 0; -delete from t1 where a=2; -set global innodb_purge_stop_now=ON; -set global innodb_purge_run_now=ON; ---source include/wait_innodb_all_purged.inc +set global innodb_limit_optimistic_insert_debug = 10000; +--connection con2 +rollback; +--disconnect con2 +--connection default + #merge page occurs. and lift up occurs. #current tree form # (1) @@ -95,16 +97,14 @@ set global innodb_purge_run_now=ON; analyze table t1; select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME = 'test/t1'; +begin; insert into t1 values (2); #current tree form # (1) # (1) <- lift up this level next, because it is not root # (1, 2, 3) +rollback; -delete from t1 where a=2; -set global innodb_purge_stop_now=ON; -set global innodb_purge_run_now=ON; ---source include/wait_innodb_all_purged.inc #current tree form # (1) # (1, 3) @@ -112,15 +112,12 @@ set global innodb_purge_run_now=ON; analyze table t1; select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME = 'test/t1'; +begin; insert into t1 values (2); #current tree form # (1) # (1, 2, 3) <- lift up this level next, because the father is root - -delete from t1 where a=2; -set global innodb_purge_stop_now=ON; -set global innodb_purge_run_now=ON; ---source include/wait_innodb_all_purged.inc +rollback; #current tree form # (1, 3) @@ -129,7 +126,5 @@ select CLUST_INDEX_SIZE from information_schema.INNODB_SYS_TABLESTATS where NAME drop table t1; ---disable_query_log set global innodb_limit_optimistic_insert_debug = @old_innodb_limit_optimistic_insert_debug; -set global innodb_undo_logs = @old_innodb_undo_logs; ---enable_query_log +-- source include/wait_until_count_sessions.inc |