diff options
author | unknown <monty@mysql.com> | 2004-04-08 17:56:45 +0300 |
---|---|---|
committer | unknown <monty@mysql.com> | 2004-04-08 17:56:45 +0300 |
commit | 10e15762b8e38ae09d89e6489de6f2fe68cfd85e (patch) | |
tree | 1eb8cd825c2490f5f90d6e08cd2b0338ce489853 /sql/unireg.cc | |
parent | 46bd7be2409e80b36de3cd0d49af33557ffa74a9 (diff) | |
download | mariadb-git-10e15762b8e38ae09d89e6489de6f2fe68cfd85e.tar.gz |
Don't enable HA_EXTRA_WRITE_CACHE if too few rows
Revert main parts of patch for online index builds. Should be done differently
Added support for %lx in my_snprintf()
sql/ha_myisam.cc:
Don't enable HA_EXTRA_WRITE_CACHE if too few rows
sql/handler.h:
Indentaion fix
sql/mysql_priv.h:
Removed real_alter_table, mysql_add_column and mysql_drop_column
sql/sql_class.cc:
After merge fix
sql/sql_insert.cc:
Don't user bulk_insert if only one row (common case)
sql/sql_parse.cc:
Added mysql_create_index() and mysql_drop_index() as these are only wrappers for mysql_alter_table()
sql/sql_table.cc:
Revert main parts of patch for online index builds
Changed back to use tabs to make merges possible between trees
sql/unireg.cc:
Added comments and minor cleanup
strings/my_vsnprintf.c:
Added support for %lx.
Proper long support
Diffstat (limited to 'sql/unireg.cc')
-rw-r--r-- | sql/unireg.cc | 53 |
1 files changed, 43 insertions, 10 deletions
diff --git a/sql/unireg.cc b/sql/unireg.cc index 4af1c832b57..8d3e304b5da 100644 --- a/sql/unireg.cc +++ b/sql/unireg.cc @@ -46,12 +46,29 @@ static bool make_empty_rec(int file, enum db_type table_type, List<create_field> &create_fields, uint reclength,uint null_fields); +/* + Create a frm (table definition) file + + SYNOPSIS + mysql_create_frm() + thd Thread handler + file_name Name of file (including database and .frm) + create_info create info parameters + create_fields Fields to create + keys number of keys to create + key_info Keys to create + db_file Handler to use. May be zero, in which case we use + create_info->db_type + RETURN + 0 ok + 1 error +*/ -int mysql_create_frm(THD *thd, my_string file_name, - HA_CREATE_INFO *create_info, - List<create_field> &create_fields, - uint keys, KEY *key_info, - handler *db_file) +bool mysql_create_frm(THD *thd, my_string file_name, + HA_CREATE_INFO *create_info, + List<create_field> &create_fields, + uint keys, KEY *key_info, + handler *db_file) { uint reclength,info_length,screens,key_info_length,maxlength,null_fields; File file; @@ -166,9 +183,29 @@ err: err2: VOID(my_close(file,MYF(MY_WME))); err3: + my_delete(file_name,MYF(0)); DBUG_RETURN(1); } /* mysql_create_frm */ + +/* + Create a frm (table definition) file and the tables + + SYNOPSIS + mysql_create_frm() + thd Thread handler + file_name Name of file (including database and .frm) + create_info create info parameters + create_fields Fields to create + keys number of keys to create + key_info Keys to create + db_file Handler to use. May be zero, in which case we use + create_info->db_type + RETURN + 0 ok + 1 error +*/ + int rea_create_table(THD *thd, my_string file_name, HA_CREATE_INFO *create_info, List<create_field> &create_fields, @@ -179,12 +216,8 @@ int rea_create_table(THD *thd, my_string file_name, if (mysql_create_frm(thd, file_name, create_info, create_fields, keys, key_info, NULL) || ha_create_table(file_name,create_info,0)) - goto err; + DBUG_RETURN(1); DBUG_RETURN(0); - -err: - my_delete(file_name,MYF(0)); - DBUG_RETURN(1); } /* rea_create_table */ |