1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

MDEV-18501 Partition pruning doesn't work for historical queries (refactoring)

SYSTEM_TYPE partitioning: COLUMN properties removed. Partitioning is
now pure RANGE based on UNIX_TIMESTAMP(row_end).

DECIMAL type is now allowed as RANGE partitioning, we can partition by
UNIX_TIMESTAMP() (but not for DATETIME which depends on local timezone
of course).
This commit is contained in:
Aleksey Midenkov
2019-08-28 11:57:16 +03:00
parent a3e49c0d36
commit c3f35ea55a
7 changed files with 83 additions and 40 deletions

View File

@ -8168,7 +8168,7 @@ bool LEX::part_values_current(THD *thd)
create_last_non_select_table->table_name.str);
return true;
}
elem->type(partition_element::CURRENT);
elem->type= partition_element::CURRENT;
DBUG_ASSERT(part_info->vers_info);
part_info->vers_info->now_part= elem;
if (unlikely(part_info->init_column_part(thd)))
@ -8202,7 +8202,7 @@ bool LEX::part_values_history(THD *thd)
create_last_non_select_table->table_name.str);
return true;
}
elem->type(partition_element::HISTORY);
elem->type= partition_element::HISTORY;
if (unlikely(part_info->init_column_part(thd)))
return true;
return false;