InnoDB: Check all referencing tables in DROP DATABASE (Bug #10335).
This commit is contained in:
parent
2e93680773
commit
2d5b96798f
@ -2143,6 +2143,7 @@ row_drop_table_for_mysql(
|
|||||||
foreign = UT_LIST_GET_FIRST(table->referenced_list);
|
foreign = UT_LIST_GET_FIRST(table->referenced_list);
|
||||||
|
|
||||||
while (foreign && foreign->foreign_table == table) {
|
while (foreign && foreign->foreign_table == table) {
|
||||||
|
check_next_foreign:
|
||||||
foreign = UT_LIST_GET_NEXT(referenced_list, foreign);
|
foreign = UT_LIST_GET_NEXT(referenced_list, foreign);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2171,6 +2172,10 @@ row_drop_table_for_mysql(
|
|||||||
goto funct_exit;
|
goto funct_exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (foreign && trx->check_foreigns) {
|
||||||
|
goto check_next_foreign;
|
||||||
|
}
|
||||||
|
|
||||||
if (table->n_mysql_handles_opened > 0) {
|
if (table->n_mysql_handles_opened > 0) {
|
||||||
ibool added;
|
ibool added;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user