mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-20 16:50:48 +00:00
Style #2948
This commit is contained in:
parent
0ca8e20e66
commit
9df01c1012
@ -24,7 +24,7 @@ static void finalize(Block & block)
|
||||
}
|
||||
|
||||
RollupBlockInputStream::RollupBlockInputStream(
|
||||
const BlockInputStreamPtr & input_, const Aggregator::Params & params_) : aggregator(params_),
|
||||
const BlockInputStreamPtr & input_, const Aggregator::Params & params_) : aggregator(params_),
|
||||
keys(params_.keys)
|
||||
{
|
||||
children.push_back(input_);
|
||||
@ -47,7 +47,7 @@ Block RollupBlockInputStream::readImpl()
|
||||
* we will subsequently roll it up on next iterations of 'readImpl'
|
||||
* by zeroing out every column one-by-one and re-merging a block.
|
||||
*/
|
||||
|
||||
|
||||
if (current_key >= 0)
|
||||
{
|
||||
auto & current = rollup_block.getByPosition(keys[current_key]);
|
||||
|
@ -18,6 +18,7 @@
|
||||
#include <Core/AccurateComparison.h>
|
||||
#include <Common/FieldVisitors.h>
|
||||
#include <Common/typeid_cast.h>
|
||||
#include <Common/Arena.h>
|
||||
#include <IO/WriteHelpers.h>
|
||||
#include <Interpreters/ExpressionActions.h>
|
||||
#include <ext/range.h>
|
||||
@ -1209,7 +1210,7 @@ public:
|
||||
{
|
||||
if constexpr (!std::is_same_v<Op<UInt8, UInt8>, MultiplyImpl<UInt8, UInt8>>)
|
||||
return false;
|
||||
auto is_uint_type = [](const DataTypePtr & type)
|
||||
auto is_uint_type = [](const DataTypePtr & type)
|
||||
{
|
||||
return checkDataType<DataTypeUInt8>(type.get()) || checkDataType<DataTypeUInt16>(type.get())
|
||||
|| checkDataType<DataTypeUInt32>(type.get()) || checkDataType<DataTypeUInt64>(type.get());
|
||||
@ -1226,14 +1227,14 @@ public:
|
||||
ColumnNumbers new_arguments = arguments;
|
||||
if (checkDataType<DataTypeAggregateFunction>(block.getByPosition(new_arguments[1]).type.get()))
|
||||
std::swap(new_arguments[0], new_arguments[1]);
|
||||
|
||||
|
||||
const ColumnAggregateFunction * column = typeid_cast<const ColumnAggregateFunction *>(block.getByPosition(new_arguments[0]).column.get());
|
||||
IAggregateFunction * function = column->getAggregateFunction().get();
|
||||
|
||||
auto arena = std::make_shared<Arena>();
|
||||
|
||||
auto column_to = ColumnAggregateFunction::create(column->getAggregateFunction(), Arenas(1, arena));
|
||||
column_to->reserve(input_rows_count);
|
||||
column_to->reserve(input_rows_count);
|
||||
|
||||
auto column_from = ColumnAggregateFunction::create(column->getAggregateFunction(), Arenas(1, arena));
|
||||
column_from->reserve(input_rows_count);
|
||||
@ -1266,7 +1267,7 @@ public:
|
||||
m /= 2;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
block.getByPosition(result).column = std::move(column_to);
|
||||
return;
|
||||
}
|
||||
|
@ -539,7 +539,7 @@ void InterpreterSelectQuery::executeImpl(Pipeline & pipeline, const BlockInputSt
|
||||
{
|
||||
if (query.group_by_with_totals)
|
||||
executeTotalsAndHaving(pipeline, expressions.has_having, expressions.before_having, aggregate_overflow_row, !query.group_by_with_rollup);
|
||||
|
||||
|
||||
if (query.group_by_with_rollup)
|
||||
executeRollup(pipeline);
|
||||
}
|
||||
@ -1079,9 +1079,9 @@ void InterpreterSelectQuery::executeRollup(Pipeline & pipeline)
|
||||
|
||||
for (const auto & name : key_names)
|
||||
keys.push_back(header.getPositionByName(name));
|
||||
|
||||
|
||||
const Settings & settings = context.getSettingsRef();
|
||||
|
||||
|
||||
Aggregator::Params params(header, keys, aggregates,
|
||||
false, settings.max_rows_to_group_by, settings.group_by_overflow_mode,
|
||||
settings.compile ? &context.getCompiler() : nullptr, settings.min_count_to_compile,
|
||||
|
Loading…
Reference in New Issue
Block a user