diff options
author | lucius <[email protected]> | 2025-01-28 14:55:20 +0300 |
---|---|---|
committer | lucius <[email protected]> | 2025-01-28 15:18:19 +0300 |
commit | a3dde81f2b32593e49107bb361c8c0c189f5bdb6 (patch) | |
tree | 85089ee68a37b78abc9be5604a8ee077a44ec6db | |
parent | f1f06f6c2c5c615da6dd44aa9e6dff98dd56b5a4 (diff) |
YT-22409: add full_result to finished_query_results
commit_hash:c23c774293faf3a31a2912d8472aa05852480095
-rw-r--r-- | yt/yt/client/api/query_tracker_client.cpp | 3 | ||||
-rw-r--r-- | yt/yt/client/api/query_tracker_client.h | 1 | ||||
-rw-r--r-- | yt/yt/client/api/rpc_proxy/client_impl.cpp | 1 | ||||
-rw-r--r-- | yt/yt_proto/yt/client/api/rpc_proxy/proto/api_service.proto | 1 |
4 files changed, 5 insertions, 1 deletions
diff --git a/yt/yt/client/api/query_tracker_client.cpp b/yt/yt/client/api/query_tracker_client.cpp index 86633c206b9..f374fa39ee5 100644 --- a/yt/yt/client/api/query_tracker_client.cpp +++ b/yt/yt/client/api/query_tracker_client.cpp @@ -54,7 +54,7 @@ void Serialize(const TQuery& query, NYson::IYsonConsumer* consumer) void Serialize(const TQueryResult& queryResult, NYson::IYsonConsumer* consumer) { - static_assert(pfr::tuple_size<TQueryResult>::value == 6); + static_assert(pfr::tuple_size<TQueryResult>::value == 7); BuildYsonFluently(consumer) .BeginMap() .Item("id").Value(queryResult.Id) @@ -65,6 +65,7 @@ void Serialize(const TQueryResult& queryResult, NYson::IYsonConsumer* consumer) }) .OptionalItem("schema", queryResult.Schema) .Item("is_truncated").Value(queryResult.IsTruncated) + .OptionalItem("full_result", queryResult.FullResult) .Item("data_statistics").Value(queryResult.DataStatistics) .EndMap(); } diff --git a/yt/yt/client/api/query_tracker_client.h b/yt/yt/client/api/query_tracker_client.h index 0e0fc147bf8..2cdcf2cbab4 100644 --- a/yt/yt/client/api/query_tracker_client.h +++ b/yt/yt/client/api/query_tracker_client.h @@ -123,6 +123,7 @@ struct TQueryResult NTableClient::TTableSchemaPtr Schema; NChunkClient::NProto::TDataStatistics DataStatistics; bool IsTruncated; + std::optional<NYson::TYsonString> FullResult; }; void Serialize(const TQueryResult& queryResult, NYson::IYsonConsumer* consumer); diff --git a/yt/yt/client/api/rpc_proxy/client_impl.cpp b/yt/yt/client/api/rpc_proxy/client_impl.cpp index 74e545e7f22..54c04351e1d 100644 --- a/yt/yt/client/api/rpc_proxy/client_impl.cpp +++ b/yt/yt/client/api/rpc_proxy/client_impl.cpp @@ -2325,6 +2325,7 @@ TFuture<TQueryResult> TClient::GetQueryResult( .Schema = rsp->has_schema() ? FromProto<NTableClient::TTableSchemaPtr>(rsp->schema()) : nullptr, .DataStatistics = FromProto<NChunkClient::NProto::TDataStatistics>(rsp->data_statistics()), .IsTruncated = rsp->is_truncated(), + .FullResult = rsp->has_full_result() ? std::make_optional(TYsonString(rsp->full_result())) : std::nullopt, }; })); } diff --git a/yt/yt_proto/yt/client/api/rpc_proxy/proto/api_service.proto b/yt/yt_proto/yt/client/api/rpc_proxy/proto/api_service.proto index bfdd234fb23..350c5dc87b4 100644 --- a/yt/yt_proto/yt/client/api/rpc_proxy/proto/api_service.proto +++ b/yt/yt_proto/yt/client/api/rpc_proxy/proto/api_service.proto @@ -3305,6 +3305,7 @@ message TRspGetQueryResult optional TTableSchema schema = 4; required NYT.NChunkClient.NProto.TDataStatistics data_statistics = 5; required bool is_truncated = 6; + optional bytes full_result = 7; // YSON } //////////////////////////////////////////////////////////////////////////////// |