diff options
author | a-romanov <Anton.Romanov@ydb.tech> | 2023-04-27 13:17:33 +0300 |
---|---|---|
committer | a-romanov <Anton.Romanov@ydb.tech> | 2023-04-27 13:17:33 +0300 |
commit | 1b3f4cc97b6774c43015a249569df23fbe1424ab (patch) | |
tree | 0f9e89ba447471981801c1ca73390ab778b0f2fe | |
parent | 6a5d9984d973925b6781d84444f23b86ba829591 (diff) | |
download | ydb-1b3f4cc97b6774c43015a249569df23fbe1424ab.tar.gz |
YQL-15555 YQL-15435 Fix constraints for DictItems.
-rw-r--r-- | ydb/library/yql/core/yql_expr_constraint.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/ydb/library/yql/core/yql_expr_constraint.cpp b/ydb/library/yql/core/yql_expr_constraint.cpp index 2bbb590404c..5302afd9b20 100644 --- a/ydb/library/yql/core/yql_expr_constraint.cpp +++ b/ydb/library/yql/core/yql_expr_constraint.cpp @@ -174,9 +174,6 @@ public: Functions["Dict"] = &TCallableConstraintTransformer::DictWrap; Functions["EmptyList"] = &TCallableConstraintTransformer::FromEmpty; Functions["EmptyDict"] = &TCallableConstraintTransformer::FromEmpty; - Functions["DictItems"] = &TCallableConstraintTransformer::FromFirst<TEmptyConstraintNode>; - Functions["DictKeys"] = &TCallableConstraintTransformer::FromFirst<TEmptyConstraintNode>; - Functions["DictPayloads"] = &TCallableConstraintTransformer::FromFirst<TEmptyConstraintNode>; Functions["DictFromKeys"] = &TCallableConstraintTransformer::DictFromKeysWrap; Functions["If"] = &TCallableConstraintTransformer::IfWrap; Functions["Nothing"] = &TCallableConstraintTransformer::FromEmpty; @@ -200,7 +197,7 @@ public: Functions["GraceJoinCore"] = &TCallableConstraintTransformer::GraceJoinCoreWrap; Functions["CommonJoinCore"] = &TCallableConstraintTransformer::FromFirst<TEmptyConstraintNode>; Functions["ToDict"] = &TCallableConstraintTransformer::ToDictWrap; - Functions["DictItems"] = &TCallableConstraintTransformer::FromFirst<TPassthroughConstraintNode, TUniqueConstraintNode, TDistinctConstraintNode, TEmptyConstraintNode>; + Functions["DictItems"] = &TCallableConstraintTransformer::FromFirst<TPassthroughConstraintNode, TUniqueConstraintNode, TPartOfUniqueConstraintNode, TDistinctConstraintNode, TPartOfDistinctConstraintNode, TEmptyConstraintNode>; Functions["DictKeys"] = &TCallableConstraintTransformer::DictHalfWrap<true>; Functions["DictPayloads"] = &TCallableConstraintTransformer::DictHalfWrap<false>; Functions["Chain1Map"] = &TCallableConstraintTransformer::Chain1MapWrap<false>; @@ -2913,6 +2910,8 @@ private: input->AddConstraint(extracted); ReduceFromHead<TUniqueConstraintNode>(input, reduce, ctx); ReduceFromHead<TDistinctConstraintNode>(input, reduce, ctx); + ReduceFromHead<TPartOfUniqueConstraintNode>(input, reduce, ctx); + ReduceFromHead<TPartOfDistinctConstraintNode>(input, reduce, ctx); return FromFirst<TEmptyConstraintNode>(input, output, ctx); } |