summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorunknown <mikael@dator5.(none)>2006-06-20 16:07:55 -0400
committerunknown <mikael@dator5.(none)>2006-06-20 16:07:55 -0400
commit7f272a495f0ceb935f0097cf5533c676bb08ce5a (patch)
tree8e08b338300a58a9ec41580e075c16a3dd7a51db /sql
parent89fc7fdb056fc8aa5ffb5da229b460e9863f0641 (diff)
parent3d0497297422d7305e24874d084b9d9fd4677154 (diff)
downloadmariadb-git-7f272a495f0ceb935f0097cf5533c676bb08ce5a.tar.gz
Merge dator5.(none):/home/pappa/clean-mysql-5.1
into dator5.(none):/home/pappa/bug16000
Diffstat (limited to 'sql')
-rw-r--r--sql/table.cc11
-rw-r--r--sql/unireg.cc1
2 files changed, 12 insertions, 0 deletions
diff --git a/sql/table.cc b/sql/table.cc
index ab1bd49ba48..a96ca0da881 100644
--- a/sql/table.cc
+++ b/sql/table.cc
@@ -1484,7 +1484,18 @@ int open_table_from_share(THD *thd, TABLE_SHARE *share, const char *alias,
tmp= fix_partition_func(thd, outparam, is_create_table);
*root_ptr= old_root;
if (tmp)
+ {
+ if (is_create_table)
+ {
+ /*
+ During CREATE/ALTER TABLE it is ok to receive errors here.
+ It is not ok if it happens during the opening of an frm
+ file as part of a normal query.
+ */
+ error_reported= TRUE;
+ }
goto err;
+ }
}
#endif
diff --git a/sql/unireg.cc b/sql/unireg.cc
index 11aa73bb502..42518e7b9b7 100644
--- a/sql/unireg.cc
+++ b/sql/unireg.cc
@@ -339,6 +339,7 @@ int rea_create_table(THD *thd, const char *path,
DBUG_RETURN(0);
err_handler:
+ VOID(file->create_handler_files(path, NULL, CHF_DELETE_FLAG, create_info));
my_delete(frm_name, MYF(0));
DBUG_RETURN(1);
} /* rea_create_table */