-
Dmitry Lenev authored
Foreign key definitions used in CREATE and ALTER TABLE statements on InnoDB tables were ignored if these statements were wrapped in conditional comments (like /*!50101 ... */ or /*! ... */). The problem was caused by the fact that InnoDB did their own parsing of foreign key definitions in order to validate them and store them in its internal data-dictionary. And this parser didn't handle conditional comments correctly. Transition to new SQL-layer data-dictionary in 8.0 and removal of such parsing by fix for bug#30287895 "REMOVE DICT_CREATE_FOREIGN_CONSTRAINTS() AND FRIENDS" has solved this problem. Test case only. Reviewed-by:
Gleb Shchepa <gleb.shchepa@oracle.com>
Dmitry Lenev authoredForeign key definitions used in CREATE and ALTER TABLE statements on InnoDB tables were ignored if these statements were wrapped in conditional comments (like /*!50101 ... */ or /*! ... */). The problem was caused by the fact that InnoDB did their own parsing of foreign key definitions in order to validate them and store them in its internal data-dictionary. And this parser didn't handle conditional comments correctly. Transition to new SQL-layer data-dictionary in 8.0 and removal of such parsing by fix for bug#30287895 "REMOVE DICT_CREATE_FOREIGN_CONSTRAINTS() AND FRIENDS" has solved this problem. Test case only. Reviewed-by:
Gleb Shchepa <gleb.shchepa@oracle.com>
Loading