diff options
author | hor911 <hor911@ydb.tech> | 2022-07-12 13:34:58 +0300 |
---|---|---|
committer | hor911 <hor911@ydb.tech> | 2022-07-12 13:34:58 +0300 |
commit | dac0ededbf65f30a1e52f01bd02e68eddf46ebb6 (patch) | |
tree | 2468c71ea8d0b6800c723208223a8c64dc8603d4 /library/cpp/grpc/server/grpc_request.h | |
parent | 8024ad9845857b76925a9179c32ab7b955e87f17 (diff) | |
download | ydb-dac0ededbf65f30a1e52f01bd02e68eddf46ebb6.tar.gz |
Use grpc::Status::details
Diffstat (limited to 'library/cpp/grpc/server/grpc_request.h')
-rw-r--r-- | library/cpp/grpc/server/grpc_request.h | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/library/cpp/grpc/server/grpc_request.h b/library/cpp/grpc/server/grpc_request.h index 5bd8d3902b..daace3e5e9 100644 --- a/library/cpp/grpc/server/grpc_request.h +++ b/library/cpp/grpc/server/grpc_request.h @@ -190,13 +190,13 @@ public: WriteByteDataOk(resp); } - void ReplyError(grpc::StatusCode code, const TString& msg) override { - FinishGrpcStatus(code, msg, false); + void ReplyError(grpc::StatusCode code, const TString& msg, const TString& details) override { + FinishGrpcStatus(code, msg, details, false); } void ReplyUnauthenticated(const TString& in) override { const TString message = in.empty() ? TString("unauthenticated") : TString("unauthenticated, ") + in; - FinishGrpcStatus(grpc::StatusCode::UNAUTHENTICATED, message, false); + FinishGrpcStatus(grpc::StatusCode::UNAUTHENTICATED, message, "", false); } void SetNextReplyCallback(TOnNextReply&& cb) override { @@ -302,7 +302,7 @@ private: } } - void FinishGrpcStatus(grpc::StatusCode code, const TString& msg, bool urgent) { + void FinishGrpcStatus(grpc::StatusCode code, const TString& msg, const TString& details, bool urgent) { Y_VERIFY(code != grpc::OK); if (code == grpc::StatusCode::UNAUTHENTICATED) { Counters_->CountNotAuthenticated(); @@ -315,16 +315,16 @@ private: Name_, msg.c_str(), this->Context.peer().c_str(), (int)code); StateFunc_ = &TThis::SetFinishError; TOut resp; - Writer_->Finish(TUniversalResponseRef<TOut>(&resp), grpc::Status(code, msg), GetGRpcTag()); + Writer_->Finish(TUniversalResponseRef<TOut>(&resp), grpc::Status(code, msg, details), GetGRpcTag()); } else { GRPC_LOG_DEBUG(Logger_, "[%p] issuing response Name# %s nodata (%s) peer# %s, grpc status# (%d)" " (enqueued)", this, Name_, msg.c_str(), this->Context.peer().c_str(), (int)code); - auto cb = [this, code, msg]() { + auto cb = [this, code, msg, details]() { GRPC_LOG_DEBUG(Logger_, "[%p] issuing response Name# %s nodata (%s) peer# %s, grpc status# (%d)" " (pushed to grpc)", this, Name_, msg.c_str(), this->Context.peer().c_str(), (int)code); StateFunc_ = &TThis::SetFinishError; - StreamWriter_->Finish(grpc::Status(code, msg), GetGRpcTag()); + StreamWriter_->Finish(grpc::Status(code, msg, details), GetGRpcTag()); }; StreamAdaptor_->Enqueue(std::move(cb), urgent); } @@ -392,7 +392,7 @@ private: } else { //This request has not been counted SkipUpdateCountersOnError = true; - FinishGrpcStatus(grpc::StatusCode::RESOURCE_EXHAUSTED, "no resource", true); + FinishGrpcStatus(grpc::StatusCode::RESOURCE_EXHAUSTED, "no resource", "", true); } return true; } |