diff options
author | a-romanov <Anton.Romanov@ydb.tech> | 2023-04-05 17:06:53 +0300 |
---|---|---|
committer | a-romanov <Anton.Romanov@ydb.tech> | 2023-04-05 17:06:53 +0300 |
commit | ee97871cc4cea65efe6f12af3599773ed6a7833a (patch) | |
tree | ec4d766507575509faff348bba35fa5bddf5bd56 | |
parent | 0cd25c0602c477754d77ad095746c3e141179dde (diff) | |
download | ydb-ee97871cc4cea65efe6f12af3599773ed6a7833a.tar.gz |
YQL-15833 Hotfix keep sorted constraint.
-rw-r--r-- | ydb/library/yql/core/common_opt/yql_co_simple1.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/ydb/library/yql/core/common_opt/yql_co_simple1.cpp b/ydb/library/yql/core/common_opt/yql_co_simple1.cpp index 0427378479..dbc02b6531 100644 --- a/ydb/library/yql/core/common_opt/yql_co_simple1.cpp +++ b/ydb/library/yql/core/common_opt/yql_co_simple1.cpp @@ -110,6 +110,8 @@ TExprNode::TPtr KeepSortedConstraint(TExprNode::TPtr node, const TSortedConstrai parent.Callable(index++, "Bool") .Atom(0, ToString(c.second), TNodeFlags::Default) .Seal(); + if (1U < c.first.front().size()) + break; } return parent; }) @@ -122,12 +124,14 @@ TExprNode::TPtr KeepSortedConstraint(TExprNode::TPtr node, const TSortedConstrai for (auto c : constent) { if (c.first.front().empty()) parent.Arg(index++, "item"); - else { - YQL_ENSURE(c.first.front().size() == 1U, "Just column expected."); + else if (1U == c.first.front().size()) { parent.Callable(index++, "Member") .Arg(0, "item") .Atom(1, c.first.front().front()) .Seal(); + } else { + parent.Callable(index++, "Null").Seal(); + break; } } return parent; |