symfony - Duplicate index on sqlite, not on mysql -


i have entity definition works on dev , production envs (mysql), not on test (sqlite):

/**  * invoice  *  * @orm\table(name="invoice", indexes={  *     @orm\index(name="ref_idx", columns={"ref"}),  *     @orm\index(name="created_at_idx", columns={"created_at"}),  *     @orm\index(name="paid_idx", columns={"paid"}),  *     @orm\index(name="is_valid_idx", columns={"is_valid"}),  *     @orm\index(name="canceled_idx", columns={"canceled"})  * })  * @orm\entity(repositoryclass="appbundle\repository\invoicerepository")  */ class invoice // [...] 

when run doctrine:schema:create or doctrine:schema:update --force on test env, have following error:

  [doctrine\dbal\dbalexception]                                                                    exception occurred while executing 'create index created_at_idx on invoice (created_at)':     sqlstate[hy000]: general error: 1 index created_at_idx exists                              [pdoexception]                                                            sqlstate[hy000]: general error: 1 index created_at_idx exists  

is had kind of issue? how solve/ignore it?

thanks.

solution here: https://stackoverflow.com/a/24634713/1731473

in nutshell, index should have unique name across database.

so can't have:

invoice -> created_at_idx user -> created_at_idx

but:

invoive -> invoice_created_at_idx user -> user_created_at_idx


Comments

Popular posts from this blog

ruby on rails - RuntimeError: Circular dependency detected while autoloading constant - ActiveAdmin.register Role -

c++ - OpenMP unpredictable overhead -

javascript - Wordpress slider, not displayed 100% width -