summaryrefslogtreecommitdiff
path: root/mysql-test/suite/innodb/r
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2022-09-19 11:46:25 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2022-09-19 11:46:25 +0300
commitfed0d85de753172e48623b87652af03935d38862 (patch)
tree8fab941d16eb4af5428bb3a2b5f697bdc46715f2 /mysql-test/suite/innodb/r
parent3c8674edcc99605aa4634145771b2195c3f4f007 (diff)
downloadmariadb-git-fed0d85de753172e48623b87652af03935d38862.tar.gz
MDEV-29559 Recovery of INSERT_HEAP_DYNAMIC into secondary index fails
log_phys_t::apply(): When parsing an INSERT_HEAP_DYNAMIC record, allow ll==rlen to hold for the last part. A secondary index record may inherit all preceding bytes from the infimum pseudo-record. For INSERT_HEAP_REDUNDANT, some header bytes will always be present because the header will never be copied from the page infimum. We will tolerate ll==rlen also in that case to be consistent with the parsing of INSERT_HEAP_DYNAMIC.
Diffstat (limited to 'mysql-test/suite/innodb/r')
-rw-r--r--mysql-test/suite/innodb/r/recovery_shutdown.result31
1 files changed, 12 insertions, 19 deletions
diff --git a/mysql-test/suite/innodb/r/recovery_shutdown.result b/mysql-test/suite/innodb/r/recovery_shutdown.result
index dc785d580fe..6f7ca6e0d1d 100644
--- a/mysql-test/suite/innodb/r/recovery_shutdown.result
+++ b/mysql-test/suite/innodb/r/recovery_shutdown.result
@@ -4,13 +4,10 @@ call mtr.add_suppression("Found 1 prepared XA transactions");
# MDEV-13797 InnoDB may hang if shutdown is initiated soon after startup
# while rolling back recovered incomplete transactions
#
-CREATE TABLE t (a INT) ENGINE=InnoDB;
-BEGIN;
-COMMIT;
connect con$c,localhost,root,,;
CREATE TABLE t8 (a SERIAL, b INT UNIQUE, c INT UNIQUE) ENGINE=InnoDB;
XA START 'x';
-INSERT INTO t8 (a) SELECT NULL FROM t;
+INSERT INTO t8 (a) SELECT NULL FROM seq_1_to_100;
UPDATE t8 SET a=a+100, b=a;
DELETE FROM t8;
XA END 'x';
@@ -18,58 +15,54 @@ XA PREPARE 'x';
connect con$c,localhost,root,,;
CREATE TABLE t7 (a SERIAL, b INT UNIQUE, c INT UNIQUE) ENGINE=InnoDB;
BEGIN;
-INSERT INTO t7 (a) SELECT NULL FROM t;
+INSERT INTO t7 (a) SELECT NULL FROM seq_1_to_100;
UPDATE t7 SET a=a+100, b=a;
DELETE FROM t7;
connect con$c,localhost,root,,;
CREATE TABLE t6 (a SERIAL, b INT UNIQUE, c INT UNIQUE) ENGINE=InnoDB;
BEGIN;
-INSERT INTO t6 (a) SELECT NULL FROM t;
+INSERT INTO t6 (a) SELECT NULL FROM seq_1_to_100;
UPDATE t6 SET a=a+100, b=a;
DELETE FROM t6;
connect con$c,localhost,root,,;
CREATE TABLE t5 (a SERIAL, b INT UNIQUE, c INT UNIQUE) ENGINE=InnoDB;
BEGIN;
-INSERT INTO t5 (a) SELECT NULL FROM t;
+INSERT INTO t5 (a) SELECT NULL FROM seq_1_to_100;
UPDATE t5 SET a=a+100, b=a;
DELETE FROM t5;
connect con$c,localhost,root,,;
CREATE TABLE t4 (a SERIAL, b INT UNIQUE, c INT UNIQUE) ENGINE=InnoDB;
BEGIN;
-INSERT INTO t4 (a) SELECT NULL FROM t;
+INSERT INTO t4 (a) SELECT NULL FROM seq_1_to_100;
UPDATE t4 SET a=a+100, b=a;
DELETE FROM t4;
connect con$c,localhost,root,,;
CREATE TABLE t3 (a SERIAL, b INT UNIQUE, c INT UNIQUE) ENGINE=InnoDB;
BEGIN;
-INSERT INTO t3 (a) SELECT NULL FROM t;
+INSERT INTO t3 (a) SELECT NULL FROM seq_1_to_100;
UPDATE t3 SET a=a+100, b=a;
DELETE FROM t3;
connect con$c,localhost,root,,;
CREATE TABLE t2 (a SERIAL, b INT UNIQUE, c INT UNIQUE) ENGINE=InnoDB;
BEGIN;
-INSERT INTO t2 (a) SELECT NULL FROM t;
+INSERT INTO t2 (a) SELECT NULL FROM seq_1_to_100;
UPDATE t2 SET a=a+100, b=a;
DELETE FROM t2;
connect con$c,localhost,root,,;
CREATE TABLE t1 (a SERIAL, b INT UNIQUE, c INT UNIQUE) ENGINE=InnoDB;
BEGIN;
-INSERT INTO t1 (a) SELECT NULL FROM t;
+INSERT INTO t1 (a) SELECT NULL FROM seq_1_to_100;
UPDATE t1 SET a=a+100, b=a;
DELETE FROM t1;
-INSERT INTO t1(a) SELECT NULL FROM t;
-INSERT INTO t1(a) SELECT NULL FROM t1;
-INSERT INTO t1(a) SELECT NULL FROM t1;
-INSERT INTO t1(a) SELECT NULL FROM t1;
-INSERT INTO t1(a) SELECT NULL FROM t1;
+INSERT INTO t1(a) SELECT NULL FROM seq_1_to_1600;
connection default;
SET GLOBAL innodb_flush_log_at_trx_commit=1;
-CREATE TABLE u(a SERIAL) ENGINE=INNODB;
+CREATE TABLE MDEV_29559 (a TINYINT UNSIGNED PRIMARY KEY, KEY(a)) ENGINE=InnoDB;
+INSERT INTO MDEV_29559 VALUES (0x69);
FLUSH TABLES;
# restart
-# restart
XA RECOVER;
formatID gtrid_length bqual_length data
1 1 0 x
# restart
-DROP TABLE t,u;
+DROP TABLE MDEV_29559;