diff options
author | hrustyashko <hrustyashko@yandex-team.ru> | 2022-05-04 18:26:16 +0300 |
---|---|---|
committer | hrustyashko <hrustyashko@yandex-team.ru> | 2022-05-04 18:26:16 +0300 |
commit | 124c6602899438d98dc13575654d8caaa80033cb (patch) | |
tree | 603cef1fcca3f64e4db6da996bbef284c0611fb5 | |
parent | 8383231f7aa2bbadb8f73e67dcc49344febd216e (diff) | |
download | ydb-124c6602899438d98dc13575654d8caaa80033cb.tar.gz |
check transform's result is list
ref:5f30e8d459fef74174022c2c72addf2e01d31d4a
-rw-r--r-- | ydb/library/yql/dq/type_ann/dq_type_ann.cpp | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/ydb/library/yql/dq/type_ann/dq_type_ann.cpp b/ydb/library/yql/dq/type_ann/dq_type_ann.cpp index 78db19b894..072aa7af62 100644 --- a/ydb/library/yql/dq/type_ann/dq_type_ann.cpp +++ b/ydb/library/yql/dq/type_ann/dq_type_ann.cpp @@ -204,18 +204,9 @@ TStatus AnnotateStage(const TExprNode::TPtr& stage, TExprContext& ctx) { } else { for (auto transform : transforms) { auto* type = transform->GetTypeAnn(); - if (type->GetKind() != ETypeAnnotationKind::List) { - - ctx.AddError(TIssue(ctx.GetPosition(transform->Pos()), TStringBuilder() - << "Expected List type, but got: " << *type)); + if (!EnsureListType(transform->Pos(), *type, ctx)) { return TStatus::Error; } - /* auto* itemType = sinkType->Cast<TListExprType>()->GetItemType(); - if (itemType->GetKind() != ETypeAnnotationKind::Struct) { - ctx.AddError(TIssue(ctx.GetPosition(sink->Pos()), TStringBuilder() - << "Expected List<Struct<...>> type, but got: List<" << *itemType << ">")); - return TStatus::Error; - } */ stageResultTypes.emplace_back(type); } } |