BUG#20770: DATA DIRECTORY and INDEX DIRECTORY error when ALTER TABLE ADD/DROP/REORGANIZE partition

Also some error in handling options for subpartitions.


mysql-test/r/partition.result:
  New test cases
mysql-test/t/partition.test:
  New test cases
sql/ha_partition.cc:
  Added partition_element to prepare_new_partition so that we can properly set-up table
  before creating partitions.
sql/ha_partition.h:
  Added partition_element to prepare_new_partition so that we can properly set-up table
  before creating partitions.
sql/sql_yacc.yy:
  Ensure that subpartitions always inherit options from the partition they belong to.
  They can change it afterwards but will use the options as set on partition level
  if set at that level.
This commit is contained in:
unknown 2006-07-05 12:57:23 -04:00
commit 43179555d9
5 changed files with 106 additions and 14 deletions

View file

@ -202,7 +202,8 @@ private:
int copy_partitions(ulonglong *copied, ulonglong *deleted);
void cleanup_new_partition(uint part_count);
int prepare_new_partition(TABLE *table, HA_CREATE_INFO *create_info,
handler *file, const char *part_name);
handler *file, const char *part_name,
partition_element *p_elem);
/*
delete_table, rename_table and create uses very similar logic which
is packed into this routine.
@ -222,7 +223,8 @@ private:
void set_up_table_before_create(TABLE *table_arg,
const char *partition_name_with_path,
HA_CREATE_INFO *info,
uint part_id);
uint part_id,
partition_element *p_elem);
partition_element *find_partition_element(uint part_id);
public: