Skip to content
  • Dmitry Lenev's avatar
    b0151b83
    Bug#21919887 'STATEMENTS IN "EXECUTABLE COMMENTS" ARE IGNORING CONSTRAINTS' · b0151b83
    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: default avatarGleb Shchepa <gleb.shchepa@oracle.com>
    b0151b83
    Bug#21919887 'STATEMENTS IN "EXECUTABLE COMMENTS" ARE IGNORING CONSTRAINTS'
    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: default avatarGleb Shchepa <gleb.shchepa@oracle.com>
Loading