From 66fce33280f1c41ca5cf26bc6956533e64ffa9ac Mon Sep 17 00:00:00 2001 From: Craig Tiller Date: Wed, 10 Jan 2024 06:08:16 +0000 Subject: [PATCH] [transport] Move some pieces out of grpc_base --- BUILD | 19 ++++++----- src/core/BUILD | 77 +++++++++++++++++++++++++++++++++++++++++++ src/cpp/ext/gcp/BUILD | 1 + 3 files changed, 89 insertions(+), 8 deletions(-) diff --git a/BUILD b/BUILD index feb7d315176..ceb09d85861 100644 --- a/BUILD +++ b/BUILD @@ -1111,6 +1111,7 @@ grpc_cc_library( "//src/core:channel_args_preconditioning", "//src/core:channel_stack_type", "//src/core:default_event_engine", + "//src/core:error_utils", "//src/core:iomgr_fwd", "//src/core:iomgr_port", "//src/core:notification", @@ -1374,11 +1375,8 @@ grpc_cc_library( "//src/core:lib/surface/validate_metadata.cc", "//src/core:lib/surface/version.cc", "//src/core:lib/transport/batch_builder.cc", - "//src/core:lib/transport/connectivity_state.cc", - "//src/core:lib/transport/error_utils.cc", "//src/core:lib/transport/metadata_batch.cc", "//src/core:lib/transport/parsed_metadata.cc", - "//src/core:lib/transport/status_conversion.cc", "//src/core:lib/transport/timeout_encoding.cc", "//src/core:lib/transport/transport.cc", "//src/core:lib/transport/transport_op_string.cc", @@ -1465,13 +1463,10 @@ grpc_cc_library( "//src/core:lib/surface/validate_metadata.h", "//src/core:lib/surface/wait_for_cq_end_op.h", "//src/core:lib/transport/batch_builder.h", - "//src/core:lib/transport/connectivity_state.h", "//src/core:lib/transport/custom_metadata.h", - "//src/core:lib/transport/error_utils.h", "//src/core:lib/transport/metadata_batch.h", "//src/core:lib/transport/parsed_metadata.h", "//src/core:lib/transport/simple_slice_based_metadata.h", - "//src/core:lib/transport/status_conversion.h", "//src/core:lib/transport/timeout_encoding.h", "//src/core:lib/transport/transport.h", ] + @@ -1537,7 +1532,6 @@ grpc_cc_library( "stats", "tcp_tracer", "uri_parser", - "work_serializer", "//src/core:1999", "//src/core:activity", "//src/core:all_ok", @@ -1555,11 +1549,13 @@ grpc_cc_library( "//src/core:channel_stack_type", "//src/core:chunked_vector", "//src/core:closure", + "//src/core:connectivity_state", "//src/core:construct_destruct", "//src/core:context", "//src/core:default_event_engine", "//src/core:dual_ref_counted", "//src/core:error", + "//src/core:error_utils", "//src/core:event_engine_common", "//src/core:event_engine_memory_allocator_factory", "//src/core:event_engine_shim", @@ -1572,7 +1568,6 @@ grpc_cc_library( "//src/core:gpr_manual_constructor", "//src/core:gpr_spinlock", "//src/core:grpc_sockaddr", - "//src/core:http2_errors", "//src/core:if", "//src/core:if_list", "//src/core:init_internally", @@ -3109,12 +3104,14 @@ grpc_cc_library( "//src/core:channel_init", "//src/core:channel_stack_type", "//src/core:closure", + "//src/core:connectivity_state", "//src/core:construct_destruct", "//src/core:context", "//src/core:delegating_helper", "//src/core:dual_ref_counted", "//src/core:env", "//src/core:error", + "//src/core:error_utils", "//src/core:experiments", "//src/core:gpr_atm", "//src/core:gpr_manual_constructor", @@ -3207,6 +3204,7 @@ grpc_cc_library( "//src/core:channel_args", "//src/core:closure", "//src/core:error", + "//src/core:error_utils", "//src/core:grpc_service_config", "//src/core:grpc_sockaddr", "//src/core:iomgr_fwd", @@ -3262,6 +3260,7 @@ grpc_cc_library( "//src/core:channel_args_preconditioning", "//src/core:closure", "//src/core:error", + "//src/core:error_utils", "//src/core:handshaker_registry", "//src/core:iomgr_fwd", "//src/core:pollset_set", @@ -3631,6 +3630,7 @@ grpc_cc_library( "//src/core:race", "//src/core:slice", "//src/core:slice_buffer", + "//src/core:status_conversion", ], ) @@ -4068,7 +4068,9 @@ grpc_cc_library( "//src/core:channel_args", "//src/core:chttp2_flow_control", "//src/core:closure", + "//src/core:connectivity_state", "//src/core:error", + "//src/core:error_utils", "//src/core:experiments", "//src/core:http2_errors", "//src/core:http2_settings", @@ -4090,6 +4092,7 @@ grpc_cc_library( "//src/core:slice_buffer", "//src/core:slice_refcount", "//src/core:stats_data", + "//src/core:status_conversion", "//src/core:status_helper", "//src/core:time", "//src/core:useful", diff --git a/src/core/BUILD b/src/core/BUILD index f19a5b60cac..af1b18be641 100644 --- a/src/core/BUILD +++ b/src/core/BUILD @@ -3475,6 +3475,7 @@ grpc_cc_library( "closure", "env", "error", + "error_utils", "grpc_external_account_credentials", "grpc_lb_xds_channel_args", "grpc_oauth2_credentials", @@ -3630,6 +3631,7 @@ grpc_cc_library( "closure", "context", "error", + "error_utils", "httpcli_ssl_credentials", "json", "json_reader", @@ -3685,6 +3687,7 @@ grpc_cc_library( "closure", "env", "error", + "error_utils", "grpc_oauth2_credentials", "httpcli_ssl_credentials", "json", @@ -3948,6 +3951,7 @@ grpc_cc_library( "channel_fwd", "channel_stack_type", "closure", + "connectivity_state", "error", "exec_ctx_wakeup_scheduler", "experiments", @@ -4246,6 +4250,7 @@ grpc_cc_library( "channel_fwd", "channel_stack_type", "closure", + "connectivity_state", "context", "delegating_helper", "error", @@ -4348,9 +4353,11 @@ grpc_cc_library( deps = [ "channel_args", "closure", + "connectivity_state", "delegating_helper", "dual_ref_counted", "error", + "error_utils", "grpc_fake_credentials", "json", "json_args", @@ -4487,6 +4494,7 @@ grpc_cc_library( "channel_creds_registry", "channel_fwd", "closure", + "connectivity_state", "default_event_engine", "env", "envoy_admin_upb", @@ -4533,6 +4541,7 @@ grpc_cc_library( "envoy_type_matcher_upb", "envoy_type_upb", "error", + "error_utils", "google_rpc_status_upb", "grpc_audit_logging", "grpc_fake_credentials", @@ -4569,6 +4578,7 @@ grpc_cc_library( "rls_config_upbdefs", "slice", "slice_refcount", + "status_conversion", "status_helper", "time", "unique_type_name", @@ -4771,6 +4781,7 @@ grpc_cc_library( language = "c++", deps = [ "channel_args", + "connectivity_state", "delegating_helper", "grpc_backend_metric_data", "grpc_lb_xds_channel_args", @@ -4814,6 +4825,7 @@ grpc_cc_library( language = "c++", deps = [ "channel_args", + "connectivity_state", "delegating_helper", "grpc_resolver_xds_attributes", "json", @@ -4924,6 +4936,7 @@ grpc_cc_library( deps = [ "channel_args", "closure", + "connectivity_state", "error", "iomgr_fwd", "pollset_set", @@ -5029,6 +5042,7 @@ grpc_cc_library( language = "c++", deps = [ "channel_args", + "connectivity_state", "experiments", "health_check_client", "iomgr_fwd", @@ -5056,6 +5070,59 @@ grpc_cc_library( ], ) +grpc_cc_library( + name = "status_conversion", + srcs = ["lib/transport/status_conversion.cc"], + hdrs = ["lib/transport/status_conversion.h"], + deps = [ + "http2_errors", + "time", + "//:gpr_platform", + "//:grpc_public_hdrs", + ], +) + +grpc_cc_library( + name = "error_utils", + srcs = ["lib/transport/error_utils.cc"], + hdrs = [ + "lib/transport/error_utils.h", + ], + external_deps = ["absl/status"], + deps = [ + "error", + "http2_errors", + "status_conversion", + "status_helper", + "time", + "//:gpr", + "//:grpc_public_hdrs", + ], +) + +grpc_cc_library( + name = "connectivity_state", + srcs = [ + "lib/transport/connectivity_state.cc", + ], + hdrs = [ + "lib/transport/connectivity_state.h", + ], + external_deps = ["absl/status"], + deps = [ + "closure", + "error", + "//:debug_location", + "//:exec_ctx", + "//:gpr", + "//:grpc_public_hdrs", + "//:grpc_trace", + "//:orphanable", + "//:ref_counted_ptr", + "//:work_serializer", + ], +) + grpc_cc_library( name = "xxhash_inline", hdrs = ["lib/gprpp/xxhash_inline.h"], @@ -5084,6 +5151,7 @@ grpc_cc_library( deps = [ "channel_args", "closure", + "connectivity_state", "delegating_helper", "error", "grpc_lb_policy_pick_first", @@ -5132,6 +5200,7 @@ grpc_cc_library( language = "c++", deps = [ "channel_args", + "connectivity_state", "experiments", "grpc_lb_subchannel_list", "json", @@ -5187,6 +5256,7 @@ grpc_cc_library( language = "c++", deps = [ "channel_args", + "connectivity_state", "experiments", "grpc_backend_metric_data", "grpc_lb_subchannel_list", @@ -5254,6 +5324,7 @@ grpc_cc_library( language = "c++", deps = [ "channel_args", + "connectivity_state", "delegating_helper", "experiments", "grpc_outlier_detection_header", @@ -5298,6 +5369,7 @@ grpc_cc_library( language = "c++", deps = [ "channel_args", + "connectivity_state", "delegating_helper", "grpc_lb_address_filtering", "json", @@ -5342,6 +5414,7 @@ grpc_cc_library( language = "c++", deps = [ "channel_args", + "connectivity_state", "delegating_helper", "grpc_lb_address_filtering", "json", @@ -5389,6 +5462,7 @@ grpc_cc_library( deps = [ "channel_args", "closure", + "connectivity_state", "delegating_helper", "error", "experiments", @@ -6089,6 +6163,7 @@ grpc_cc_library( "channel_stack_type", "closure", "error", + "error_utils", "grpc_insecure_credentials", "handshaker_registry", "resolved_address", @@ -6137,6 +6212,7 @@ grpc_cc_library( "channel_args_endpoint_config", "closure", "error", + "error_utils", "grpc_insecure_credentials", "handshaker_registry", "iomgr_fwd", @@ -6189,6 +6265,7 @@ grpc_cc_library( "channel_args_preconditioning", "channel_stack_type", "closure", + "connectivity_state", "error", "experiments", "iomgr_fwd", diff --git a/src/cpp/ext/gcp/BUILD b/src/cpp/ext/gcp/BUILD index 744b8ff2119..5e21f1eb2d6 100644 --- a/src/cpp/ext/gcp/BUILD +++ b/src/cpp/ext/gcp/BUILD @@ -91,6 +91,7 @@ grpc_cc_library( "//:grpc_public_hdrs", "//src/core:env", "//src/core:error", + "//src/core:error_utils", "//src/core:json", "//src/core:json_args", "//src/core:json_object_loader",