Skip to content

Commit 7432fd0

Browse files
committed
refactor grpc: intrusive CallData
commit_hash:1966157bea393d66fa7195ed9a8ea03ef6c40e54
1 parent 571b8ca commit 7432fd0

File tree

10 files changed

+171
-283
lines changed

10 files changed

+171
-283
lines changed

.mapping.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2486,7 +2486,6 @@
24862486
"grpc/include/userver/ugrpc/server/component_list.hpp":"taxi/uservices/userver/grpc/include/userver/ugrpc/server/component_list.hpp",
24872487
"grpc/include/userver/ugrpc/server/exceptions.hpp":"taxi/uservices/userver/grpc/include/userver/ugrpc/server/exceptions.hpp",
24882488
"grpc/include/userver/ugrpc/server/generic_service_base.hpp":"taxi/uservices/userver/grpc/include/userver/ugrpc/server/generic_service_base.hpp",
2489-
"grpc/include/userver/ugrpc/server/impl/async_method_invocation.hpp":"taxi/uservices/userver/grpc/include/userver/ugrpc/server/impl/async_method_invocation.hpp",
24902489
"grpc/include/userver/ugrpc/server/impl/async_methods.hpp":"taxi/uservices/userver/grpc/include/userver/ugrpc/server/impl/async_methods.hpp",
24912490
"grpc/include/userver/ugrpc/server/impl/call_processor.hpp":"taxi/uservices/userver/grpc/include/userver/ugrpc/server/impl/call_processor.hpp",
24922491
"grpc/include/userver/ugrpc/server/impl/call_state.hpp":"taxi/uservices/userver/grpc/include/userver/ugrpc/server/impl/call_state.hpp",
@@ -2636,7 +2635,6 @@
26362635
"grpc/src/ugrpc/server/component_list.cpp":"taxi/uservices/userver/grpc/src/ugrpc/server/component_list.cpp",
26372636
"grpc/src/ugrpc/server/exceptions.cpp":"taxi/uservices/userver/grpc/src/ugrpc/server/exceptions.cpp",
26382637
"grpc/src/ugrpc/server/generic_service_base.cpp":"taxi/uservices/userver/grpc/src/ugrpc/server/generic_service_base.cpp",
2639-
"grpc/src/ugrpc/server/impl/async_method_invocation.cpp":"taxi/uservices/userver/grpc/src/ugrpc/server/impl/async_method_invocation.cpp",
26402638
"grpc/src/ugrpc/server/impl/async_methods.cpp":"taxi/uservices/userver/grpc/src/ugrpc/server/impl/async_methods.cpp",
26412639
"grpc/src/ugrpc/server/impl/call_processor.cpp":"taxi/uservices/userver/grpc/src/ugrpc/server/impl/call_processor.cpp",
26422640
"grpc/src/ugrpc/server/impl/call_state.cpp":"taxi/uservices/userver/grpc/src/ugrpc/server/impl/call_state.cpp",

grpc/include/userver/ugrpc/server/impl/async_method_invocation.hpp

Lines changed: 0 additions & 39 deletions
This file was deleted.

grpc/include/userver/ugrpc/server/impl/call_processor.hpp

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,13 @@
33
#include <cstddef>
44
#include <exception>
55
#include <optional>
6-
#include <string_view>
76
#include <type_traits>
87
#include <utility>
98

109
#include <google/protobuf/message.h>
11-
#include <grpcpp/server_context.h>
1210

1311
#include <userver/logging/log.hpp>
1412
#include <userver/server/handlers/exceptions.hpp>
15-
#include <userver/tracing/in_place_span.hpp>
1613
#include <userver/utils/fast_scope_guard.hpp>
1714
#include <userver/utils/impl/internal_tag.hpp>
1815

@@ -28,14 +25,6 @@ USERVER_NAMESPACE_BEGIN
2825

2926
namespace ugrpc::server::impl {
3027

31-
void SetupSpan(
32-
std::optional<tracing::InPlaceSpan>& span_storage,
33-
grpc::ServerContext& context,
34-
std::string_view call_name,
35-
std::string_view service_name,
36-
std::string_view method_name
37-
);
38-
3928
grpc::Status ReportCustomError(const USERVER_NAMESPACE::server::handlers::CustomHandlerException& ex, CallState& state)
4029
noexcept;
4130

grpc/include/userver/ugrpc/server/impl/call_state.hpp

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#include <userver/dynamic_config/fwd.hpp>
1212
#include <userver/dynamic_config/snapshot.hpp>
1313
#include <userver/logging/fwd.hpp>
14-
#include <userver/tracing/span.hpp>
14+
#include <userver/tracing/in_place_span.hpp>
1515
#include <userver/utils/any_storage.hpp>
1616

1717
#include <userver/ugrpc/impl/statistics_scope.hpp>
@@ -37,7 +37,6 @@ struct CallParams {
3737
const std::string_view method_name;
3838
ugrpc::impl::MethodStatistics& method_statistics;
3939
ugrpc::impl::StatisticsStorage& statistics_storage;
40-
tracing::Span& span;
4140
const Middlewares& middlewares;
4241
const dynamic_config::Source& config_source;
4342
const boost::container::flat_map<grpc::StatusCode, logging::Level>& status_codes_log_level;
@@ -47,8 +46,12 @@ struct CallParams {
4746
struct CallState : CallParams {
4847
explicit CallState(CallParams&& params);
4948

50-
tracing::Span& GetSpan() { return span; }
49+
tracing::Span& GetSpan() noexcept {
50+
UASSERT(span);
51+
return span->Get();
52+
}
5153

54+
std::optional<tracing::InPlaceSpan> span;
5255
ugrpc::impl::RpcStatisticsScope statistics_scope;
5356
std::optional<dynamic_config::Snapshot> config_snapshot;
5457
utils::AnyStorage<StorageContext> storage_context{};

grpc/include/userver/ugrpc/server/impl/codegen_definitions.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
//
66
// Do not include this header in your code, use non-impl includes instead!
77

8+
#include <array>
89
#include <string_view>
910
#include <utility>
1011

0 commit comments

Comments
 (0)