summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorunknown <monty@mysql.com>2004-11-03 20:07:17 +0200
committerunknown <monty@mysql.com>2004-11-03 20:07:17 +0200
commit3693aa4715119b0f8a5e58df241685b8272c1bac (patch)
tree364ff201b75e401866182c04d8fbcf11ebccff51 /sql
parent4fb5d78d5e2806b4cd693b6f061bb4f5f72db261 (diff)
downloadmariadb-git-3693aa4715119b0f8a5e58df241685b8272c1bac.tar.gz
After merge fixes
libmysqld/lib_sql.cc: After merge fix sql/handler.cc: Cleanup
Diffstat (limited to 'sql')
-rw-r--r--sql/handler.cc19
-rw-r--r--sql/sql_table.cc3
2 files changed, 12 insertions, 10 deletions
diff --git a/sql/handler.cc b/sql/handler.cc
index 97708fa77fe..bb5e980f7bf 100644
--- a/sql/handler.cc
+++ b/sql/handler.cc
@@ -157,12 +157,11 @@ enum db_type ha_checktype(enum db_type database_type)
break;
}
- return
- DB_TYPE_UNKNOWN != (enum db_type) thd->variables.table_type ?
- (enum db_type) thd->variables.table_type :
- DB_TYPE_UNKNOWN != (enum db_type) global_system_variables.table_type ?
- (enum db_type) global_system_variables.table_type :
- DB_TYPE_MYISAM;
+ return ((enum db_type) thd->variables.table_type != DB_TYPE_UNKNOWN ?
+ (enum db_type) thd->variables.table_type :
+ (enum db_type) global_system_variables.table_type !=
+ DB_TYPE_UNKNOWN ?
+ (enum db_type) global_system_variables.table_type : DB_TYPE_MYISAM);
} /* ha_checktype */
@@ -784,10 +783,14 @@ bool ha_flush_logs()
int ha_delete_table(enum db_type table_type, const char *path)
{
+ handler *file;
char tmp_path[FN_REFLEN];
- handler *file=(table_type== DB_TYPE_UNKNOWN ? 0 : get_new_handler((TABLE*) 0, table_type));
- if (!file)
+
+ /* DB_TYPE_UNKNOWN is used in ALTER TABLE when renaming only .frm files */
+ if (table_type == DB_TYPE_UNKNOWN ||
+ ! (file=get_new_handler((TABLE*) 0, table_type)))
return ENOENT;
+
if (lower_case_table_names == 2 && !(file->table_flags() & HA_FILE_BASED))
{
/* Ensure that table handler get path in lower case */
diff --git a/sql/sql_table.cc b/sql/sql_table.cc
index e5d060f99fb..26c483a61a8 100644
--- a/sql/sql_table.cc
+++ b/sql/sql_table.cc
@@ -3085,7 +3085,6 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name,
}
/* We don't want update TIMESTAMP fields during ALTER TABLE. */
- new_table->timestamp_field_type= TIMESTAMP_NO_AUTO_SET;
thd->count_cuted_fields= CHECK_FIELD_WARN; // calc cuted fields
thd->cuted_fields=0L;
thd->proc_info="copy to tmp table";
@@ -3093,7 +3092,7 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name,
copied=deleted=0;
if (new_table && !new_table->is_view)
{
- new_table->timestamp_default_now= 0;
+ new_table->timestamp_field_type= TIMESTAMP_NO_AUTO_SET;
new_table->next_number_field=new_table->found_next_number_field;
error=copy_data_between_tables(table,new_table,create_list,
handle_duplicates,