aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgrigoriypisar <grigoriypisar@yandex-team.com>2023-07-12 15:27:10 +0300
committergrigoriypisar <grigoriypisar@yandex-team.com>2023-07-12 15:27:10 +0300
commit3aef944f32ba65f0bb01cb9e2590f885b5c4ca31 (patch)
tree435c9c793702632f163cb877d5adb5c103e45052
parentf27f66d3f14a5fb160298391d5ee408dd636ef93 (diff)
downloadydb-3aef944f32ba65f0bb01cb9e2590f885b5c4ca31.tar.gz
Remove execution_id identification from FetchScriptResults.
Removed execution id.
-rw-r--r--ydb/core/fq/libs/compute/ydb/actors_factory.cpp4
-rw-r--r--ydb/core/fq/libs/compute/ydb/actors_factory.h2
-rw-r--r--ydb/core/fq/libs/compute/ydb/events/events.h6
-rw-r--r--ydb/core/fq/libs/compute/ydb/result_writer_actor.cpp24
-rw-r--r--ydb/core/fq/libs/compute/ydb/result_writer_actor.h2
-rw-r--r--ydb/core/fq/libs/compute/ydb/ydb_connector_actor.cpp2
-rw-r--r--ydb/core/fq/libs/compute/ydb/ydb_run_actor.cpp4
-rw-r--r--ydb/core/grpc_services/query/rpc_fetch_script_results.cpp20
-rw-r--r--ydb/core/kqp/ut/federated_query/kqp_federated_query_ut.cpp14
-rw-r--r--ydb/core/kqp/ut/service/kqp_query_service_ut.cpp31
-rw-r--r--ydb/public/api/protos/ydb_query.proto5
-rw-r--r--ydb/public/sdk/cpp/client/ydb_query/client.cpp21
-rw-r--r--ydb/public/sdk/cpp/client/ydb_query/client.h5
13 files changed, 52 insertions, 88 deletions
diff --git a/ydb/core/fq/libs/compute/ydb/actors_factory.cpp b/ydb/core/fq/libs/compute/ydb/actors_factory.cpp
index 6f299dd6aa..f347334d46 100644
--- a/ydb/core/fq/libs/compute/ydb/actors_factory.cpp
+++ b/ydb/core/fq/libs/compute/ydb/actors_factory.cpp
@@ -53,8 +53,8 @@ struct TActorFactory : public IActorFactory {
std::unique_ptr<NActors::IActor> CreateResultWriter(const NActors::TActorId& parent,
const NActors::TActorId& connector,
const NActors::TActorId& pinger,
- const TString& executionId) const override {
- return CreateResultWriterActor(Params, parent, connector, pinger, executionId, Counters);
+ const NKikimr::NOperationId::TOperationId& operationId) const override {
+ return CreateResultWriterActor(Params, parent, connector, pinger, operationId, Counters);
}
std::unique_ptr<NActors::IActor> CreateResourcesCleaner(const NActors::TActorId& parent,
diff --git a/ydb/core/fq/libs/compute/ydb/actors_factory.h b/ydb/core/fq/libs/compute/ydb/actors_factory.h
index 64292e0156..afbdbb13ae 100644
--- a/ydb/core/fq/libs/compute/ydb/actors_factory.h
+++ b/ydb/core/fq/libs/compute/ydb/actors_factory.h
@@ -26,7 +26,7 @@ struct IActorFactory : public TThrRefBase {
virtual std::unique_ptr<NActors::IActor> CreateResultWriter(const NActors::TActorId& parent,
const NActors::TActorId& connector,
const NActors::TActorId& pinger,
- const TString& executionId) const = 0;
+ const NKikimr::NOperationId::TOperationId& operationId) const = 0;
virtual std::unique_ptr<NActors::IActor> CreateResourcesCleaner(const NActors::TActorId& parent,
const NActors::TActorId& connector,
const NYdb::TOperation::TOperationId& operationId) const = 0;
diff --git a/ydb/core/fq/libs/compute/ydb/events/events.h b/ydb/core/fq/libs/compute/ydb/events/events.h
index e6e88325ce..ffb01be9eb 100644
--- a/ydb/core/fq/libs/compute/ydb/events/events.h
+++ b/ydb/core/fq/libs/compute/ydb/events/events.h
@@ -100,13 +100,13 @@ struct TEvYdbCompute {
};
struct TEvFetchScriptResultRequest : public NActors::TEventLocal<TEvFetchScriptResultRequest, EvFetchScriptResultRequest> {
- TEvFetchScriptResultRequest(TString executionId, int64_t resultSetId, const TString& fetchToken)
- : ExecutionId(std::move(executionId))
+ TEvFetchScriptResultRequest(const NKikimr::NOperationId::TOperationId& operationId, int64_t resultSetId, const TString& fetchToken)
+ : OperationId(operationId)
, ResultSetId(resultSetId)
, FetchToken(fetchToken)
{}
- TString ExecutionId;
+ NKikimr::NOperationId::TOperationId OperationId;
int64_t ResultSetId = 0;
TString FetchToken;
};
diff --git a/ydb/core/fq/libs/compute/ydb/result_writer_actor.cpp b/ydb/core/fq/libs/compute/ydb/result_writer_actor.cpp
index e2bc818868..43bb445fc8 100644
--- a/ydb/core/fq/libs/compute/ydb/result_writer_actor.cpp
+++ b/ydb/core/fq/libs/compute/ydb/result_writer_actor.cpp
@@ -22,11 +22,11 @@
#include <library/cpp/actors/core/log.h>
#include <library/cpp/protobuf/interop/cast.h>
-#define LOG_E(stream) LOG_ERROR_S(*TlsActivationContext, NKikimrServices::FQ_RUN_ACTOR, "[ydb] [ResultWriter] QueryId: " << Params.QueryId << " ExecutionId: " << ExecutionId << " " << stream)
-#define LOG_W(stream) LOG_WARN_S( *TlsActivationContext, NKikimrServices::FQ_RUN_ACTOR, "[ydb] [ResultWriter] QueryId: " << Params.QueryId << " ExecutionId: " << ExecutionId << " " << stream)
-#define LOG_I(stream) LOG_INFO_S( *TlsActivationContext, NKikimrServices::FQ_RUN_ACTOR, "[ydb] [ResultWriter] QueryId: " << Params.QueryId << " ExecutionId: " << ExecutionId << " " << stream)
-#define LOG_D(stream) LOG_DEBUG_S(*TlsActivationContext, NKikimrServices::FQ_RUN_ACTOR, "[ydb] [ResultWriter] QueryId: " << Params.QueryId << " ExecutionId: " << ExecutionId << " " << stream)
-#define LOG_T(stream) LOG_TRACE_S(*TlsActivationContext, NKikimrServices::FQ_RUN_ACTOR, "[ydb] [ResultWriter] QueryId: " << Params.QueryId << " ExecutionId: " << ExecutionId << " " << stream)
+#define LOG_E(stream) LOG_ERROR_S(*TlsActivationContext, NKikimrServices::FQ_RUN_ACTOR, "[ydb] [ResultWriter] QueryId: " << Params.QueryId << " OperationId: " << ProtoToString(OperationId) << " " << stream)
+#define LOG_W(stream) LOG_WARN_S( *TlsActivationContext, NKikimrServices::FQ_RUN_ACTOR, "[ydb] [ResultWriter] QueryId: " << Params.QueryId << " OperationId: " << ProtoToString(OperationId) << " " << stream)
+#define LOG_I(stream) LOG_INFO_S( *TlsActivationContext, NKikimrServices::FQ_RUN_ACTOR, "[ydb] [ResultWriter] QueryId: " << Params.QueryId << " OperationId: " << ProtoToString(OperationId) << " " << stream)
+#define LOG_D(stream) LOG_DEBUG_S(*TlsActivationContext, NKikimrServices::FQ_RUN_ACTOR, "[ydb] [ResultWriter] QueryId: " << Params.QueryId << " OperationId: " << ProtoToString(OperationId) << " " << stream)
+#define LOG_T(stream) LOG_TRACE_S(*TlsActivationContext, NKikimrServices::FQ_RUN_ACTOR, "[ydb] [ResultWriter] QueryId: " << Params.QueryId << " OperationId: " << ProtoToString(OperationId) << " " << stream)
namespace NFq {
@@ -65,13 +65,13 @@ public:
}
};
- TResultWriterActor(const TRunActorParams& params, const TActorId& parent, const TActorId& connector, const TActorId& pinger, const TString& executionId, const ::NYql::NCommon::TServiceCounters& queryCounters)
+ TResultWriterActor(const TRunActorParams& params, const TActorId& parent, const TActorId& connector, const TActorId& pinger, const NKikimr::NOperationId::TOperationId& operationId, const ::NYql::NCommon::TServiceCounters& queryCounters)
: TBaseComputeActor(queryCounters, "ResultWriter")
, Params(params)
, Parent(parent)
, Connector(connector)
, Pinger(pinger)
- , ExecutionId(executionId)
+ , OperationId(operationId)
, Counters(GetStepCountersSubgroup())
{}
@@ -101,7 +101,7 @@ public:
} else {
pingCounters->Error->Inc();
LOG_E("Move result error");
- Send(Parent, new TEvYdbCompute::TEvResultWriterResponse(NYql::TIssues{NYql::TIssue{TStringBuilder{} << "Move result error. ExecutionId: " << ExecutionId}}, NYdb::EStatus::INTERNAL_ERROR));
+ Send(Parent, new TEvYdbCompute::TEvResultWriterResponse(NYql::TIssues{NYql::TIssue{TStringBuilder{} << "Move result error. OperationId: " << ProtoToString(OperationId)}}, NYdb::EStatus::INTERNAL_ERROR));
FailedAndPassAway();
}
}
@@ -167,7 +167,7 @@ public:
auto fetchScriptResultCounters = Counters.GetCounters(ERequestType::RT_FETCH_SCRIPT_RESULT);
fetchScriptResultCounters->InFly->Inc();
StartTime = TInstant::Now();
- Register(new TRetryActor<TEvYdbCompute::TEvFetchScriptResultRequest, TEvYdbCompute::TEvFetchScriptResultResponse, TString, int64_t, TString>(Counters.GetCounters(ERequestType::RT_FETCH_SCRIPT_RESULT), SelfId(), Connector, ExecutionId, 0, FetchToken));
+ Register(new TRetryActor<TEvYdbCompute::TEvFetchScriptResultRequest, TEvYdbCompute::TEvFetchScriptResultResponse, NKikimr::NOperationId::TOperationId, int64_t, TString>(Counters.GetCounters(ERequestType::RT_FETCH_SCRIPT_RESULT), SelfId(), Connector, OperationId, 0, FetchToken));
}
void SendFinalPingRequest() {
@@ -192,7 +192,7 @@ private:
TActorId Parent;
TActorId Connector;
TActorId Pinger;
- TString ExecutionId;
+ NKikimr::NOperationId::TOperationId OperationId;
TCounters Counters;
TInstant StartTime;
int64_t Offset = 0;
@@ -204,9 +204,9 @@ std::unique_ptr<NActors::IActor> CreateResultWriterActor(const TRunActorParams&
const TActorId& parent,
const TActorId& connector,
const TActorId& pinger,
- const TString& executionId,
+ const NKikimr::NOperationId::TOperationId& operationId,
const ::NYql::NCommon::TServiceCounters& queryCounters) {
- return std::make_unique<TResultWriterActor>(params, parent, connector, pinger, executionId, queryCounters);
+ return std::make_unique<TResultWriterActor>(params, parent, connector, pinger, operationId, queryCounters);
}
}
diff --git a/ydb/core/fq/libs/compute/ydb/result_writer_actor.h b/ydb/core/fq/libs/compute/ydb/result_writer_actor.h
index 82418704f4..a87c0967d3 100644
--- a/ydb/core/fq/libs/compute/ydb/result_writer_actor.h
+++ b/ydb/core/fq/libs/compute/ydb/result_writer_actor.h
@@ -12,7 +12,7 @@ std::unique_ptr<NActors::IActor> CreateResultWriterActor(const TRunActorParams&
const NActors::TActorId& parent,
const NActors::TActorId& connector,
const NActors::TActorId& pinger,
- const TString& executionId,
+ const NKikimr::NOperationId::TOperationId& operationId,
const ::NYql::NCommon::TServiceCounters& queryCounters);
}
diff --git a/ydb/core/fq/libs/compute/ydb/ydb_connector_actor.cpp b/ydb/core/fq/libs/compute/ydb/ydb_connector_actor.cpp
index 225d8f34cc..46af0743fe 100644
--- a/ydb/core/fq/libs/compute/ydb/ydb_connector_actor.cpp
+++ b/ydb/core/fq/libs/compute/ydb/ydb_connector_actor.cpp
@@ -80,7 +80,7 @@ public:
NYdb::NQuery::TFetchScriptResultsSettings settings;
settings.FetchToken(ev->Get()->FetchToken);
QueryClient
- ->FetchScriptResults(ev->Get()->ExecutionId, ev->Get()->ResultSetId, settings)
+ ->FetchScriptResults(ev->Get()->OperationId, ev->Get()->ResultSetId, settings)
.Apply([actorSystem = NActors::TActivationContext::ActorSystem(), recipient = ev->Sender, cookie = ev->Cookie](auto future) {
try {
auto response = future.ExtractValueSync();
diff --git a/ydb/core/fq/libs/compute/ydb/ydb_run_actor.cpp b/ydb/core/fq/libs/compute/ydb/ydb_run_actor.cpp
index a415510075..877d6d2864 100644
--- a/ydb/core/fq/libs/compute/ydb/ydb_run_actor.cpp
+++ b/ydb/core/fq/libs/compute/ydb/ydb_run_actor.cpp
@@ -92,7 +92,7 @@ public:
ExecStatus = response.ExecStatus;
LOG_I("StatusTrackerResponse (success) " << response.Status << " ExecStatus: " << static_cast<int>(response.ExecStatus) << " Issues: " << response.Issues.ToOneLineString());
if (response.ExecStatus == NYdb::NQuery::EExecStatus::Completed) {
- Register(ActorFactory->CreateResultWriter(SelfId(), Connector, Pinger, Params.ExecutionId).release());
+ Register(ActorFactory->CreateResultWriter(SelfId(), Connector, Pinger, Params.OperationId).release());
} else {
Register(ActorFactory->CreateResourcesCleaner(SelfId(), Connector, Params.OperationId).release());
}
@@ -163,7 +163,7 @@ public:
break;
case FederatedQuery::QueryMeta::COMPLETING:
if (Params.OperationId.GetKind() != Ydb::TOperationId::UNUSED) {
- Register(ActorFactory->CreateResultWriter(SelfId(), Connector, Pinger, Params.ExecutionId).release());
+ Register(ActorFactory->CreateResultWriter(SelfId(), Connector, Pinger, Params.OperationId).release());
} else {
Register(ActorFactory->CreateFinalizer(SelfId(), Pinger, ExecStatus).release());
}
diff --git a/ydb/core/grpc_services/query/rpc_fetch_script_results.cpp b/ydb/core/grpc_services/query/rpc_fetch_script_results.cpp
index a9f8d0d4e0..3cf59b683e 100644
--- a/ydb/core/grpc_services/query/rpc_fetch_script_results.cpp
+++ b/ydb/core/grpc_services/query/rpc_fetch_script_results.cpp
@@ -128,24 +128,12 @@ private:
}
bool GetExecutionIdFromRequest() {
- switch (GetProtoRequest()->execution_case()) {
- case Ydb::Query::FetchScriptResultsRequest::kExecutionId:
- ExecutionId = GetProtoRequest()->execution_id();
- break;
- case Ydb::Query::FetchScriptResultsRequest::kOperationId:
- {
- TMaybe<TString> executionId = NKqp::ScriptExecutionIdFromOperation(GetProtoRequest()->operation_id());
- if (!executionId) {
- Reply(Ydb::StatusIds::BAD_REQUEST, "Invalid operation id");
- return false;
- }
- ExecutionId = *executionId;
- break;
- }
- case Ydb::Query::FetchScriptResultsRequest::EXECUTION_NOT_SET:
- Reply(Ydb::StatusIds::BAD_REQUEST, "No execution id");
+ TMaybe<TString> executionId = NKqp::ScriptExecutionIdFromOperation(GetProtoRequest()->operation_id());
+ if (!executionId) {
+ Reply(Ydb::StatusIds::BAD_REQUEST, "Invalid operation id");
return false;
}
+ ExecutionId = *executionId;
return true;
}
diff --git a/ydb/core/kqp/ut/federated_query/kqp_federated_query_ut.cpp b/ydb/core/kqp/ut/federated_query/kqp_federated_query_ut.cpp
index 02596b6e12..1d7a7400da 100644
--- a/ydb/core/kqp/ut/federated_query/kqp_federated_query_ut.cpp
+++ b/ydb/core/kqp/ut/federated_query/kqp_federated_query_ut.cpp
@@ -129,7 +129,7 @@ Y_UNIT_TEST_SUITE(KqpFederatedQuery) {
NYdb::NQuery::TScriptExecutionOperation readyOp = WaitScriptExecutionOperation(scriptExecutionOperation.Id(), kikimr.GetDriver());
UNIT_ASSERT_EQUAL(readyOp.Metadata().ExecStatus, EExecStatus::Completed);
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Metadata().ExecutionId, 0).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
TResultSetParser resultSet(results.ExtractResultSet());
@@ -254,7 +254,7 @@ Y_UNIT_TEST_SUITE(KqpFederatedQuery) {
NYdb::NQuery::TScriptExecutionOperation readyOp = WaitScriptExecutionOperation(scriptExecutionOperation.Id(), kikimr.GetDriver());
UNIT_ASSERT_EQUAL(readyOp.Metadata().ExecStatus, EExecStatus::Completed);
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Metadata().ExecutionId, 0).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
TResultSetParser resultSet(results.ExtractResultSet());
@@ -328,7 +328,7 @@ Y_UNIT_TEST_SUITE(KqpFederatedQuery) {
NYdb::NQuery::TScriptExecutionOperation readyOp = WaitScriptExecutionOperation(scriptExecutionOperation.Id(), kikimr.GetDriver());
UNIT_ASSERT_EQUAL(readyOp.Metadata().ExecStatus, EExecStatus::Completed);
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Metadata().ExecutionId, 0).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
TResultSetParser resultSet(results.ExtractResultSet());
@@ -392,7 +392,7 @@ Y_UNIT_TEST_SUITE(KqpFederatedQuery) {
NYdb::NQuery::TScriptExecutionOperation readyOp = WaitScriptExecutionOperation(scriptExecutionOperation.Id(), kikimr.GetDriver());
UNIT_ASSERT_EQUAL(readyOp.Metadata().ExecStatus, EExecStatus::Completed);
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Metadata().ExecutionId, 0).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
TResultSetParser resultSet(results.ExtractResultSet());
@@ -471,7 +471,7 @@ Y_UNIT_TEST_SUITE(KqpFederatedQuery) {
NYdb::NQuery::TScriptExecutionOperation readyOp = WaitScriptExecutionOperation(scriptExecutionOperation.Id(), kikimr.GetDriver());
UNIT_ASSERT_EQUAL(readyOp.Metadata().ExecStatus, EExecStatus::Completed);
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Metadata().ExecutionId, 0).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
TResultSetParser resultSet(results.ExtractResultSet());
@@ -524,7 +524,7 @@ Y_UNIT_TEST_SUITE(KqpFederatedQuery) {
NYdb::NQuery::TScriptExecutionOperation readyOp = WaitScriptExecutionOperation(scriptExecutionOperation.Id(), kikimr.GetDriver());
UNIT_ASSERT_EQUAL(readyOp.Metadata().ExecStatus, EExecStatus::Completed);
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Metadata().ExecutionId, 0).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
TResultSetParser resultSet(results.ExtractResultSet());
@@ -596,7 +596,7 @@ Y_UNIT_TEST_SUITE(KqpFederatedQuery) {
NYdb::NQuery::TScriptExecutionOperation readyOp = WaitScriptExecutionOperation(scriptExecutionOperation.Id(), kikimr.GetDriver());
TFetchScriptResultsResult results(TStatus(EStatus::SUCCESS, {}));
if (readyOp.Metadata().ExecStatus == EExecStatus::Completed) {
- results = db.FetchScriptResults(scriptExecutionOperation.Metadata().ExecutionId, 0).ExtractValueSync();
+ results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
}
return {readyOp, results};
diff --git a/ydb/core/kqp/ut/service/kqp_query_service_ut.cpp b/ydb/core/kqp/ut/service/kqp_query_service_ut.cpp
index ca7714f20f..b5fe150cc6 100644
--- a/ydb/core/kqp/ut/service/kqp_query_service_ut.cpp
+++ b/ydb/core/kqp/ut/service/kqp_query_service_ut.cpp
@@ -390,18 +390,13 @@ Y_UNIT_TEST_SUITE(KqpQueryService) {
UNIT_ASSERT_EQUAL(readyOp.Metadata().ExecutionId, scriptExecutionOperation.Metadata().ExecutionId);
UNIT_ASSERT_STRING_CONTAINS(readyOp.Metadata().ScriptContent.Text, "SELECT 42");
- auto checkFetch = [&](const auto& executionOrOperation) {
- TFetchScriptResultsResult results = db.FetchScriptResults(executionOrOperation, 0).ExtractValueSync();
- UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
- TResultSetParser resultSet(results.ExtractResultSet());
- UNIT_ASSERT_VALUES_EQUAL(resultSet.ColumnsCount(), 1);
- UNIT_ASSERT_VALUES_EQUAL(resultSet.RowsCount(), 1);
- UNIT_ASSERT(resultSet.TryNextRow());
- UNIT_ASSERT_VALUES_EQUAL(resultSet.ColumnParser(0).GetInt32(), 42);
- };
-
- checkFetch(scriptExecutionOperation.Metadata().ExecutionId);
- checkFetch(scriptExecutionOperation);
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0).ExtractValueSync();
+ UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
+ TResultSetParser resultSet(results.ExtractResultSet());
+ UNIT_ASSERT_VALUES_EQUAL(resultSet.ColumnsCount(), 1);
+ UNIT_ASSERT_VALUES_EQUAL(resultSet.RowsCount(), 1);
+ UNIT_ASSERT(resultSet.TryNextRow());
+ UNIT_ASSERT_VALUES_EQUAL(resultSet.ColumnParser(0).GetInt32(), 42);
}
Y_UNIT_TEST(ExecuteMultiScript) {
@@ -421,7 +416,7 @@ Y_UNIT_TEST_SUITE(KqpQueryService) {
UNIT_ASSERT_STRING_CONTAINS(readyOp.Metadata().ScriptContent.Text, "SELECT 42; SELECT 101;");
{
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Metadata().ExecutionId, 0).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
TResultSetParser resultSet(results.ExtractResultSet());
UNIT_ASSERT_VALUES_EQUAL(resultSet.ColumnsCount(), 1);
@@ -430,7 +425,7 @@ Y_UNIT_TEST_SUITE(KqpQueryService) {
UNIT_ASSERT_VALUES_EQUAL(resultSet.ColumnParser(0).GetInt32(), 42);
}
{
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Metadata().ExecutionId, 1).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 1).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
TResultSetParser resultSet(results.ExtractResultSet());
UNIT_ASSERT_VALUES_EQUAL(resultSet.ColumnsCount(), 1);
@@ -537,7 +532,7 @@ Y_UNIT_TEST_SUITE(KqpQueryService) {
UNIT_ASSERT_EQUAL(readyOp.Metadata().ExecutionId, scriptExecutionOperation.Metadata().ExecutionId);
UNIT_ASSERT_EQUAL(readyOp.Metadata().ScriptContent.Syntax, ESyntax::Pg);
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation, 0).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
CompareYson(R"([
@@ -992,7 +987,7 @@ Y_UNIT_TEST_SUITE(KqpQueryService) {
auto settings = TFetchScriptResultsSettings();
settings.FetchToken("?");
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation, 0, settings).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0, settings).ExtractValueSync();
UNIT_ASSERT_VALUES_EQUAL(results.GetStatus(), EStatus::BAD_REQUEST);
}
@@ -1006,7 +1001,7 @@ Y_UNIT_TEST_SUITE(KqpQueryService) {
auto settings = TFetchScriptResultsSettings();
settings.RowsLimit(NUMBER_OF_ROWS);
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation, 0, settings).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0, settings).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
UNIT_ASSERT(results.GetNextFetchToken().Empty());
@@ -1027,7 +1022,7 @@ Y_UNIT_TEST_SUITE(KqpQueryService) {
constexpr size_t NUMBER_OF_TESTS = 3;
for (size_t i = 0; i < NUMBER_OF_TESTS && (i + 1) * ROWS_LIMIT <= NUMBER_OF_ROWS; ++i) {
- TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation, 0, settings).ExtractValueSync();
+ TFetchScriptResultsResult results = db.FetchScriptResults(scriptExecutionOperation.Id(), 0, settings).ExtractValueSync();
UNIT_ASSERT_C(results.IsSuccess(), results.GetIssues().ToString());
TResultSetParser resultSet(results.ExtractResultSet());
diff --git a/ydb/public/api/protos/ydb_query.proto b/ydb/public/api/protos/ydb_query.proto
index 4431c4a9eb..2aee0799de 100644
--- a/ydb/public/api/protos/ydb_query.proto
+++ b/ydb/public/api/protos/ydb_query.proto
@@ -252,10 +252,7 @@ message ExecuteScriptMetadata {
}
message FetchScriptResultsRequest {
- oneof execution {
- string execution_id = 1 [(Ydb.length).le = 1024];
- string operation_id = 5 [(Ydb.length).le = 1024];
- }
+ string operation_id = 5 [(Ydb.length).le = 1024];
int64 result_set_id = 6;
diff --git a/ydb/public/sdk/cpp/client/ydb_query/client.cpp b/ydb/public/sdk/cpp/client/ydb_query/client.cpp
index 40f2d211b1..8bb7ab73e7 100644
--- a/ydb/public/sdk/cpp/client/ydb_query/client.cpp
+++ b/ydb/public/sdk/cpp/client/ydb_query/client.cpp
@@ -72,16 +72,9 @@ public:
return promise.GetFuture();
}
- TAsyncFetchScriptResultsResult FetchScriptResults(const TString& executionId, int64_t resultSetId, const TFetchScriptResultsSettings& settings) {
+ TAsyncFetchScriptResultsResult FetchScriptResults(const NKikimr::NOperationId::TOperationId& operationId, int64_t resultSetId, const TFetchScriptResultsSettings& settings) {
auto request = MakeRequest<Ydb::Query::FetchScriptResultsRequest>();
- request.set_execution_id(executionId);
- request.set_result_set_id(resultSetId);
- return FetchScriptResultsImpl(std::move(request), settings);
- }
-
- TAsyncFetchScriptResultsResult FetchScriptResults(const TScriptExecutionOperation& scriptExecutionOperation, int64_t resultSetId, const TFetchScriptResultsSettings& settings) {
- auto request = MakeRequest<Ydb::Query::FetchScriptResultsRequest>();
- request.set_operation_id(NKikimr::NOperationId::ProtoToString(scriptExecutionOperation.Id()));
+ request.set_operation_id(NKikimr::NOperationId::ProtoToString(operationId));
request.set_result_set_id(resultSetId);
return FetchScriptResultsImpl(std::move(request), settings);
}
@@ -174,16 +167,10 @@ NThreading::TFuture<TScriptExecutionOperation> TQueryClient::ExecuteScript(const
return Impl_->ExecuteScript(script, settings);
}
-TAsyncFetchScriptResultsResult TQueryClient::FetchScriptResults(const TString& executionId, int64_t resultSetId,
- const TFetchScriptResultsSettings& settings)
-{
- return Impl_->FetchScriptResults(executionId, resultSetId, settings);
-}
-
-TAsyncFetchScriptResultsResult TQueryClient::FetchScriptResults(const TScriptExecutionOperation& scriptExecutionOperation, int64_t resultSetId,
+TAsyncFetchScriptResultsResult TQueryClient::FetchScriptResults(const NKikimr::NOperationId::TOperationId& operationId, int64_t resultSetId,
const TFetchScriptResultsSettings& settings)
{
- return Impl_->FetchScriptResults(scriptExecutionOperation, resultSetId, settings);
+ return Impl_->FetchScriptResults(operationId, resultSetId, settings);
}
} // namespace NYdb::NQuery
diff --git a/ydb/public/sdk/cpp/client/ydb_query/client.h b/ydb/public/sdk/cpp/client/ydb_query/client.h
index 719dca0709..e927289e2c 100644
--- a/ydb/public/sdk/cpp/client/ydb_query/client.h
+++ b/ydb/public/sdk/cpp/client/ydb_query/client.h
@@ -42,10 +42,7 @@ public:
NThreading::TFuture<TScriptExecutionOperation> ExecuteScript(const TString& script,
const TExecuteScriptSettings& settings = TExecuteScriptSettings());
- TAsyncFetchScriptResultsResult FetchScriptResults(const TString& executionId, int64_t resultSetId,
- const TFetchScriptResultsSettings& settings = TFetchScriptResultsSettings());
-
- TAsyncFetchScriptResultsResult FetchScriptResults(const TScriptExecutionOperation& scriptExecutionOperation, int64_t resultSetId,
+ TAsyncFetchScriptResultsResult FetchScriptResults(const NKikimr::NOperationId::TOperationId& operationId, int64_t resultSetId,
const TFetchScriptResultsSettings& settings = TFetchScriptResultsSettings());
private: