summaryrefslogtreecommitdiff
path: root/innobase/row
diff options
context:
space:
mode:
authorunknown <heikki@hundin.mysql.fi>2004-10-08 23:52:25 +0300
committerunknown <heikki@hundin.mysql.fi>2004-10-08 23:52:25 +0300
commitbffccdf494e125801d5557769f58f5e269a33d4a (patch)
treec4315ca04d014f942f301e658ec0494825b6c00f /innobase/row
parent6f00b4de9cc0541798a05e8085815c9ae0448a25 (diff)
downloadmariadb-git-bffccdf494e125801d5557769f58f5e269a33d4a.tar.gz
row0mysql.c:
If one tries to drop an InnoDB table without an .ibd file, print to .err log that we DID remove the table from the internal data dictionary of InnoDB, and return DB_SUCCESS so that MySQL will delete the .frm file; the drawback in this is that then DROP TABLE returns success, and the user is not alerted; maybe it could return a warning innobase/row/row0mysql.c: If one tries to drop an InnoDB table without an .ibd file, print to .err log that we DID remove the table from the internal data dictionary of InnoDB, and return DB_SUCCESS so that MySQL will delete the .frm file; the drawback in this is that then DROP TABLE returns success, and the user is not alerted; maybe it could return a warning
Diffstat (limited to 'innobase/row')
-rw-r--r--innobase/row/row0mysql.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/innobase/row/row0mysql.c b/innobase/row/row0mysql.c
index b38fab45a8e..ff3b48d03f5 100644
--- a/innobase/row/row0mysql.c
+++ b/innobase/row/row0mysql.c
@@ -1585,7 +1585,7 @@ row_create_table_for_mysql(
"InnoDB: See the Restrictions section of the InnoDB manual.\n"
"InnoDB: You can drop the orphaned table inside InnoDB by\n"
"InnoDB: creating an InnoDB table with the same name in another\n"
- "InnoDB: database and moving the .frm file to the current database.\n"
+ "InnoDB: database and copying the .frm file to the current database.\n"
"InnoDB: Then MySQL thinks the table exists, and DROP TABLE will\n"
"InnoDB: succeed.\n"
"InnoDB: You can look for further help from\n"
@@ -2546,7 +2546,13 @@ row_drop_table_for_mysql(
name_or_path,
is_path,
FALSE, TRUE)) {
- err = DB_ERROR;
+ err = DB_SUCCESS;
+
+ fprintf(stderr,
+"InnoDB: We removed now the InnoDB internal data dictionary entry\n"
+"InnoDB: of table ");
+ ut_print_name(stderr, trx, name);
+ fprintf(stderr, ".\n");
goto funct_exit;
}
@@ -2554,6 +2560,12 @@ row_drop_table_for_mysql(
success = fil_delete_tablespace(space_id);
if (!success) {
+ fprintf(stderr,
+"InnoDB: We removed now the InnoDB internal data dictionary entry\n"
+"InnoDB: of table ");
+ ut_print_name(stderr, trx, name);
+ fprintf(stderr, ".\n");
+
ut_print_timestamp(stderr);
fprintf(stderr,
" InnoDB: Error: not able to delete tablespace %lu of table ",
@@ -2993,7 +3005,7 @@ row_rename_table_for_mysql(
"InnoDB: dropped automatically when the queries end.\n"
"InnoDB: You can drop the orphaned table inside InnoDB by\n"
"InnoDB: creating an InnoDB table with the same name in another\n"
- "InnoDB: database and moving the .frm file to the current database.\n"
+ "InnoDB: database and copying the .frm file to the current database.\n"
"InnoDB: Then MySQL thinks the table exists, and DROP TABLE will\n"
"InnoDB: succeed.\n", stderr);
}