mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
Merge 10.2 into 10.3
This commit is contained in:
@ -5985,6 +5985,28 @@ the generated partition syntax in a correct manner.
|
||||
*partition_changed= TRUE;
|
||||
}
|
||||
}
|
||||
/*
|
||||
Prohibit inplace when partitioned by primary key and the primary key is dropped.
|
||||
*/
|
||||
if (!*partition_changed &&
|
||||
tab_part_info->part_field_array &&
|
||||
!tab_part_info->part_field_list.elements &&
|
||||
table->s->primary_key != MAX_KEY)
|
||||
{
|
||||
KEY *primary_key= table->key_info + table->s->primary_key;
|
||||
List_iterator_fast<Alter_drop> drop_it(alter_info->drop_list);
|
||||
const char *primary_name= primary_key->name.str;
|
||||
const Alter_drop *drop;
|
||||
drop_it.rewind();
|
||||
while ((drop= drop_it++))
|
||||
{
|
||||
if (drop->type == Alter_drop::KEY &&
|
||||
0 == my_strcasecmp(system_charset_info, primary_name, drop->name))
|
||||
break;
|
||||
}
|
||||
if (drop)
|
||||
*partition_changed= TRUE;
|
||||
}
|
||||
}
|
||||
if (thd->work_part_info)
|
||||
{
|
||||
|
Reference in New Issue
Block a user