mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
Merge InnoDB 5.7 from mysql-5.7.9.
Contains also MDEV-10547: Test multi_update_innodb fails with InnoDB 5.7 The failure happened because 5.7 has changed the signature of the bool handler::primary_key_is_clustered() const virtual function ("const" was added). InnoDB was using the old signature which caused the function not to be used. MDEV-10550: Parallel replication lock waits/deadlock handling does not work with InnoDB 5.7 Fixed mutexing problem on lock_trx_handle_wait. Note that rpl_parallel and rpl_optimistic_parallel tests still fail. MDEV-10156 : Group commit tests fail on 10.2 InnoDB (branch bb-10.2-jan) Reason: incorrect merge MDEV-10550: Parallel replication can't sync with master in InnoDB 5.7 (branch bb-10.2-jan) Reason: incorrect merge
This commit is contained in:
113
mysql-test/suite/innodb_zip/include/innodb_wl6501_scale.inc
Normal file
113
mysql-test/suite/innodb_zip/include/innodb_wl6501_scale.inc
Normal file
@ -0,0 +1,113 @@
|
||||
#
|
||||
# load tables with some significant amount of data and then truncate it.
|
||||
#
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
#
|
||||
# create test-bed
|
||||
#
|
||||
let $per_table = `select @@innodb_file_per_table`;
|
||||
let $format = `select @@innodb_file_format`;
|
||||
|
||||
let $WL6501_TMP_DIR = `select @@tmpdir`;
|
||||
let $WL6501_DATA_DIR = `select @@datadir`;
|
||||
set innodb_strict_mode=OFF;
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
#
|
||||
# create procedure to load data
|
||||
#
|
||||
delimiter |;
|
||||
create procedure populate()
|
||||
begin
|
||||
declare i int default 1;
|
||||
while (i <= 5000) do
|
||||
insert into t1 values (i, 'a', 'b');
|
||||
insert into t2 values (i, 'a', 'b');
|
||||
insert into t3 values (i, 'a', 'b');
|
||||
set i = i + 1;
|
||||
end while;
|
||||
end|
|
||||
create procedure populate_small()
|
||||
begin
|
||||
declare i int default 10001;
|
||||
while (i <= 12000) do
|
||||
insert into t1 values (i, 'c', 'd');
|
||||
insert into t2 values (i, 'a', 'b');
|
||||
insert into t3 values (i, 'a', 'b');
|
||||
set i = i + 1;
|
||||
end while;
|
||||
end|
|
||||
delimiter ;|
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
#
|
||||
# create and load the tables.
|
||||
#
|
||||
eval set global innodb_file_per_table = $wl6501_file_per_table;
|
||||
eval set global innodb_file_format = $wl6501_file_format;
|
||||
--replace_regex /[0-9]+/NUMBER/
|
||||
eval create table t1
|
||||
(i int, c1 char(100), c2 char(100),
|
||||
index c1_idx(c1))
|
||||
engine=innodb row_format=$wl6501_row_fmt
|
||||
key_block_size=$wl6501_kbs;
|
||||
eval create table t2
|
||||
(i int, c1 char(100), c2 char(100),
|
||||
index c1_idx(c1))
|
||||
engine=innodb row_format=$wl6501_row_fmt
|
||||
key_block_size=$wl6501_kbs;
|
||||
eval create temporary table t3
|
||||
(i int, c1 char(100), c2 char(100),
|
||||
index c1_idx(c1))
|
||||
engine=innodb row_format=$wl6501_row_fmt
|
||||
key_block_size=$wl6501_kbs;
|
||||
#
|
||||
select count(*) from t1;
|
||||
select count(*) from t2;
|
||||
select count(*) from t3;
|
||||
begin;
|
||||
call populate();
|
||||
commit;
|
||||
select count(*) from t1;
|
||||
select count(*) from t2;
|
||||
select count(*) from t3;
|
||||
#
|
||||
truncate table t1;
|
||||
select count(*) from t1;
|
||||
select count(*) from t2;
|
||||
select count(*) from t3;
|
||||
#
|
||||
call populate_small();
|
||||
select count(*) from t1;
|
||||
select count(*) from t2;
|
||||
select count(*) from t3;
|
||||
#
|
||||
truncate table t2;
|
||||
truncate table t3;
|
||||
select count(*) from t1;
|
||||
select count(*) from t2;
|
||||
select count(*) from t3;
|
||||
#
|
||||
call populate_small();
|
||||
select count(*) from t1;
|
||||
select count(*) from t2;
|
||||
select count(*) from t3;
|
||||
#
|
||||
drop table t1;
|
||||
drop table t2;
|
||||
drop table t3;
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
#
|
||||
# drop the procedure
|
||||
#
|
||||
drop procedure populate;
|
||||
drop procedure populate_small;
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
#
|
||||
# remove test-bed
|
||||
#
|
||||
eval set global innodb_file_format = $format;
|
||||
eval set global innodb_file_per_table = $per_table;
|
Reference in New Issue
Block a user