-
unknown authored
InnoDB requires a full table rebuild for foreign key changes. It was not possible in compare_tables() to detect such changes. On Heikkis proposal I added a new flag to the syntax parser where foreign key definition changes are done. I test for this flag in compare_tables() now. mysql-test/r/innodb.result: Bug#18477 - MySQL/InnoDB Ignoring Foreign Keys in ALTER TABLE Fixed an old test result. Added the new test result. mysql-test/t/innodb.test: Bug#18477 - MySQL/InnoDB Ignoring Foreign Keys in ALTER TABLE Added the new test case. sql/sql_lex.h: Bug#18477 - MySQL/InnoDB Ignoring Foreign Keys in ALTER TABLE Added a flag for foreign key definition changes. sql/sql_table.cc: Bug#18477 - MySQL/InnoDB Ignoring Foreign Keys in ALTER TABLE Check for foreign key definition changes in compare_tables(). If present, a table rebuild is required. sql/sql_yacc.yy: Bug#18477 - MySQL/InnoDB Ignoring Foreign Keys in ALTER TABLE Marked foreign key definitions with the new flag. This flag is tested in ALTER TABLE only. It is ignored otherwise.
5569a87e