From 1ffac6e7b84084724f72a374e6fb57441c373f84 Mon Sep 17 00:00:00 2001 From: Alexey Ozeritskiy Date: Tue, 19 Dec 2023 13:02:42 +0100 Subject: [PATCH 1/7] TaskRunnerActor accepts unknown events --- .../task_runner_actor/task_runner_actor.cpp | 32 +++++++++++++------ 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp index afb384be6832..6b07d56ebdb9 100644 --- a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp +++ b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp @@ -136,15 +136,29 @@ class TTaskRunnerActor } } - STRICT_STFUNC(Handler, { - cFunc(NActors::TEvents::TEvPoison::EventType, TTaskRunnerActor::PassAway); - hFunc(TEvTaskRunnerCreate, OnDqTask); - hFunc(TEvContinueRun, OnContinueRun); - hFunc(TEvPop, OnChannelPop); - hFunc(TEvPush, OnChannelPush); - hFunc(TEvSinkPop, OnSinkPop); - hFunc(TEvSinkPopFinished, OnSinkPopFinished); - }) + STFUNC(Handler) { + switch (ev->GetTypeRewrite()) { + cFunc(NActors::TEvents::TEvPoison::EventType, TTaskRunnerActor::PassAway); + hFunc(TEvTaskRunnerCreate, OnDqTask); + hFunc(TEvContinueRun, OnContinueRun); + hFunc(TEvPop, OnChannelPop); + hFunc(TEvPush, OnChannelPush); + hFunc(TEvSinkPop, OnSinkPop); + hFunc(TEvSinkPopFinished, OnSinkPopFinished); + default: { + auto message = TStringBuilder() << "Unexpected event: " << ev->GetTypeRewrite() << " (" << GetEventTypeString(ev) << ")"; + auto issue = TIssue(message).SetCode(TIssuesIds::DQ_GATEWAY_NEED_FALLBACK_ERROR, TSeverityIds::S_ERROR); + auto reply = MakeHolder(NYql::NDqProto::StatusIds::INTERNAL_ERROR, TVector{issue}) + Send( + new IEventHandle( + ev->Sender, + SelfId(), + MakeError({status.ExitCode, status.Stderr}, settings, stageId).Release(), + /*flags=*/0, + /*cookie=*/0)); + } + } + } private: static std::pair ParseStderr(const TString& input, TIntrusivePtr settings) { From 65165e9d9a733b8b1a3c25da30d6ffacfd8e2106 Mon Sep 17 00:00:00 2001 From: Alexey Ozeritskiy Date: Tue, 19 Dec 2023 13:04:21 +0100 Subject: [PATCH 2/7] Polish --- .../yql/providers/dq/task_runner_actor/task_runner_actor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp index 6b07d56ebdb9..e02b600ebbf3 100644 --- a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp +++ b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp @@ -153,7 +153,7 @@ class TTaskRunnerActor new IEventHandle( ev->Sender, SelfId(), - MakeError({status.ExitCode, status.Stderr}, settings, stageId).Release(), + MakeError({status.ExitCode, status.Stderr}, Settings, StageId).Release(), /*flags=*/0, /*cookie=*/0)); } From 2aa42b75f34577267f451794b665f81c405c7ec6 Mon Sep 17 00:00:00 2001 From: Alexey Ozeritskiy Date: Tue, 19 Dec 2023 13:06:21 +0100 Subject: [PATCH 3/7] Polish --- .../yql/providers/dq/task_runner_actor/task_runner_actor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp index e02b600ebbf3..f40129a40bac 100644 --- a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp +++ b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp @@ -146,7 +146,7 @@ class TTaskRunnerActor hFunc(TEvSinkPop, OnSinkPop); hFunc(TEvSinkPopFinished, OnSinkPopFinished); default: { - auto message = TStringBuilder() << "Unexpected event: " << ev->GetTypeRewrite() << " (" << GetEventTypeString(ev) << ")"; + auto message = TStringBuilder() << "Unexpected event: " << ev->GetTypeRewrite() << " (" << ev->GetTypeName(ev) << ")"; auto issue = TIssue(message).SetCode(TIssuesIds::DQ_GATEWAY_NEED_FALLBACK_ERROR, TSeverityIds::S_ERROR); auto reply = MakeHolder(NYql::NDqProto::StatusIds::INTERNAL_ERROR, TVector{issue}) Send( From 0822a8be6f1470384fccf16176f943a5e67a94d4 Mon Sep 17 00:00:00 2001 From: Alexey Ozeritskiy Date: Tue, 19 Dec 2023 13:07:01 +0100 Subject: [PATCH 4/7] Polish --- .../yql/providers/dq/task_runner_actor/task_runner_actor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp index f40129a40bac..7c44d5452a31 100644 --- a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp +++ b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp @@ -146,7 +146,7 @@ class TTaskRunnerActor hFunc(TEvSinkPop, OnSinkPop); hFunc(TEvSinkPopFinished, OnSinkPopFinished); default: { - auto message = TStringBuilder() << "Unexpected event: " << ev->GetTypeRewrite() << " (" << ev->GetTypeName(ev) << ")"; + auto message = TStringBuilder() << "Unexpected event: " << ev->GetTypeRewrite() << " (" << ev->GetTypeName() << ")"; auto issue = TIssue(message).SetCode(TIssuesIds::DQ_GATEWAY_NEED_FALLBACK_ERROR, TSeverityIds::S_ERROR); auto reply = MakeHolder(NYql::NDqProto::StatusIds::INTERNAL_ERROR, TVector{issue}) Send( From 95b3592dcaf34f7a88b43ec1b509c49e6248625e Mon Sep 17 00:00:00 2001 From: Alexey Ozeritskiy Date: Tue, 19 Dec 2023 13:08:53 +0100 Subject: [PATCH 5/7] Polish --- .../providers/dq/task_runner_actor/task_runner_actor.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp index 7c44d5452a31..4f4e3abe0db7 100644 --- a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp +++ b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp @@ -146,14 +146,14 @@ class TTaskRunnerActor hFunc(TEvSinkPop, OnSinkPop); hFunc(TEvSinkPopFinished, OnSinkPopFinished); default: { - auto message = TStringBuilder() << "Unexpected event: " << ev->GetTypeRewrite() << " (" << ev->GetTypeName() << ")"; + auto message = TStringBuilder() << "Unexpected event: " << ev->GetTypeRewrite() << " (" << ev->GetTypeName() << ")" << " stageId: " << StageId; auto issue = TIssue(message).SetCode(TIssuesIds::DQ_GATEWAY_NEED_FALLBACK_ERROR, TSeverityIds::S_ERROR); - auto reply = MakeHolder(NYql::NDqProto::StatusIds::INTERNAL_ERROR, TVector{issue}) + auto reply = MakeHolder(NYql::NDqProto::StatusIds::INTERNAL_ERROR, TVector{issue}); Send( new IEventHandle( ev->Sender, SelfId(), - MakeError({status.ExitCode, status.Stderr}, Settings, StageId).Release(), + reply.Release(), /*flags=*/0, /*cookie=*/0)); } From bfe8fad325d3f175e36321d09ccd38722db22129 Mon Sep 17 00:00:00 2001 From: Alexey Ozeritskiy Date: Tue, 19 Dec 2023 14:16:31 +0100 Subject: [PATCH 6/7] Polish --- .../providers/dq/task_runner_actor/task_runner_actor.cpp | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp index 4f4e3abe0db7..274f3b6d0952 100644 --- a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp +++ b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp @@ -149,13 +149,7 @@ class TTaskRunnerActor auto message = TStringBuilder() << "Unexpected event: " << ev->GetTypeRewrite() << " (" << ev->GetTypeName() << ")" << " stageId: " << StageId; auto issue = TIssue(message).SetCode(TIssuesIds::DQ_GATEWAY_NEED_FALLBACK_ERROR, TSeverityIds::S_ERROR); auto reply = MakeHolder(NYql::NDqProto::StatusIds::INTERNAL_ERROR, TVector{issue}); - Send( - new IEventHandle( - ev->Sender, - SelfId(), - reply.Release(), - /*flags=*/0, - /*cookie=*/0)); + Send(ev->Sender, reply.Release()); } } } From 848f1a33070c5f6e6d25b47d0f57067916e41947 Mon Sep 17 00:00:00 2001 From: Alexey Ozeritskiy Date: Tue, 19 Dec 2023 15:19:55 +0100 Subject: [PATCH 7/7] Polish --- .../yql/providers/dq/task_runner_actor/task_runner_actor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp index 274f3b6d0952..dd5d81aa4c21 100644 --- a/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp +++ b/ydb/library/yql/providers/dq/task_runner_actor/task_runner_actor.cpp @@ -149,7 +149,7 @@ class TTaskRunnerActor auto message = TStringBuilder() << "Unexpected event: " << ev->GetTypeRewrite() << " (" << ev->GetTypeName() << ")" << " stageId: " << StageId; auto issue = TIssue(message).SetCode(TIssuesIds::DQ_GATEWAY_NEED_FALLBACK_ERROR, TSeverityIds::S_ERROR); auto reply = MakeHolder(NYql::NDqProto::StatusIds::INTERNAL_ERROR, TVector{issue}); - Send(ev->Sender, reply.Release()); + Send(ParentId, reply.Release()); } } }