I'm trying to alter a previously created table on MariaDB 10.4.21 and I'm getting the following error:
Import failed with: 'Incorrect index name 'pk_i_id''
The table:
CREATE TABLE IF NOT EXISTS /*TABLE_PREFIX*/t_mmessenger_recipients (
message_id INT(10) UNSIGNED NOT NULL,
recipient_id INT(10) UNSIGNED NOT NULL,
readOn DATETIME,
hidden BOOL DEFAULT FALSE,
CONSTRAINT `fk_/*TABLE_PREFIX*/t_mmessenger_recipients_message` FOREIGN KEY(`message_id`) REFERENCES /*TABLE_PREFIX*/t_mmessenger_message(`id`) ON UPDATE CASCADE ON DELETE CASCADE,
PRIMARY KEY (`message_id`, `recipient_id`)
) ENGINE = InnoDB DEFAULT CHARACTER SET 'UTF8' COLLATE 'UTF8_GENERAL_CI';
The alter that generates the error (line 4):
ALTER TABLE /*TABLE_PREFIX*/t_mmessenger_recipients ADD `pk_i_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE FIRST;
ALTER TABLE /*TABLE_PREFIX*/t_mmessenger_recipients DROP FOREIGN KEY `fk_/*TABLE_PREFIX*/t_mmessenger_recipients_message`;
ALTER TABLE /*TABLE_PREFIX*/t_mmessenger_recipients DROP PRIMARY KEY;
ALTER TABLE /*TABLE_PREFIX*/t_mmessenger_recipients ADD PRIMARY KEY (`pk_i_id`);
ALTER TABLE /*TABLE_PREFIX*/t_mmessenger_recipients ADD CONSTRAINT `fk_/*TABLE_PREFIX*/t_mmessenger_recipients_message`
FOREIGN KEY(`message_id`)
REFERENCES /*TABLE_PREFIX*/t_mmessenger_message(`id`) ON UPDATE CASCADE ON DELETE CASCADE;
This seems to happen only on MariaDB, as on MySQL 5.7 it worked fine.