mirror of
https://github.com/MariaDB/server.git
synced 2025-08-07 00:04:31 +03:00
row0mysql.c Innobase does not trap now if one creates a table already in Innobase
innobase/row/row0mysql.c: Innobase does not trap now if one creates a table already in Innobase
This commit is contained in:
@@ -818,12 +818,19 @@ row_create_table_for_mysql(
|
|||||||
|
|
||||||
if (err != DB_SUCCESS) {
|
if (err != DB_SUCCESS) {
|
||||||
/* We have special error handling here */
|
/* We have special error handling here */
|
||||||
ut_a(err == DB_OUT_OF_FILE_SPACE);
|
|
||||||
trx->error_state = DB_SUCCESS;
|
trx->error_state = DB_SUCCESS;
|
||||||
|
|
||||||
trx_general_rollback_for_mysql(trx, FALSE, NULL);
|
trx_general_rollback_for_mysql(trx, FALSE, NULL);
|
||||||
|
|
||||||
|
if (err == DB_OUT_OF_FILE_SPACE) {
|
||||||
row_drop_table_for_mysql(table->name, trx, TRUE);
|
row_drop_table_for_mysql(table->name, trx, TRUE);
|
||||||
|
} else {
|
||||||
|
assert(err == DB_DUPLICATE_KEY);
|
||||||
|
fprintf(stderr,
|
||||||
|
"Innobase: error: table %s already exists in Innobase data dictionary\n",
|
||||||
|
table->name);
|
||||||
|
}
|
||||||
|
|
||||||
trx->error_state = DB_SUCCESS;
|
trx->error_state = DB_SUCCESS;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user