mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
Merge 10.1 into 10.2
For running the Galera tests, the variable my_disable_leak_check
was set to true in order to avoid assertions due to memory leaks
at shutdown.
Some adjustments due to MDEV-13625 (merge InnoDB tests from MySQL 5.6)
were performed. The most notable behaviour changes from 10.0 and 10.1
are the following:
* innodb.innodb-table-online: adjustments for the DROP COLUMN
behaviour change (MDEV-11114, MDEV-13613)
* innodb.innodb-index-online-fk: the removal of a (1,NULL) record
from the result; originally removed in MySQL 5.7 in the
Oracle Bug #16244691 fix
377774689b
* innodb.create-index-debug: disabled due to MDEV-13680
(the MySQL Bug #77497 fix was not merged from 5.6 to 5.7.10)
* innodb.innodb-alter-autoinc: MariaDB 10.2 behaves like MySQL 5.6/5.7,
while MariaDB 10.0 and 10.1 assign different values when
auto_increment_increment or auto_increment_offset are used.
Also MySQL 5.6/5.7 exhibit different behaviour between
LGORITHM=INPLACE and ALGORITHM=COPY, so something needs to be tested
and fixed in both MariaDB 10.0 and 10.2.
* innodb.innodb-wl5980-alter: disabled because it would trigger an
InnoDB assertion failure (MDEV-13668 may need additional effort in 10.2)
This commit is contained in:
70
mysql-test/suite/innodb/t/innodb-index-debug.test
Normal file
70
mysql-test/suite/innodb/t/innodb-index-debug.test
Normal file
@ -0,0 +1,70 @@
|
||||
-- source include/have_debug.inc
|
||||
-- source include/have_innodb.inc
|
||||
|
||||
let $MYSQLD_DATADIR= `select @@datadir`;
|
||||
|
||||
#
|
||||
# Test for BUG# 12739098, check whether trx->error_status is reset on error.
|
||||
#
|
||||
CREATE TABLE t1(c1 INT NOT NULL, c2 INT, PRIMARY KEY(c1)) Engine=InnoDB;
|
||||
SHOW CREATE TABLE t1;
|
||||
INSERT INTO t1 VALUES (1,1),(2,2),(3,3),(4,4),(5,5);
|
||||
|
||||
SET @saved_debug_dbug = @@SESSION.debug_dbug;
|
||||
SET DEBUG_DBUG='+d,ib_build_indexes_too_many_concurrent_trxs, ib_rename_indexes_too_many_concurrent_trxs, ib_drop_index_too_many_concurrent_trxs';
|
||||
--error ER_TOO_MANY_CONCURRENT_TRXS
|
||||
ALTER TABLE t1 ADD UNIQUE INDEX(c2);
|
||||
SET DEBUG_DBUG = @saved_debug_dbug;
|
||||
|
||||
SHOW CREATE TABLE t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Test for Bug#13861218 Records are not fully sorted during index creation
|
||||
#
|
||||
CREATE TABLE bug13861218 (c1 INT NOT NULL, c2 INT NOT NULL, INDEX(c2))
|
||||
ENGINE=InnoDB;
|
||||
INSERT INTO bug13861218 VALUES (8, 0), (4, 0), (0, 0);
|
||||
SET DEBUG_DBUG = '+d,ib_row_merge_buf_add_two';
|
||||
# Force creation of a PRIMARY KEY on c1 to see what happens on the index(c2).
|
||||
# No crash here, because n_uniq for c2 includes the clustered index fields
|
||||
CREATE UNIQUE INDEX ui ON bug13861218(c1);
|
||||
SET DEBUG_DBUG = @saved_debug_dbug;
|
||||
DROP TABLE bug13861218;
|
||||
|
||||
CREATE TABLE bug13861218 (c1 INT NOT NULL, c2 INT UNIQUE) ENGINE=InnoDB;
|
||||
INSERT INTO bug13861218 VALUES (8, NULL), (4, NULL), (0, NULL);
|
||||
SET DEBUG_DBUG = '+d,ib_row_merge_buf_add_two';
|
||||
# Force creation of a PRIMARY KEY on c1 to see what happens on the index(c2).
|
||||
# assertion failure: ut_ad(cmp_dtuple_rec(dtuple, rec, rec_offsets) > 0)
|
||||
CREATE UNIQUE INDEX ui ON bug13861218(c1);
|
||||
SET DEBUG_DBUG = @saved_debug_dbug;
|
||||
DROP TABLE bug13861218;
|
||||
|
||||
--echo #
|
||||
--echo # Bug #21762319 ADDING INDEXES ON EMPTY TABLE IS SLOW
|
||||
--echo # WITH LARGE INNODB_SORT_BUFFER_SIZE.
|
||||
|
||||
call mtr.add_suppression("InnoDB: Cannot create temporary merge file");
|
||||
|
||||
# Table with large data which is greater than sort buffer
|
||||
|
||||
create table t480(a serial)engine=innodb;
|
||||
insert into t480
|
||||
values(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),
|
||||
(),(),(),(),(),(),(),();
|
||||
insert into t480 select 0 from t480;
|
||||
insert into t480 select 0 from t480;
|
||||
insert into t480 select 0 from t480;
|
||||
insert into t480 select 0 from t480;
|
||||
create table t1(f1 int auto_increment not null,
|
||||
f2 char(200) not null, f3 char(200) not null,
|
||||
f4 char(200) not null,primary key(f1))engine=innodb;
|
||||
insert into t1 select NULL,'aaa','bbb','ccc' from t480;
|
||||
insert into t1 select NULL,'aaaa','bbbb','cccc' from t480;
|
||||
insert into t1 select NULL,'aaaaa','bbbbb','ccccc' from t480;
|
||||
insert into t1 select NULL,'aaaaaa','bbbbbb','cccccc' from t480;
|
||||
insert into t1 select NULL,'aaaaaaa','bbbbbbb','ccccccc' from t480;
|
||||
insert into t1 select NULL,'aaaaaaaa','bbbbbbbb','cccccccc' from t480;
|
||||
select count(*) from t1;
|
||||
drop table t1, t480;
|
Reference in New Issue
Block a user