mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-15626 Assertion on update virtual column in partitioned table
table.cc: virtual columns must be computed for INSERT, if they're part of the partitioning expression. this change broke gcol.gcol_partition_innodb. fix CHECK TABLE for partitioned tables and vcols. sql_partition.cc: mark prerequisite base columns in full_part_field_set ha_partition.cc initialize vcol_set accordingly
This commit is contained in:
@ -614,9 +614,16 @@ static bool create_full_part_field_array(THD *thd, TABLE *table,
|
||||
full_part_field_array may be NULL if storage engine supports native
|
||||
partitioning.
|
||||
*/
|
||||
table->vcol_set= table->read_set= &part_info->full_part_field_set;
|
||||
if ((ptr= part_info->full_part_field_array))
|
||||
for (; *ptr; ptr++)
|
||||
bitmap_set_bit(&part_info->full_part_field_set, (*ptr)->field_index);
|
||||
{
|
||||
if ((*ptr)->vcol_info)
|
||||
table->mark_virtual_col(*ptr);
|
||||
else
|
||||
bitmap_fast_test_and_set(table->read_set, (*ptr)->field_index);
|
||||
}
|
||||
table->default_column_bitmaps();
|
||||
|
||||
end:
|
||||
DBUG_RETURN(result);
|
||||
|
Reference in New Issue
Block a user