mariadb/mysql-test/suite/innodb_zip/r/wl6470_1.result
Jan Lindström 2e814d4702 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
2016-09-02 13:22:28 +03:00

598 lines
8.2 KiB
Text

create temporary table t1
(keyc int, c1 char(100), c2 char(100),
primary key(keyc), index sec_index(c1)
) engine = innodb;
create temporary table t2
(keyc int, c1 char(100), c2 char(100),
primary key(keyc), index sec_index(c1)
) engine = innodb;
create procedure populate_t1()
begin
declare i int default 1;
while (i <= 200) do
insert into t1 values (i, 'a', 'b');
set i = i + 1;
end while;
end|
create procedure populate_t1_small()
begin
declare i int default 1;
while (i <= 20) do
insert into t1 values (i, 'c', 'd');
set i = i + 1;
end while;
end|
create procedure populate_t1_small2()
begin
declare i int default 30;
while (i <= 50) do
insert into t1 values (i, 'e', 'f');
set i = i + 1;
end while;
end|
begin;
select count(*) from t1;
count(*)
0
call populate_t1();
select count(*) from t1;
count(*)
200
select * from t1 limit 10;
keyc c1 c2
1 a b
2 a b
3 a b
4 a b
5 a b
6 a b
7 a b
8 a b
9 a b
10 a b
rollback;
select count(*) from t1;
count(*)
0
begin;
call populate_t1();
select count(*) from t1;
count(*)
200
commit;
select count(*) from t1;
count(*)
200
truncate table t1;
select count(*) from t1;
count(*)
0
call populate_t1_small();
select count(*) from t1;
count(*)
20
rollback;
select count(*) from t1;
count(*)
20
truncate table t1;
call populate_t1();
select count(*) from t1;
count(*)
200
delete from t1 where keyc <= 60;
select count(*) from t1;
count(*)
140
call populate_t1_small();
select count(*) from t1;
count(*)
160
select * from t1 limit 10;
keyc c1 c2
1 c d
2 c d
3 c d
4 c d
5 c d
6 c d
7 c d
8 c d
9 c d
10 c d
begin;
call populate_t1_small2();
select count(*) from t1;
count(*)
181
select * from t1 where keyc > 30 limit 10;
keyc c1 c2
31 e f
32 e f
33 e f
34 e f
35 e f
36 e f
37 e f
38 e f
39 e f
40 e f
rollback;
select count(*) from t1;
count(*)
160
select * from t1 where keyc > 30 limit 10;
keyc c1 c2
61 a b
62 a b
63 a b
64 a b
65 a b
66 a b
67 a b
68 a b
69 a b
70 a b
update t1 set keyc = keyc + 2000;
select * from t1 limit 10;
keyc c1 c2
2001 c d
2002 c d
2003 c d
2004 c d
2005 c d
2006 c d
2007 c d
2008 c d
2009 c d
2010 c d
rollback;
begin;
update t1 set keyc = keyc + 2000;
select * from t1 limit 10;
keyc c1 c2
4001 c d
4002 c d
4003 c d
4004 c d
4005 c d
4006 c d
4007 c d
4008 c d
4009 c d
4010 c d
rollback;
select * from t1 limit 10;
keyc c1 c2
2001 c d
2002 c d
2003 c d
2004 c d
2005 c d
2006 c d
2007 c d
2008 c d
2009 c d
2010 c d
commit;
select * from t1 limit 10;
keyc c1 c2
2001 c d
2002 c d
2003 c d
2004 c d
2005 c d
2006 c d
2007 c d
2008 c d
2009 c d
2010 c d
insert into t2 select * from t1 where keyc < 2101;
select count(*) from t2;
count(*)
60
drop procedure populate_t1;
drop procedure populate_t1_small;
drop procedure populate_t1_small2;
drop table t1;
drop table t2;
create temporary table t1
(keyc int, c1 char(100), c2 char(100),
primary key(keyc), index sec_index(c1)
) engine = innodb key_block_size = 4;
set innodb_strict_mode=off;
create temporary table t2
(keyc int, c1 char(100), c2 char(100),
primary key(keyc), index sec_index(c1)
) engine = innodb key_block_size = 8;
set innodb_strict_mode=default;
create procedure populate_t1()
begin
declare i int default 1;
while (i <= 200) do
insert into t1 values (i, 'a', 'b');
set i = i + 1;
end while;
end|
create procedure populate_t1_small()
begin
declare i int default 1;
while (i <= 20) do
insert into t1 values (i, 'c', 'd');
set i = i + 1;
end while;
end|
create procedure populate_t1_small2()
begin
declare i int default 30;
while (i <= 50) do
insert into t1 values (i, 'e', 'f');
set i = i + 1;
end while;
end|
begin;
select count(*) from t1;
count(*)
0
call populate_t1();
select count(*) from t1;
count(*)
200
select * from t1 limit 10;
keyc c1 c2
1 a b
2 a b
3 a b
4 a b
5 a b
6 a b
7 a b
8 a b
9 a b
10 a b
rollback;
select count(*) from t1;
count(*)
0
begin;
call populate_t1();
select count(*) from t1;
count(*)
200
commit;
select count(*) from t1;
count(*)
200
truncate table t1;
select count(*) from t1;
count(*)
0
call populate_t1_small();
select count(*) from t1;
count(*)
20
rollback;
select count(*) from t1;
count(*)
20
truncate table t1;
call populate_t1();
select count(*) from t1;
count(*)
200
delete from t1 where keyc <= 60;
select count(*) from t1;
count(*)
140
call populate_t1_small();
select count(*) from t1;
count(*)
160
select * from t1 limit 10;
keyc c1 c2
1 c d
2 c d
3 c d
4 c d
5 c d
6 c d
7 c d
8 c d
9 c d
10 c d
begin;
call populate_t1_small2();
select count(*) from t1;
count(*)
181
select * from t1 where keyc > 30 limit 10;
keyc c1 c2
31 e f
32 e f
33 e f
34 e f
35 e f
36 e f
37 e f
38 e f
39 e f
40 e f
rollback;
select count(*) from t1;
count(*)
160
select * from t1 where keyc > 30 limit 10;
keyc c1 c2
61 a b
62 a b
63 a b
64 a b
65 a b
66 a b
67 a b
68 a b
69 a b
70 a b
update t1 set keyc = keyc + 2000;
select * from t1 limit 10;
keyc c1 c2
2001 c d
2002 c d
2003 c d
2004 c d
2005 c d
2006 c d
2007 c d
2008 c d
2009 c d
2010 c d
rollback;
begin;
update t1 set keyc = keyc + 2000;
select * from t1 limit 10;
keyc c1 c2
4001 c d
4002 c d
4003 c d
4004 c d
4005 c d
4006 c d
4007 c d
4008 c d
4009 c d
4010 c d
rollback;
select * from t1 limit 10;
keyc c1 c2
2001 c d
2002 c d
2003 c d
2004 c d
2005 c d
2006 c d
2007 c d
2008 c d
2009 c d
2010 c d
commit;
select * from t1 limit 10;
keyc c1 c2
2001 c d
2002 c d
2003 c d
2004 c d
2005 c d
2006 c d
2007 c d
2008 c d
2009 c d
2010 c d
insert into t2 select * from t1 where keyc < 2101;
select count(*) from t2;
count(*)
60
drop procedure populate_t1;
drop procedure populate_t1_small;
drop procedure populate_t1_small2;
drop table t1;
drop table t2;
set global innodb_file_per_table = 0;
create temporary table t1
(keyc int, c1 char(100), c2 char(100),
primary key(keyc), index sec_index(c1)
) engine = innodb;
create temporary table t2
(keyc int, c1 char(100), c2 char(100),
primary key(keyc), index sec_index(c1)
) engine = innodb;
create procedure populate_t1()
begin
declare i int default 1;
while (i <= 200) do
insert into t1 values (i, 'a', 'b');
set i = i + 1;
end while;
end|
create procedure populate_t1_small()
begin
declare i int default 1;
while (i <= 20) do
insert into t1 values (i, 'c', 'd');
set i = i + 1;
end while;
end|
create procedure populate_t1_small2()
begin
declare i int default 30;
while (i <= 50) do
insert into t1 values (i, 'e', 'f');
set i = i + 1;
end while;
end|
begin;
select count(*) from t1;
count(*)
0
call populate_t1();
select count(*) from t1;
count(*)
200
select * from t1 limit 10;
keyc c1 c2
1 a b
2 a b
3 a b
4 a b
5 a b
6 a b
7 a b
8 a b
9 a b
10 a b
rollback;
select count(*) from t1;
count(*)
0
begin;
call populate_t1();
select count(*) from t1;
count(*)
200
commit;
select count(*) from t1;
count(*)
200
truncate table t1;
select count(*) from t1;
count(*)
0
call populate_t1_small();
select count(*) from t1;
count(*)
20
rollback;
select count(*) from t1;
count(*)
20
truncate table t1;
call populate_t1();
select count(*) from t1;
count(*)
200
delete from t1 where keyc <= 60;
select count(*) from t1;
count(*)
140
call populate_t1_small();
select count(*) from t1;
count(*)
160
select * from t1 limit 10;
keyc c1 c2
1 c d
2 c d
3 c d
4 c d
5 c d
6 c d
7 c d
8 c d
9 c d
10 c d
begin;
call populate_t1_small2();
select count(*) from t1;
count(*)
181
select * from t1 where keyc > 30 limit 10;
keyc c1 c2
31 e f
32 e f
33 e f
34 e f
35 e f
36 e f
37 e f
38 e f
39 e f
40 e f
rollback;
select count(*) from t1;
count(*)
160
select * from t1 where keyc > 30 limit 10;
keyc c1 c2
61 a b
62 a b
63 a b
64 a b
65 a b
66 a b
67 a b
68 a b
69 a b
70 a b
update t1 set keyc = keyc + 2000;
select * from t1 limit 10;
keyc c1 c2
2001 c d
2002 c d
2003 c d
2004 c d
2005 c d
2006 c d
2007 c d
2008 c d
2009 c d
2010 c d
rollback;
begin;
update t1 set keyc = keyc + 2000;
select * from t1 limit 10;
keyc c1 c2
4001 c d
4002 c d
4003 c d
4004 c d
4005 c d
4006 c d
4007 c d
4008 c d
4009 c d
4010 c d
rollback;
select * from t1 limit 10;
keyc c1 c2
2001 c d
2002 c d
2003 c d
2004 c d
2005 c d
2006 c d
2007 c d
2008 c d
2009 c d
2010 c d
commit;
select * from t1 limit 10;
keyc c1 c2
2001 c d
2002 c d
2003 c d
2004 c d
2005 c d
2006 c d
2007 c d
2008 c d
2009 c d
2010 c d
insert into t2 select * from t1 where keyc < 2101;
select count(*) from t2;
count(*)
60
drop procedure populate_t1;
drop procedure populate_t1_small;
drop procedure populate_t1_small2;
drop table t1;
drop table t2;
set global innodb_file_per_table = 1;