aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoruzhas <uzhas@ydb.tech>2022-10-24 22:07:08 +0300
committeruzhas <uzhas@ydb.tech>2022-10-24 22:07:08 +0300
commitef015d0e20ac9493db1c7df93e41c2a4c5c20481 (patch)
tree567b1f1454c6fbf445f62e12b28f1991d756516f
parentd7c3d059f9dcb74cd142a940c0ebfc6998871ddd (diff)
downloadydb-ef015d0e20ac9493db1c7df93e41c2a4c5c20481.tar.gz
rework query issues
-rw-r--r--ydb/core/public_http/fq_handlers.h14
-rw-r--r--ydb/core/public_http/protos/fq.proto4
2 files changed, 12 insertions, 6 deletions
diff --git a/ydb/core/public_http/fq_handlers.h b/ydb/core/public_http/fq_handlers.h
index 9e70158f711..d2cad7ef7b2 100644
--- a/ydb/core/public_http/fq_handlers.h
+++ b/ydb/core/public_http/fq_handlers.h
@@ -89,7 +89,7 @@ void FqConvert(const RepeatedPtrField<T>& src, RepeatedPtrField<U>& dst) {
void FqConvert(const Ydb::Operations::Operation& src, FQHttp::Error& dst) {
dst.set_status(static_cast<int>(src.status()));
- SIMPLE_COPY_RENAME_FIELD(status, message);
+ dst.set_message(Ydb::StatusIds_StatusCode_Name(src.status()));
SIMPLE_COPY_REPEATABLE_RENAME_FIELD(issues, details);
}
@@ -170,9 +170,15 @@ void FqConvert(const YandexQuery::Query& src, FQHttp::GetQueryResult& dst) {
FqConvert(result_meta, *dst.mutable_result_sets()->Add());
}
- SIMPLE_COPY_REPEATABLE_RENAME_FIELD(issue, issues);
- // append transient issues to issues
- SIMPLE_COPY_REPEATABLE_RENAME_FIELD(transient_issue, issues);
+ RepeatedPtrField<Ydb::Issue::IssueMessage> mergedIssues(src.issue());
+ mergedIssues.MergeFrom(src.transient_issue());
+
+ if (!mergedIssues.empty()) {
+ FqConvert(mergedIssues, *dst.mutable_issues()->mutable_details());
+ NYql::TIssues issues;
+ NYql::IssuesFromMessage(mergedIssues, issues);
+ dst.mutable_issues()->set_message(issues.ToOneLineString());
+ }
}
void FqConvert(const FQHttp::GetQueryRequest& src, YandexQuery::DescribeQueryRequest& dst) {
diff --git a/ydb/core/public_http/protos/fq.proto b/ydb/core/public_http/protos/fq.proto
index 10e634a28d9..c625542ea47 100644
--- a/ydb/core/public_http/protos/fq.proto
+++ b/ydb/core/public_http/protos/fq.proto
@@ -23,7 +23,7 @@ message IssueMessage {
message Error {
int32 status = 1;
- Ydb.StatusIds.StatusCode message = 2;
+ string message = 2;
repeated IssueMessage details = 3;
}
@@ -72,7 +72,7 @@ message GetQueryResult {
ComputeStatus status = 5;
google.protobuf.StringValue text = 6;
QueryMeta meta = 7;
- repeated IssueMessage issues = 8;
+ Error issues = 8;
repeated ResultSetMeta result_sets = 9;
}