1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Added tests for MDEV-11724, MDEV-11725, MDEV-11726.

This commit is contained in:
Jan Lindström
2017-05-02 13:00:15 +03:00
committed by Oleksandr Byelkin
parent ccca4f43c9
commit 96987cb4e9
2 changed files with 118 additions and 0 deletions

View File

@ -0,0 +1,64 @@
CREATE TABLE t1 (
y YEAR NULL,
i SMALLINT NULL,
c VARCHAR(8) NOT NULL DEFAULT '',
vi SMALLINT AS (i) VIRTUAL,
INDEX(y)
) ENGINE=InnoDB;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`y` year(4) DEFAULT NULL,
`i` smallint(6) DEFAULT NULL,
`c` varchar(8) NOT NULL DEFAULT '',
`vi` smallint(6) GENERATED ALWAYS AS (`i`) VIRTUAL,
KEY `y` (`y`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
y i c vi
INSERT INTO t1 (i) VALUES (1),(2);
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
y i c vi
DROP TABLE t1;
CREATE TABLE t1 (
y YEAR NULL,
i SMALLINT NULL,
vi SMALLINT AS (i) VIRTUAL,
INDEX(y)
) ENGINE=InnoDB;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`y` year(4) DEFAULT NULL,
`i` smallint(6) DEFAULT NULL,
`vi` smallint(6) GENERATED ALWAYS AS (`i`) VIRTUAL,
KEY `y` (`y`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
y i vi
INSERT INTO t1 (i) VALUES (1),(2);
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
y i vi
DROP TABLE t1;
CREATE TABLE t1 (
y YEAR NULL,
i SMALLINT NULL,
b BLOB NULL,
vi SMALLINT AS (i) VIRTUAL,
INDEX(y)
) ENGINE=InnoDB;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`y` year(4) DEFAULT NULL,
`i` smallint(6) DEFAULT NULL,
`b` blob DEFAULT NULL,
`vi` smallint(6) GENERATED ALWAYS AS (`i`) VIRTUAL,
KEY `y` (`y`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
y i b vi
INSERT INTO t1 (i) VALUES (1),(2);
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
y i b vi
DROP TABLE t1;

View File

@ -0,0 +1,54 @@
--source include/have_innodb.inc
#
# MDEV-11724: InnoDB: Failing assertion: len <= col->len || ((col->mtype) == 5 || (col->mtype) == 16 || (col->mtype) == 14) || (((col->mtype) == 15 || (col->mtype) == 16) && len == 2 * 2 * sizeof(double)) || (col->len == 0 && col->mtype == 1)
#
CREATE TABLE t1 (
y YEAR NULL,
i SMALLINT NULL,
c VARCHAR(8) NOT NULL DEFAULT '',
vi SMALLINT AS (i) VIRTUAL,
INDEX(y)
) ENGINE=InnoDB;
SHOW CREATE TABLE t1;
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
INSERT INTO t1 (i) VALUES (1),(2);
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
DROP TABLE t1;
#
# MDEV-11725: InnoDB: Failing assertion: !rec || !cmp_dtuple_rec(tuple, rec, *offsets)
#
CREATE TABLE t1 (
y YEAR NULL,
i SMALLINT NULL,
vi SMALLINT AS (i) VIRTUAL,
INDEX(y)
) ENGINE=InnoDB;
SHOW CREATE TABLE t1;
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
INSERT INTO t1 (i) VALUES (1),(2);
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
DROP TABLE t1;
#
# MDEV-11726: Server crashes in mach_read_from_n_little_endian
#
CREATE TABLE t1 (
y YEAR NULL,
i SMALLINT NULL,
b BLOB NULL,
vi SMALLINT AS (i) VIRTUAL,
INDEX(y)
) ENGINE=InnoDB;
SHOW CREATE TABLE t1;
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
INSERT INTO t1 (i) VALUES (1),(2);
SELECT * FROM t1 WHERE y BETWEEN 2012 AND 2016 FOR UPDATE;
DROP TABLE t1;