diff options
author | uzhas <uzhas@ydb.tech> | 2023-03-09 11:30:38 +0300 |
---|---|---|
committer | uzhas <uzhas@ydb.tech> | 2023-03-09 11:30:38 +0300 |
commit | 9070418e6da5d6031fed22ea2bd425bc4e948311 (patch) | |
tree | 8050c1d5fbfb007a951289614999dc315c5d883f | |
parent | f9027a68c7299e928dd71fadad4556f89650e3aa (diff) | |
download | ydb-9070418e6da5d6031fed22ea2bd425bc4e948311.tar.gz |
use Temporary pool in tmp vars
-rw-r--r-- | ydb/library/yql/minikql/comp_nodes/mkql_grace_join_imp.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/ydb/library/yql/minikql/comp_nodes/mkql_grace_join_imp.cpp b/ydb/library/yql/minikql/comp_nodes/mkql_grace_join_imp.cpp index 086c265596..5a5274aa14 100644 --- a/ydb/library/yql/minikql/comp_nodes/mkql_grace_join_imp.cpp +++ b/ydb/library/yql/minikql/comp_nodes/mkql_grace_join_imp.cpp @@ -251,14 +251,14 @@ void TTable::Join( TTable & t1, TTable & t2, EJoinKind joinKind ) { ui64 tuplesFound = 0; - std::vector<ui64, TMKQLAllocator<ui64>> joinSlots, spillSlots, slotToIdx; - std::vector<ui32, TMKQLAllocator<ui32>> stringsOffsets1, stringsOffsets2; + std::vector<ui64, TMKQLAllocator<ui64, EMemorySubPool::Temporary>> joinSlots, spillSlots, slotToIdx; + std::vector<ui32, TMKQLAllocator<ui32, EMemorySubPool::Temporary>> stringsOffsets1, stringsOffsets2; ui64 reservedSize = 6 * (DefaultTupleBytes * DefaultTuplesNum) / sizeof(ui64); joinSlots.reserve( reservedSize ); spillSlots.reserve( reservedSize ); stringsOffsets1.reserve(JoinTable1->NumberOfStringColumns + JoinTable1->NumberOfIColumns + 1); stringsOffsets2.reserve(JoinTable2->NumberOfStringColumns + JoinTable2->NumberOfIColumns + 1); - std::vector<JoinTuplesIds, TMKQLAllocator<JoinTuplesIds>> joinResults; + std::vector<JoinTuplesIds, TMKQLAllocator<JoinTuplesIds, EMemorySubPool::Temporary>> joinResults; for (ui64 bucket = 0; bucket < NumberOfBuckets; bucket++) { @@ -457,7 +457,7 @@ void TTable::Join( TTable & t1, TTable & t2, EJoinKind joinKind ) { }); - TableBuckets[bucket].JoinIds = std::move(joinResults); + TableBuckets[bucket].JoinIds.assign(joinResults.begin(), joinResults.end()); if ( JoinKind == EJoinKind::Full || JoinKind == EJoinKind::Exclusion ) { std::vector<ui32, TMKQLAllocator<ui32>> & rightIds = TableBuckets[bucket].RightIds; std::vector<JoinTuplesIds, TMKQLAllocator<JoinTuplesIds>> & joinIds = TableBuckets[bucket].JoinIds; |