mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
MDEV-35183 ADD FULLTEXT INDEX unnecessarily DROPS FTS COMMON TABLES
- InnoDB fulltext rebuilds the FTS COMMON table while adding the new fulltext index. This can be optimized by avoiding rebuilding the FTS COMMON table in case of FTS COMMON TABLE already exists. Reviewed-by: Marko Mäkelä <marko.makela@mariadb.com>
This commit is contained in:
@@ -784,3 +784,28 @@ f1 MATCH(f1) AGAINST ("test" IN BOOLEAN MODE)
|
||||
test 0.000000001885928302414186
|
||||
DROP TABLE t1;
|
||||
# End of 10.3 tests
|
||||
#
|
||||
# MDEV-35183 ADD FULLTEXT INDEX unnecessarily DROPS FTS
|
||||
# COMMON TABLES
|
||||
#
|
||||
CREATE TABLE t1 (
|
||||
ID INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
|
||||
title VARCHAR(200), book VARCHAR(200),
|
||||
FULLTEXT fidx(title)) ENGINE = InnoDB;
|
||||
INSERT INTO t1(title) VALUES('database');
|
||||
ALTER TABLE t1 DROP INDEX fidx;
|
||||
select space into @common_space from information_schema.innodb_sys_tables where name like "test/FTS_%_CONFIG";
|
||||
ALTER TABLE t1 ADD FULLTEXT fidx_1(book);
|
||||
select space=@common_space from information_schema.innodb_sys_tables where name like "test/FTS_%_CONFIG";
|
||||
space=@common_space
|
||||
1
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`title` varchar(200) DEFAULT NULL,
|
||||
`book` varchar(200) DEFAULT NULL,
|
||||
PRIMARY KEY (`ID`),
|
||||
FULLTEXT KEY `fidx_1` (`book`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
|
||||
DROP TABLE t1;
|
||||
|
Reference in New Issue
Block a user