Description
We found out an issue with DB migration created through Doctrine/DBAL because an index created as "IDX_E0AEF1841F7B7B69" was later referred to as "idx_e0aef1841f7b7b69".
This works well on Windows systems but when the migration is performed on a Mac system it fails, simply because the index called "idx_e0aef1841f7b7b69" does not exist.
We are working on Symfony / Mysql stack and our DB collations are "latin1_swedish_ci" on both Windows and Mac machines.
We looked in the documentation trying to find some configuration that could be set to make Doctrine migration case-sensitive but we did not succeed, so this might be a bug.
First migration
$this->addSql('CREATE TABLE team_closure (id INT AUTO_INCREMENT NOT NULL, ancestor INT NOT NULL, descendant INT NOT NULL, depth INT NOT NULL, INDEX IDX_B77EFCE6B4465BB (ancestor), INDEX IDX_B77EFCE69A8FAD16 (descendant), INDEX IDX_E0AEF1841F7B7B69 (depth), UNIQUE INDEX IDX_5AD3014880E23D3F (ancestor, descendant), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
Second migration
$this->addSql('ALTER TABLE team_closure RENAME INDEX idx_e0aef1841f7b7b69 TO IDX_8AFC573B1D9A3396');
We normally generate migrations running the following commands in the shell
php bin/console doctrine:migrations:diff
php bin/console doctrine:migrations:migrate