1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-07 00:04:31 +03:00
Files
mariadb/mysql-test/suite/innodb_fts/t/foreign_key_update.test
Thirunarayanan Balathandayuthapani 738da4918d MDEV-32346 Assertion failure sym_node->table != NULL in pars_retrieve_table_def on UPDATE
- During update operation, InnoDB should avoid the initializing
the FTS_DOC_ID of foreign table if the foreign table is discarded
2024-03-06 14:04:49 +05:30

48 lines
1.1 KiB
Plaintext

#
# BUG#21111301 INNODB FTS: ERROR DUPLICATE ENTRY IN FTS_DOC_ID_INDEX ON UPDATE CASCADE
#
-- source include/have_innodb.inc
CREATE TABLE t1 (
a varchar(40),
KEY a(a)
) ENGINE=InnoDB;
CREATE TABLE t1_fk (
a varchar(40),
KEY a(a),
FULLTEXT KEY (a),
CONSTRAINT fk FOREIGN KEY (a) REFERENCES t1 (a) ON UPDATE CASCADE
) ENGINE=InnoDB;
INSERT INTO t1 VALUES('mysql');
INSERT INTO t1_fk VALUES('mysql');
INSERT INTO t1_fk VALUES('mysql');
SELECT * FROM t1_fk;
SELECT * FROM t1_fk WHERE MATCH(a) AGAINST('mysql');
UPDATE t1 SET a = 'database' WHERE a = 'mysql';
SELECT * FROM t1_fk;
SELECT * FROM t1_fk WHERE MATCH(a) AGAINST('mysql');
SELECT * FROM t1_fk WHERE MATCH(a) AGAINST('database');
DROP TABLE t1_fk;
DROP TABLE t1;
--echo #
--echo # MDEV-32346 Assertion failure sym_node->table != NULL
--echo # in pars_retrieve_table_def on UPDATE
--echo #
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB;
CREATE TABLE t2 (a INT, b TEXT, FOREIGN KEY(a) REFERENCES t1(a),
FULLTEXT (b))ENGINE=InnoDB;
INSERT INTO t1 SET a=1;
ALTER TABLE t2 DISCARD TABLESPACE;
--error ER_ROW_IS_REFERENCED_2
UPDATE t1 SET a=2;
DROP TABLE t2,t1;