Table renamed (recreated with all the indexes, keys, etc., in case of sqlite)
Workaround tried (no success)
I tried workaround, but no success:
Drop index in preUp hook, then recreate it in postUp hook. I ensured both hooks executed. Index successfully dropped, but not created (silently: no error appeared). $table->hasIndex(indexName) returns true, but index never created.
Workaround that works: to rename table use 3 migrations instead of one:
1) migration that drops indexes
2) migration that renames table
3) migration that restores (re-creates) indexes
Bug Report
Summary
When i try rename sqlite table that contains index, i get exception "index *** already exists".
Current behavior
An exception occurred while executing a query: SQLSTATE[HY000]: General error: 1 index *your_index_name* already exists
How to reproduce
Demo repo: https://github.com/karrakoliko/doctrine-migrations-sqlite-driver-is-broken-example
Expected behavior
Table renamed (recreated with all the indexes, keys, etc., in case of sqlite)
Workaround tried (no success)
I tried workaround, but no success: Drop index in
preUp
hook, then recreate it inpostUp
hook. I ensured both hooks executed. Index successfully dropped, but not created (silently: no error appeared).$table->hasIndex(indexName)
returns true, but index never created.