diff options
author | Gleb Shchepa <gshchepa@mysql.com> | 2008-11-14 21:37:27 +0400 |
---|---|---|
committer | Gleb Shchepa <gshchepa@mysql.com> | 2008-11-14 21:37:27 +0400 |
commit | 8155de51e5acce2bf295bed0e7c8b9f829c2db71 (patch) | |
tree | ac048b0a414438fee2b88cc42f19e12e666f2ec0 /sql/parse_file.cc | |
parent | cba2743336055163874f6aec273f920ee0df5b11 (diff) | |
parent | 56b9586fd1d94ebd70662417a1d2ac1921da4ad2 (diff) | |
download | mariadb-git-8155de51e5acce2bf295bed0e7c8b9f829c2db71.tar.gz |
manual merge 5.0-bugteam --> 5.1-bugteam (bug 40021)
sql_view.cc: required_view_parameters has been decreased by 2
(not by 1) because its value was incorrect: 16 instead of 15
(minor performance issue).
sql/sql_view.cc:
sql_view.cc: required_view_parameters has been decreased by 2
(not by 1) because its value was incorrect: 16 instead of 15
(minor performance issue).
Diffstat (limited to 'sql/parse_file.cc')
-rw-r--r-- | sql/parse_file.cc | 98 |
1 files changed, 4 insertions, 94 deletions
diff --git a/sql/parse_file.cc b/sql/parse_file.cc index d8cbc7ff174..d3ece194dcd 100644 --- a/sql/parse_file.cc +++ b/sql/parse_file.cc @@ -90,7 +90,6 @@ write_escaped_string(IO_CACHE *file, LEX_STRING *val_s) @param file pointer to IO_CACHE structure for writing @param base pointer to data structure @param parameter pointer to parameter descriptor - @param old_version for returning back old version number value @retval FALSE OK @@ -100,8 +99,7 @@ write_escaped_string(IO_CACHE *file, LEX_STRING *val_s) static my_bool -write_parameter(IO_CACHE *file, uchar* base, File_option *parameter, - ulonglong *old_version) +write_parameter(IO_CACHE *file, uchar* base, File_option *parameter) { char num_buf[20]; // buffer for numeric operations // string for numeric operations @@ -129,15 +127,6 @@ write_parameter(IO_CACHE *file, uchar* base, File_option *parameter, DBUG_RETURN(TRUE); break; } - case FILE_OPTIONS_REV: - { - ulonglong *val_i= (ulonglong *)(base + parameter->offset); - *old_version= (*val_i)++; - num.set(*val_i, &my_charset_bin); - if (my_b_append(file, (const uchar *)num.ptr(), num.length())) - DBUG_RETURN(TRUE); - break; - } case FILE_OPTIONS_TIMESTAMP: { /* string have to be allocated already */ @@ -207,7 +196,6 @@ write_parameter(IO_CACHE *file, uchar* base, File_option *parameter, @param base base address for parameter reading (structure like TABLE) @param parameters parameters description - @param max_versions number of versions to save @retval FALSE OK @@ -219,13 +207,11 @@ write_parameter(IO_CACHE *file, uchar* base, File_option *parameter, my_bool sql_create_definition_file(const LEX_STRING *dir, const LEX_STRING *file_name, const LEX_STRING *type, - uchar* base, File_option *parameters, - uint max_versions) + uchar* base, File_option *parameters) { File handler; IO_CACHE file; char path[FN_REFLEN+1]; // +1 to put temporary file name for sure - ulonglong old_version= ULONGLONG_MAX; int path_end; File_option *param; DBUG_ENTER("sql_create_definition_file"); @@ -272,7 +258,7 @@ sql_create_definition_file(const LEX_STRING *dir, const LEX_STRING *file_name, if (my_b_append(&file, (const uchar *)param->name.str, param->name.length) || my_b_append(&file, (const uchar *)STRING_WITH_LEN("=")) || - write_parameter(&file, base, param, &old_version) || + write_parameter(&file, base, param) || my_b_append(&file, (const uchar *)STRING_WITH_LEN("\n"))) goto err_w_cache; } @@ -286,55 +272,6 @@ sql_create_definition_file(const LEX_STRING *dir, const LEX_STRING *file_name, } path[path_end]='\0'; -#ifdef FRM_ARCHIVE - // archive copies management: disabled unused feature (see bug #17823). - if (!access(path, F_OK)) - { - if (old_version != ULONGLONG_MAX && max_versions != 0) - { - // save backup - char path_arc[FN_REFLEN]; - // backup old version - char path_to[FN_REFLEN]; - - // check archive directory existence - fn_format(path_arc, "arc", dir->str, "", MY_UNPACK_FILENAME); - if (access(path_arc, F_OK)) - { - if (my_mkdir(path_arc, 0777, MYF(MY_WME))) - { - DBUG_RETURN(TRUE); - } - } - - my_snprintf(path_to, FN_REFLEN, "%s/%s-%04lu", - path_arc, file_name->str, (ulong) old_version); - if (my_rename(path, path_to, MYF(MY_WME))) - { - DBUG_RETURN(TRUE); - } - - // remove very old version - if (old_version > max_versions) - { - my_snprintf(path_to, FN_REFLEN, "%s/%s-%04lu", - path_arc, file_name->str, - (ulong)(old_version - max_versions)); - if (!access(path_arc, F_OK) && my_delete(path_to, MYF(MY_WME))) - { - DBUG_RETURN(TRUE); - } - } - } - else - { - if (my_delete(path, MYF(MY_WME))) // no backups - { - DBUG_RETURN(TRUE); - } - } - } -#endif//FRM_ARCHIVE { // rename temporary file @@ -361,8 +298,6 @@ err_w_file: @param schema name of given schema @param old_name original file name @param new_name new file name - @param revision revision number - @param num_view_backups number of backups @retval 0 OK @@ -371,8 +306,7 @@ err_w_file: */ my_bool rename_in_schema_file(THD *thd, const char *schema, const char *old_name, - const char *new_name, ulonglong revision, - uint num_view_backups) + const char *new_name) { char old_path[FN_REFLEN], new_path[FN_REFLEN], arc_path[FN_REFLEN]; @@ -387,28 +321,6 @@ my_bool rename_in_schema_file(THD *thd, /* check if arc_dir exists: disabled unused feature (see bug #17823). */ build_table_filename(arc_path, sizeof(arc_path) - 1, schema, "arc", "", 0); -#ifdef FRM_ARCHIVE - if (revision > 0 && !access(arc_path, F_OK)) - { - char old_name_buf[FN_REFLEN], new_name_buf[FN_REFLEN]; - ulonglong limit= ((revision > num_view_backups) ? - revision - num_view_backups : 0); - - VOID(tablename_to_filename(old_name, old_name_buf, sizeof(old_name_buf))); - VOID(tablename_to_filename(new_name, new_name_buf, sizeof(new_name_buf))); - - for (; revision > limit ; revision--) - { - my_snprintf(old_path, FN_REFLEN, "%s/%s%s-%04lu", - arc_path, old_name_buf, reg_ext, (ulong) revision); - (void) unpack_filename(old_path, old_path); - my_snprintf(new_path, FN_REFLEN, "%s/%s%s-%04lu", - arc_path, new_name_buf, reg_ext, (ulong) revision); - (void) unpack_filename(new_path, new_path); - my_rename(old_path, new_path, MYF(0)); - } - } -#else//FRM_ARCHIVE { // remove obsolete 'arc' directory and files if any MY_DIR *new_dirp; if ((new_dirp = my_dir(arc_path, MYF(MY_DONT_SORT)))) @@ -417,7 +329,6 @@ my_bool rename_in_schema_file(THD *thd, (void) mysql_rm_arc_files(thd, new_dirp, arc_path); } } -#endif//FRM_ARCHIVE return 0; } @@ -846,7 +757,6 @@ File_parser::parse(uchar* base, MEM_ROOT *mem_root, break; } case FILE_OPTIONS_ULONGLONG: - case FILE_OPTIONS_REV: if (!(eol= strchr(ptr, '\n'))) { my_error(ER_FPARSER_ERROR_IN_PARAMETER, MYF(0), |