diff options
author | a-romanov <Anton.Romanov@ydb.tech> | 2023-05-23 17:02:32 +0300 |
---|---|---|
committer | a-romanov <Anton.Romanov@ydb.tech> | 2023-05-23 17:02:32 +0300 |
commit | edc61279de69023329a1f01c7e8b7f87d0f9ceab (patch) | |
tree | a97280535c2fe9aa825181f7065e0b2a11007ed3 | |
parent | edfe827eb58d02b8300f4f1bb98cb62dba28cf31 (diff) | |
download | ydb-edc61279de69023329a1f01c7e8b7f87d0f9ceab.tar.gz |
YQL-8971 YQL-15555 Disable constraints for flatten EquiJoin.
Этот флажок используется только nile а наш sql транслятор его не порождает.
И он сразу безусловно убирается оптимизатором в co_simple
Так что проще чуть отложить вычисление констрейтов, чем специально под этот флажок нетривиально приседать.
-rw-r--r-- | ydb/library/yql/core/yql_expr_constraint.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/ydb/library/yql/core/yql_expr_constraint.cpp b/ydb/library/yql/core/yql_expr_constraint.cpp index f94333de64..56cb063437 100644 --- a/ydb/library/yql/core/yql_expr_constraint.cpp +++ b/ydb/library/yql/core/yql_expr_constraint.cpp @@ -2277,6 +2277,11 @@ private: } } + TJoinOptions options; + if (const auto status = ValidateEquiJoinOptions(input->Pos(), input->Tail(), options, ctx); status != IGraphTransformer::TStatus::Ok || options.Flatten) { + return status; + } + const TUniqueConstraintNode* unique = nullptr; const TDistinctConstraintNode* distinct = nullptr; if (const auto status = EquiJoinConstraints(input->Pos(), unique, distinct, labels, *joinTree, ctx); status != IGraphTransformer::TStatus::Ok) { |