mirror of
https://github.com/MariaDB/server.git
synced 2025-01-30 18:41:56 +01:00
efb8485d85
The MDEV-20265 commit e746f451d5
introduces DBUG_ASSERT(right_op == r_tbl) in
st_select_lex::add_cross_joined_table(), and that assertion would
fail in several tests that exercise joins. That commit was skipped
in this merge, and a separate fix of MDEV-20265 will be necessary in 10.4.
38 lines
1 KiB
Text
38 lines
1 KiB
Text
-- source include/have_innodb.inc
|
|
-- source include/not_embedded.inc
|
|
|
|
#
|
|
# Bug #68148: drop index on a foreign key column leads to missing table
|
|
# MDEV-8845: Table disappear after modifying FK
|
|
#
|
|
|
|
set global innodb_file_per_table=1;
|
|
|
|
CREATE TABLE ref_table1 (id int(11) NOT NULL, PRIMARY KEY(id)) ENGINE=InnoDB;
|
|
|
|
CREATE TABLE ref_table2 (id int(11) NOT NULL, PRIMARY KEY(id)) ENGINE=InnoDB;
|
|
|
|
CREATE TABLE `main` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`ref_id1` int(11) NOT NULL,
|
|
`ref_id2` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `idx_1` (`ref_id1`,`ref_id2`),
|
|
KEY `FK_set_out_analysis_route_id` (`ref_id2`),
|
|
CONSTRAINT `FK_1` FOREIGN KEY (`ref_id1`) REFERENCES `ref_table1` (`id`) ,
|
|
CONSTRAINT `FK_2` FOREIGN KEY (`ref_id2`) REFERENCES `ref_table2` (`id`)
|
|
) ENGINE=InnoDB;
|
|
|
|
SET FOREIGN_KEY_CHECKS=0;
|
|
|
|
DROP INDEX `idx_1` ON `main`;
|
|
SHOW TABLES;
|
|
|
|
--source include/restart_mysqld.inc
|
|
|
|
ALTER TABLE `main` ADD INDEX `idx_1` (`ref_id1`);
|
|
SHOW CREATE TABLE `main`;
|
|
|
|
DROP TABLE main, ref_table1, ref_table2;
|
|
|
|
|