mirror of
https://github.com/MariaDB/server.git
synced 2025-01-28 01:34:17 +01:00
2e814d4702
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
489 lines
13 KiB
Text
489 lines
13 KiB
Text
call mtr.add_suppression("The file '.*' already exists though the corresponding table did not exist in the InnoDB data dictionary");
|
|
call mtr.add_suppression("Cannot create file '.*'");
|
|
call mtr.add_suppression("InnoDB: Error number 17 means 'File exists'");
|
|
set global innodb_file_per_table = on;
|
|
"1. Hit crash point while writing redo log."
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), unique findex(f), index ck(c))
|
|
engine=innodb row_format=compressed
|
|
key_block_size=8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_while_writing_redo_log";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
"2. Hit crash point on completion of redo log write."
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), unique findex(f), index ck(c))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_after_redo_log_write_complete";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
"3. Hit crash point while dropping indexes."
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), unique findex(f), index ck(c))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_on_drop_of_clust_index";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), unique findex(f))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_on_drop_of_uniq_index";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), index ck(c))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_on_drop_of_sec_index";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
"4. Hit crash point on completing drop of all indexes before creation"
|
|
" of index is commenced."
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), unique findex(f), index ck(c))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_drop_reinit_done_create_to_start";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
"5. Hit crash point while creating indexes."
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), unique findex(f), index ck(c))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_on_create_of_clust_index";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), unique findex(f))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_on_create_of_uniq_index";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), index ck(c))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_on_create_of_sec_index";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
"6. Hit crash point after data is updated to system-table and"
|
|
" in-memory dict."
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), unique findex(f), index ck(c))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_on_updating_dict_sys_info";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
"7. Hit crash point before/after log checkpoint is done."
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), unique findex(f), index ck(c))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_before_log_removal";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
use test;
|
|
set global innodb_file_per_table = 1;
|
|
set global innodb_file_format = 'Barracuda';
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
SET innodb_strict_mode=OFF;
|
|
create table t (
|
|
i int, f float, c char,
|
|
primary key pk(i), unique findex(f), index ck(c))
|
|
engine = innodb row_format = compressed
|
|
key_block_size = 8;
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
set session debug = "+d,ib_trunc_crash_after_truncate_done";
|
|
truncate table t;
|
|
ERROR HY000: Lost connection to MySQL server during query
|
|
# restart
|
|
check table t;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
select * from t;
|
|
i f c
|
|
insert into t values (1, 1.1, 'a'), (2, 2.2, 'b'), (3, 3.3, 'c');
|
|
select * from t;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
3 3.3 c
|
|
select * from t where f < 2.5;
|
|
i f c
|
|
1 1.1 a
|
|
2 2.2 b
|
|
drop table t;
|
|
set global innodb_file_format = Barracuda;
|
|
Warnings:
|
|
Warning 131 Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
|
|
set global innodb_file_per_table = 1;
|