[Dbix-class] SQL::Translator::Parser::DBIx::Class unique symbol change

luke saunders luke.saunders at gmail.com
Thu May 15 13:28:07 BST 2008


The change shown here:
http://dev.catalyst.perl.org/svnweb/bast/diff/DBIx-Class/0.08/trunk/lib/SQL/Translator/Parser/DBIx/Class.pm?rev1=4247;rev2=4248

Is causing many constraint add/drops in our schema diff such as:

ALTER TABLE table_name DROP FOREIGN KEY table_name_fk_fk_user_id,
           ADD CONSTRAINT table_name_fk_fk_user_id_fk_battle_id
FOREIGN KEY (fk_user_id, fk_battle_id) REFERENCES other_table
(fk_user_id, fk_battle_id) ON DELETE CASCADE;

Because the constraint names have all changed in a way that isn't
backwards compatible. This is undesirable as running many of these on
a large production database is time consuming.

So what is the goal of this change? There already exists code in the
MySQL producer for ensuring the foreign key names are unique, would we
not be better off extending that to apply across all constraints and
indexes? Other producers should then have similar code to meet their
own requirements.

Cheers,
Luke.



More information about the DBIx-Class mailing list