Skip to content

Commit 2a904bd

Browse files
authored
Restore in-progress stat (in not Ready replies) (#3111)
1 parent ee4bc9c commit 2a904bd

File tree

4 files changed

+12
-17
lines changed

4 files changed

+12
-17
lines changed

ydb/core/fq/libs/compute/ydb/events/events.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -127,14 +127,14 @@ struct TEvYdbCompute {
127127
, Ready(ready)
128128
{}
129129

130-
TEvGetOperationResponse(NYdb::NQuery::EExecStatus execStatus, Ydb::StatusIds::StatusCode statusCode, const TVector<Ydb::Query::ResultSetMeta>& resultSetsMeta, const Ydb::TableStats::QueryStats& queryStats, NYql::TIssues issues)
130+
TEvGetOperationResponse(NYdb::NQuery::EExecStatus execStatus, Ydb::StatusIds::StatusCode statusCode, const TVector<Ydb::Query::ResultSetMeta>& resultSetsMeta, const Ydb::TableStats::QueryStats& queryStats, NYql::TIssues issues, bool ready = true)
131131
: ExecStatus(execStatus)
132132
, StatusCode(statusCode)
133133
, ResultSetsMeta(resultSetsMeta)
134134
, QueryStats(queryStats)
135135
, Issues(std::move(issues))
136136
, Status(NYdb::EStatus::SUCCESS)
137-
, Ready(true)
137+
, Ready(ready)
138138
{}
139139

140140
NYdb::NQuery::EExecStatus ExecStatus = NYdb::NQuery::EExecStatus::Unspecified;

ydb/core/fq/libs/compute/ydb/status_tracker_actor.cpp

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -123,12 +123,6 @@ class TStatusTrackerActor : public TBaseComputeActor<TStatusTrackerActor> {
123123
void Handle(const TEvYdbCompute::TEvGetOperationResponse::TPtr& ev) {
124124
const auto& response = *ev.Get()->Get();
125125

126-
if (response.Status == NYdb::EStatus::SUCCESS && !response.Ready) {
127-
LOG_D("GetOperation IS NOT READY, repeating");
128-
SendGetOperation(TDuration::MilliSeconds(BackoffTimer.NextBackoffMs()));
129-
return;
130-
}
131-
132126
if (response.Status == NYdb::EStatus::NOT_FOUND) { // FAILING / ABORTING_BY_USER / ABORTING_BY_SYSTEM
133127
LOG_I("Operation has been already removed");
134128
Send(Parent, new TEvYdbCompute::TEvStatusTrackerResponse(response.Issues, response.Status, ExecStatus, ComputeStatus));

ydb/core/fq/libs/compute/ydb/ydb_connector_actor.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -93,17 +93,17 @@ class TYdbConnectorActor : public NActors::TActorBootstrapped<TYdbConnectorActor
9393
.Apply([actorSystem = NActors::TActivationContext::ActorSystem(), recipient = ev->Sender, cookie = ev->Cookie, database = ComputeConnection.database()](auto future) {
9494
try {
9595
auto response = future.ExtractValueSync();
96-
if (!response.Ready()) {
96+
if (response.Id().GetKind() != Ydb::TOperationId::UNUSED) {
9797
actorSystem->Send(
98-
recipient,
99-
MakeResponse<TEvYdbCompute::TEvGetOperationResponse>(
100-
database,
101-
response.Status().GetIssues(),
102-
response.Status().GetStatus(),
103-
false),
98+
recipient,
99+
new TEvYdbCompute::TEvGetOperationResponse(
100+
response.Metadata().ExecStatus,
101+
static_cast<Ydb::StatusIds::StatusCode>(response.Status().GetStatus()),
102+
response.Metadata().ResultSetsMeta,
103+
response.Metadata().ExecStats,
104+
RemoveDatabaseFromIssues(response.Status().GetIssues(), database),
105+
response.Ready()),
104106
0, cookie);
105-
} else if (response.Id().GetKind() != Ydb::TOperationId::UNUSED) {
106-
actorSystem->Send(recipient, new TEvYdbCompute::TEvGetOperationResponse(response.Metadata().ExecStatus, static_cast<Ydb::StatusIds::StatusCode>(response.Status().GetStatus()), response.Metadata().ResultSetsMeta, response.Metadata().ExecStats, RemoveDatabaseFromIssues(response.Status().GetIssues(), database)), 0, cookie);
107107
} else {
108108
actorSystem->Send(
109109
recipient,

ydb/core/kqp/proxy_service/kqp_script_executions.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1279,6 +1279,7 @@ class TGetScriptExecutionOperationActor : public TCheckLeaseStatusActorBase {
12791279
Response->Get()->Ready = false;
12801280
Response->Get()->Status = Ydb::StatusIds::SUCCESS;
12811281
Response->Get()->Issues.Clear();
1282+
Response->Get()->Metadata.set_exec_status(Ydb::Query::ExecStatus::EXEC_STATUS_UNSPECIFIED);
12821283
} else {
12831284
Response->Get()->Ready = true;
12841285
Response->Get()->Status = GetOperationStatus();

0 commit comments

Comments
 (0)