mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-20 16:50:48 +00:00
some clean up
This commit is contained in:
parent
32050acde5
commit
86fda9bd22
@ -42,10 +42,6 @@ MergeTreeWhereOptimizer::MergeTreeWhereOptimizer(
|
|||||||
, log{log_}
|
, log{log_}
|
||||||
, column_sizes{std::move(column_sizes_)}
|
, column_sizes{std::move(column_sizes_)}
|
||||||
{
|
{
|
||||||
const auto & primary_key = metadata_snapshot->getPrimaryKey();
|
|
||||||
if (!primary_key.column_names.empty())
|
|
||||||
first_primary_key_column = primary_key.column_names[0];
|
|
||||||
|
|
||||||
for (const auto & name : queried_columns)
|
for (const auto & name : queried_columns)
|
||||||
{
|
{
|
||||||
auto it = column_sizes.find(name);
|
auto it = column_sizes.find(name);
|
||||||
@ -193,7 +189,8 @@ void MergeTreeWhereOptimizer::analyzeImpl(Conditions & res, const ASTPtr & node,
|
|||||||
/// Condition depend on some column. Constant expressions are not moved.
|
/// Condition depend on some column. Constant expressions are not moved.
|
||||||
!cond.identifiers.empty()
|
!cond.identifiers.empty()
|
||||||
&& !cannotBeMoved(node, is_final)
|
&& !cannotBeMoved(node, is_final)
|
||||||
/// when use final, do not take into consideration the conditions consisting of column that not belong to the sorting key columns
|
/// When use final, do not take into consideration the conditions with non-sorting keys. Because final select
|
||||||
|
/// need to use all sorting keys, it will cause correctness issues if we filter other columns before final merge.
|
||||||
&& (!is_final || isExpressionOverSortingKey(node))
|
&& (!is_final || isExpressionOverSortingKey(node))
|
||||||
/// Only table columns are considered. Not array joined columns. NOTE We're assuming that aliases was expanded.
|
/// Only table columns are considered. Not array joined columns. NOTE We're assuming that aliases was expanded.
|
||||||
&& isSubsetOfTableColumns(cond.identifiers)
|
&& isSubsetOfTableColumns(cond.identifiers)
|
||||||
|
Loading…
Reference in New Issue
Block a user