Fix double destroy call on exception throw in addBatchLookupTable8

This commit is contained in:
Raúl Marín 2024-01-12 12:02:38 +01:00
parent 4cacfa6b43
commit e22371ad03
3 changed files with 4 additions and 1 deletions

View File

@ -1204,8 +1204,9 @@ void NO_INLINE Aggregator::executeImplBatch(
inst->state_offset,
[&](AggregateDataPtr & aggregate_data)
{
aggregate_data = aggregates_pool->alignedAlloc(total_size_of_aggregate_states, align_aggregate_states);
AggregateDataPtr place = aggregates_pool->alignedAlloc(total_size_of_aggregate_states, align_aggregate_states);
createAggregateStates(aggregate_data);
aggregate_data = place;
},
state.getKeyData(),
inst->batch_arguments,

View File

@ -0,0 +1,2 @@
-- https://github.com/ClickHouse/ClickHouse/issues/58727
SELECT number % 2 AS even, aggThrow(number) FROM numbers(10) GROUP BY even; -- { serverError AGGREGATE_FUNCTION_THROW}