From a3170bf6b3dbabcc0c8063b24c2d20ba66ec2125 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 27 May 2006 17:36:45 -0400 Subject: BUG#19695: Showed partition options when table options were not shown mysql-test/r/ndb_partition_key.result: Manicural changes removed a space from a double-space mysql-test/r/partition.result: Manicural changes removed a space from a double-space Added new test case mysql-test/r/partition_02myisam.result: Manicural changes removed a space from a double-space mysql-test/r/partition_range.result: Manicural changes removed a space from a double-space mysql-test/t/partition.test: New test case sql/sql_partition.cc: Removed unnecessary extra spaces Added show_partition_options set in the same way as when to show table options in SHOW CREATE TABLE sql/sql_partition.h: Removed unnecessary extra spaces Added show_partition_options set in the same way as when to show table options in SHOW CREATE TABLE sql/sql_show.cc: Removed unnecessary extra spaces Added show_partition_options set in the same way as when to show table options in SHOW CREATE TABLE sql/sql_table.cc: Removed unnecessary extra spaces Added show_partition_options set in the same way as when to show table options in SHOW CREATE TABLE --- sql/sql_partition.cc | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'sql/sql_partition.cc') diff --git a/sql/sql_partition.cc b/sql/sql_partition.cc index 71b8e9b1d95..f4aa1736c40 100644 --- a/sql/sql_partition.cc +++ b/sql/sql_partition.cc @@ -1675,6 +1675,7 @@ static int add_partition_options(File fptr, partition_element *p_elem) { int err= 0; + err+= add_space(fptr); if (p_elem->tablespace_name) err+= add_keyword_string(fptr,"TABLESPACE", FALSE, p_elem->tablespace_name); @@ -1702,7 +1703,7 @@ static int add_partition_values(File fptr, partition_info *part_info, if (part_info->part_type == RANGE_PARTITION) { - err+= add_string(fptr, "VALUES LESS THAN "); + err+= add_string(fptr, " VALUES LESS THAN "); if (p_elem->range_value != LONGLONG_MAX) { err+= add_begin_parenthesis(fptr); @@ -1716,7 +1717,7 @@ static int add_partition_values(File fptr, partition_info *part_info, { uint i; List_iterator list_val_it(p_elem->list_val_list); - err+= add_string(fptr, "VALUES IN "); + err+= add_string(fptr, " VALUES IN "); uint no_items= p_elem->list_val_list.elements; err+= add_begin_parenthesis(fptr); if (p_elem->has_null_value) @@ -1740,7 +1741,7 @@ static int add_partition_values(File fptr, partition_info *part_info, err+= add_end_parenthesis(fptr); } end: - return err + add_space(fptr); + return err; } /* @@ -1755,6 +1756,7 @@ end: use_sql_alloc Allocate buffer from sql_alloc if true otherwise use my_malloc write_all Write everything, also default values + show_partition_options Should we display partition options RETURN VALUES NULL error @@ -1783,7 +1785,8 @@ end: char *generate_partition_syntax(partition_info *part_info, uint *buf_length, bool use_sql_alloc, - bool write_all) + bool write_all, + bool show_partition_options) { uint i,j, tot_no_parts, no_subparts, no_parts; partition_element *part_elem; @@ -1882,9 +1885,8 @@ char *generate_partition_syntax(partition_info *part_info, first= FALSE; err+= add_partition(fptr); err+= add_name_string(fptr, part_elem->partition_name); - err+= add_space(fptr); err+= add_partition_values(fptr, part_info, part_elem); - if (!part_info->is_sub_partitioned()) + if (!part_info->is_sub_partitioned() && show_partition_options) err+= add_partition_options(fptr, part_elem); if (part_info->is_sub_partitioned() && (write_all || (!part_info->use_default_subpartitions))) @@ -1898,8 +1900,8 @@ char *generate_partition_syntax(partition_info *part_info, part_elem= sub_it++; err+= add_subpartition(fptr); err+= add_name_string(fptr, part_elem->partition_name); - err+= add_space(fptr); - err+= add_partition_options(fptr, part_elem); + if (show_partition_options) + err+= add_partition_options(fptr, part_elem); if (j != (no_subparts-1)) { err+= add_comma(fptr); -- cgit v1.2.1