diff options
author | ivanmorozov <ivanmorozov@yandex-team.com> | 2023-07-07 15:16:33 +0300 |
---|---|---|
committer | ivanmorozov <ivanmorozov@yandex-team.com> | 2023-07-07 15:16:33 +0300 |
commit | db453fcee2d1a458593a85c47365b9d348c0cd5c (patch) | |
tree | 7cf904edee7279a0d8752c198c8d88069002e15d | |
parent | d98fff2514e4da4570f8bd0b381176c6ddc5cbf3 (diff) | |
download | ydb-db453fcee2d1a458593a85c47365b9d348c0cd5c.tar.gz |
KIKIMR-18290:correct memory usage on CS scan
-rw-r--r-- | ydb/core/tx/columnshard/engines/reader/read_filter_merger.cpp | 3 | ||||
-rw-r--r-- | ydb/core/tx/columnshard/engines/reader/read_filter_merger.h | 1 |
2 files changed, 1 insertions, 3 deletions
diff --git a/ydb/core/tx/columnshard/engines/reader/read_filter_merger.cpp b/ydb/core/tx/columnshard/engines/reader/read_filter_merger.cpp index 149557c4f35..ea90df604c1 100644 --- a/ydb/core/tx/columnshard/engines/reader/read_filter_merger.cpp +++ b/ydb/core/tx/columnshard/engines/reader/read_filter_merger.cpp @@ -41,12 +41,11 @@ void TMergePartialStream::PutControlPoint(std::shared_ptr<TSortableBatchPosition } void TMergePartialStream::AddPoolSource(const std::optional<ui32> poolId, std::shared_ptr<arrow::RecordBatch> batch, std::shared_ptr<NArrow::TColumnFilter> filter) { - if (!batch || !batch->num_rows()) { + if (!batch || !batch->num_rows() || (filter && filter->IsTotalDenyFilter())) { return; } Y_VERIFY_DEBUG(NArrow::IsSorted(batch, SortSchema)); if (!poolId) { - IndependentBatches.emplace_back(batch); AddNewToHeap(poolId, batch, filter, true); } else { auto it = BatchPools.find(*poolId); diff --git a/ydb/core/tx/columnshard/engines/reader/read_filter_merger.h b/ydb/core/tx/columnshard/engines/reader/read_filter_merger.h index f0e4fcd7e66..e0c2ba29250 100644 --- a/ydb/core/tx/columnshard/engines/reader/read_filter_merger.h +++ b/ydb/core/tx/columnshard/engines/reader/read_filter_merger.h @@ -255,7 +255,6 @@ private: } THashMap<ui32, std::deque<TIteratorData>> BatchPools; - std::vector<std::shared_ptr<arrow::RecordBatch>> IndependentBatches; std::vector<TBatchIterator> SortHeap; std::shared_ptr<arrow::Schema> SortSchema; const bool Reverse; |