aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/minikql/mkql_program_builder.h
diff options
context:
space:
mode:
authoraneporada <aneporada@yandex-team.com>2024-11-12 14:35:35 +0300
committeraneporada <aneporada@yandex-team.com>2024-11-12 14:49:16 +0300
commit0f8074b32931e95bc77e99fc0cc06079449a2f03 (patch)
treeaddc4b14e22412b769270d75018927719ee8e564 /yql/essentials/minikql/mkql_program_builder.h
parent39b2d17a032a25ea4334f40208471552f1e3561b (diff)
downloadydb-0f8074b32931e95bc77e99fc0cc06079449a2f03.tar.gz
Merge PR #10707: Fixed: Make block combine use stream instead of flow
commit_hash:946462d1ea7e74758c7d6f86cc30cd674dc2195e
Diffstat (limited to 'yql/essentials/minikql/mkql_program_builder.h')
-rw-r--r--yql/essentials/minikql/mkql_program_builder.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/yql/essentials/minikql/mkql_program_builder.h b/yql/essentials/minikql/mkql_program_builder.h
index eca10da928..7e139cd1a9 100644
--- a/yql/essentials/minikql/mkql_program_builder.h
+++ b/yql/essentials/minikql/mkql_program_builder.h
@@ -760,6 +760,15 @@ protected:
private:
TRuntimeNode BuildWideFilter(const std::string_view& callableName, TRuntimeNode flow, const TNarrowLambda& handler);
+ TRuntimeNode BuildBlockCombineAll(const std::string_view& callableName, TRuntimeNode input, std::optional<ui32> filterColumn,
+ const TArrayRef<const TAggInfo>& aggs, TType* returnType);
+ TRuntimeNode BuildBlockCombineHashed(const std::string_view& callableName, TRuntimeNode input, std::optional<ui32> filterColumn,
+ const TArrayRef<ui32>& keys, const TArrayRef<const TAggInfo>& aggs, TType* returnType);
+ TRuntimeNode BuildBlockMergeFinalizeHashed(const std::string_view& callableName, TRuntimeNode input, const TArrayRef<ui32>& keys,
+ const TArrayRef<const TAggInfo>& aggs, TType* returnType);
+ TRuntimeNode BuildBlockMergeManyFinalizeHashed(const std::string_view& callableName, TRuntimeNode input, const TArrayRef<ui32>& keys,
+ const TArrayRef<const TAggInfo>& aggs, ui32 streamIndex, const TVector<TVector<ui32>>& streams, TType* returnType);
+
TRuntimeNode DictItems(TRuntimeNode dict, EDictItems mode);
TRuntimeNode If(TRuntimeNode condition, TRuntimeNode thenBranch, TRuntimeNode elseBranch, TType* resultType);