Eilà gente,
scrivo perché come al solito sbatto su cose che non
rintraccio su internet…
In sostanza, io ho un db di sviluppo con mysql (non
chiedete perché) e per i test uso SQLite3 in memoria.
Ora, il problema è che le mie migrazioni includono le
descrizioni delle foreign key (usando il plugin
foreign_key_migrations, ma credo sarebbe uguale se
avessi scritto a mano), e quando faccio db:schema:dump
mi ritrovo con cose del genere:
foo(bar_id) references bar(id)
add_index :foo, :bar_id
quux(bar_id) references bar(id)
add_index :quux, :bar_id
più ovviamente l’indice creato implicitamente su
bar(id). Pare che a SQLite questo non piaccia e mi
sputa fuori un
SQLite3::SQLException: index bar_id already exists
che ovviamente blocca l’import dello schema e mi
impedisce di far girare i test.
Qualcuno di voi ha mai avuto problemi analoghi? Se si,
come ha risolto?
Esiste un trick per convincere il driver del DBMS a
ignorare questi errori ed andare avanti? (ne prevedo
di simili quando cercherà di aggiungere le FK con
alter table, che sqlite non supporta)
__________________________________________________________
Sent from Yahoo! Mail - a smarter inbox http://uk.mail.yahoo.com