From e1093e2464c253dbd3b96da60502a37035d42c69 Mon Sep 17 00:00:00 2001 From: Sergei Golubchik Date: Tue, 27 Jun 2017 20:47:46 +0200 Subject: [PATCH] cleanup: part_func_string and subpart_func_string Remove now-unused part_func_string and subpart_func_string from partition_info. --- sql/partition_info.cc | 4 ---- sql/partition_info.h | 7 ------- sql/sql_partition.cc | 33 --------------------------------- 3 files changed, 44 deletions(-) diff --git a/sql/partition_info.cc b/sql/partition_info.cc index b2588c375e5..2bf130fbf81 100644 --- a/sql/partition_info.cc +++ b/sql/partition_info.cc @@ -1683,15 +1683,11 @@ bool partition_info::set_part_expr(THD *thd, char *start_token, Item *item_ptr, { list_of_subpart_fields= FALSE; subpart_expr= item_ptr; - subpart_func_string= func_string; - subpart_func_len= expr_len; } else { list_of_part_fields= FALSE; part_expr= item_ptr; - part_func_string= func_string; - part_func_len= expr_len; } return FALSE; } diff --git a/sql/partition_info.h b/sql/partition_info.h index d4c180ddcdd..8ff7977373b 100644 --- a/sql/partition_info.h +++ b/sql/partition_info.h @@ -165,9 +165,6 @@ public: longlong err_value; char* part_info_string; - char *part_func_string; - char *subpart_func_string; - partition_element *curr_part_elem; // part or sub part partition_element *current_partition; // partition part_elem_value *curr_list_val; @@ -188,8 +185,6 @@ public: partition_type subpart_type; uint part_info_len; - uint part_func_len; - uint subpart_func_len; uint num_parts; uint num_subparts; @@ -257,13 +252,11 @@ public: bitmaps_are_initialized(FALSE), list_array(NULL), err_value(0), part_info_string(NULL), - part_func_string(NULL), subpart_func_string(NULL), curr_part_elem(NULL), current_partition(NULL), curr_list_object(0), num_columns(0), table(NULL), default_engine_type(NULL), part_type(NOT_A_PARTITION), subpart_type(NOT_A_PARTITION), part_info_len(0), - part_func_len(0), subpart_func_len(0), num_parts(0), num_subparts(0), count_curr_subparts(0), num_list_values(0), num_part_fields(0), num_subpart_fields(0), diff --git a/sql/sql_partition.cc b/sql/sql_partition.cc index 22fa4242ad8..561ef91be4a 100644 --- a/sql/sql_partition.cc +++ b/sql/sql_partition.cc @@ -4110,39 +4110,6 @@ bool mysql_unpack_partition(THD *thd, DBUG_ASSERT(part_info->default_engine_type == default_db_type); DBUG_ASSERT(part_info->default_engine_type->db_type != DB_TYPE_UNKNOWN); DBUG_ASSERT(part_info->default_engine_type != partition_hton); - - { - /* - This code part allocates memory for the serialised item information for - the partition functions. In most cases this is not needed but if the - table is used for SHOW CREATE TABLES or ALTER TABLE that modifies - partition information it is needed and the info is lost if we don't - save it here so unfortunately we have to do it here even if in most - cases it is not needed. This is a consequence of that item trees are - not serialisable. - */ - uint part_func_len= part_info->part_func_len; - uint subpart_func_len= part_info->subpart_func_len; - char *part_func_string= NULL; - char *subpart_func_string= NULL; - if ((part_func_len && - !((part_func_string= (char*) thd->alloc(part_func_len)))) || - (subpart_func_len && - !((subpart_func_string= (char*) thd->alloc(subpart_func_len))))) - { - mem_alloc_error(part_func_len); - thd->free_items(); - goto end; - } - if (part_func_len) - memcpy(part_func_string, part_info->part_func_string, part_func_len); - if (subpart_func_len) - memcpy(subpart_func_string, part_info->subpart_func_string, - subpart_func_len); - part_info->part_func_string= part_func_string; - part_info->subpart_func_string= subpart_func_string; - } - result= FALSE; end: end_lex_with_single_table(thd, table, old_lex);