grpc 1.64.3 → 1.65.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Makefile +57 -58
- data/include/grpc/event_engine/event_engine.h +13 -6
- data/include/grpc/impl/channel_arg_names.h +7 -3
- data/include/grpc/module.modulemap +1 -0
- data/include/grpc/passive_listener.h +62 -0
- data/include/grpc/support/log.h +7 -17
- data/include/grpc/support/port_platform.h +3 -0
- data/src/core/channelz/channel_trace.cc +1 -1
- data/src/core/channelz/channel_trace.h +1 -1
- data/src/core/channelz/channelz.cc +3 -3
- data/src/core/channelz/channelz.h +7 -7
- data/src/core/channelz/channelz_registry.cc +4 -3
- data/src/core/client_channel/backup_poller.cc +4 -5
- data/src/core/client_channel/client_channel.cc +1324 -0
- data/src/core/client_channel/client_channel.h +243 -0
- data/src/core/client_channel/client_channel_filter.cc +266 -709
- data/src/core/client_channel/client_channel_filter.h +11 -64
- data/src/core/client_channel/client_channel_internal.h +16 -5
- data/src/core/client_channel/client_channel_plugin.cc +1 -14
- data/src/core/client_channel/client_channel_service_config.h +3 -3
- data/src/core/client_channel/config_selector.cc +1 -1
- data/src/core/client_channel/config_selector.h +1 -1
- data/src/core/client_channel/dynamic_filters.cc +3 -3
- data/src/core/client_channel/dynamic_filters.h +1 -3
- data/src/core/client_channel/load_balanced_call_destination.cc +336 -0
- data/src/core/client_channel/load_balanced_call_destination.h +49 -0
- data/src/core/client_channel/retry_filter.cc +2 -9
- data/src/core/client_channel/retry_filter.h +2 -7
- data/src/core/client_channel/retry_filter_legacy_call_data.cc +65 -72
- data/src/core/client_channel/retry_filter_legacy_call_data.h +0 -2
- data/src/core/client_channel/retry_service_config.cc +4 -5
- data/src/core/client_channel/retry_service_config.h +3 -3
- data/src/core/client_channel/subchannel.cc +220 -112
- data/src/core/client_channel/subchannel.h +31 -18
- data/src/core/client_channel/subchannel_pool_interface.cc +0 -2
- data/src/core/client_channel/subchannel_pool_interface.h +2 -4
- data/src/core/client_channel/subchannel_stream_client.cc +36 -49
- data/src/core/client_channel/subchannel_stream_client.h +2 -4
- data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +7 -10
- data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +1 -0
- data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +7 -0
- data/src/core/ext/filters/census/grpc_context.cc +2 -4
- data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +8 -15
- data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +2 -0
- data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +3 -7
- data/src/core/ext/filters/fault_injection/fault_injection_filter.h +1 -0
- data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +3 -3
- data/src/core/ext/filters/http/client/http_client_filter.cc +1 -0
- data/src/core/ext/filters/http/client/http_client_filter.h +1 -0
- data/src/core/ext/filters/http/client_authority_filter.cc +1 -0
- data/src/core/ext/filters/http/client_authority_filter.h +1 -0
- data/src/core/ext/filters/http/message_compress/compression_filter.cc +10 -15
- data/src/core/ext/filters/http/message_compress/compression_filter.h +2 -0
- data/src/core/ext/filters/http/server/http_server_filter.cc +2 -2
- data/src/core/ext/filters/http/server/http_server_filter.h +1 -0
- data/src/core/ext/filters/message_size/message_size_filter.cc +6 -9
- data/src/core/ext/filters/message_size/message_size_filter.h +6 -6
- data/src/core/ext/filters/rbac/rbac_filter.cc +2 -5
- data/src/core/ext/filters/rbac/rbac_filter.h +1 -0
- data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +2 -2
- data/src/core/ext/filters/rbac/rbac_service_config_parser.h +1 -1
- data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +2 -6
- data/src/core/ext/filters/stateful_session/stateful_session_filter.h +1 -0
- data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +3 -3
- data/src/core/ext/transport/chttp2/alpn/alpn.cc +1 -1
- data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +8 -25
- data/src/core/ext/transport/chttp2/client/chttp2_connector.h +0 -5
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +223 -148
- data/src/core/ext/transport/chttp2/server/chttp2_server.h +33 -0
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +131 -107
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +8 -8
- data/src/core/ext/transport/chttp2/transport/context_list_entry.h +1 -1
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +2 -4
- data/src/core/ext/transport/chttp2/transport/flow_control.h +0 -2
- data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -6
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +1 -2
- data/src/core/ext/transport/chttp2/transport/frame_settings.cc +9 -5
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +5 -4
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +9 -2
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +32 -43
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +1 -3
- data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +3 -8
- data/src/core/ext/transport/chttp2/transport/http2_settings.cc +1 -1
- data/src/core/ext/transport/chttp2/transport/http2_settings.h +1 -1
- data/src/core/ext/transport/chttp2/transport/internal.h +29 -19
- data/src/core/ext/transport/chttp2/transport/parsing.cc +15 -25
- data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +0 -2
- data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +0 -2
- data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +29 -13
- data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +5 -4
- data/src/core/ext/transport/chttp2/transport/stream_lists.cc +3 -5
- data/src/core/ext/transport/chttp2/transport/writing.cc +24 -25
- data/src/core/ext/transport/inproc/inproc_transport.cc +56 -32
- data/src/core/ext/transport/inproc/inproc_transport.h +1 -3
- data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +13 -15
- data/src/core/ext/transport/inproc/legacy_inproc_transport.h +0 -2
- data/src/core/handshaker/handshaker.cc +6 -14
- data/src/core/handshaker/http_connect/http_connect_handshaker.cc +9 -17
- data/src/core/handshaker/http_connect/http_proxy_mapper.cc +3 -2
- data/src/core/handshaker/security/secure_endpoint.cc +38 -32
- data/src/core/handshaker/security/secure_endpoint.h +0 -2
- data/src/core/handshaker/security/security_handshaker.cc +25 -37
- data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +2 -1
- data/src/core/lib/address_utils/parse_address.cc +27 -39
- data/src/core/lib/address_utils/sockaddr_utils.cc +5 -6
- data/src/core/lib/avl/avl.h +1 -1
- data/src/core/lib/channel/channel_args.cc +13 -17
- data/src/core/lib/channel/channel_args.h +19 -8
- data/src/core/lib/channel/channel_stack.cc +5 -63
- data/src/core/lib/channel/channel_stack.h +13 -37
- data/src/core/lib/channel/channel_stack_builder.h +0 -5
- data/src/core/lib/channel/channel_stack_builder_impl.cc +0 -142
- data/src/core/lib/channel/channel_stack_builder_impl.h +0 -2
- data/src/core/lib/channel/connected_channel.cc +37 -676
- data/src/core/lib/channel/promise_based_filter.cc +41 -47
- data/src/core/lib/channel/promise_based_filter.h +124 -477
- data/src/core/lib/channel/status_util.cc +1 -1
- data/src/core/lib/compression/compression.cc +1 -1
- data/src/core/lib/compression/message_compress.cc +6 -6
- data/src/core/lib/config/config_vars.cc +3 -8
- data/src/core/lib/config/config_vars.h +1 -5
- data/src/core/lib/debug/event_log.h +1 -1
- data/src/core/lib/debug/trace.cc +43 -59
- data/src/core/lib/debug/trace.h +2 -97
- data/src/core/lib/debug/trace_flags.cc +255 -0
- data/src/core/lib/debug/trace_flags.h +133 -0
- data/src/core/lib/debug/trace_impl.h +115 -0
- data/src/core/lib/event_engine/ares_resolver.cc +5 -7
- data/src/core/lib/event_engine/ares_resolver.h +1 -3
- data/src/core/lib/event_engine/cf_engine/cf_engine.cc +1 -1
- data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +17 -22
- data/src/core/lib/event_engine/event_engine.cc +29 -4
- data/src/core/lib/event_engine/extensions/supports_fd.h +7 -0
- data/src/core/lib/event_engine/extensions/tcp_trace.h +43 -0
- data/src/core/lib/event_engine/forkable.cc +4 -5
- data/src/core/lib/event_engine/forkable.h +0 -11
- data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +10 -11
- data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +4 -3
- data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +1 -1
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +19 -33
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +3 -2
- data/src/core/lib/event_engine/posix_engine/posix_engine.cc +24 -7
- data/src/core/lib/event_engine/posix_engine/posix_engine.h +2 -0
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +14 -16
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +18 -22
- data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +13 -17
- data/src/core/lib/event_engine/posix_engine/timer.cc +1 -1
- data/src/core/lib/event_engine/posix_engine/timer_manager.cc +4 -6
- data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +2 -1
- data/src/core/lib/event_engine/shim.cc +1 -1
- data/src/core/lib/event_engine/tcp_socket_utils.cc +6 -8
- data/src/core/lib/event_engine/thread_local.h +1 -1
- data/src/core/lib/event_engine/thread_pool/thread_count.h +1 -1
- data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +19 -21
- data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +3 -6
- data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +14 -13
- data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +4 -3
- data/src/core/lib/event_engine/trace.h +6 -17
- data/src/core/lib/event_engine/windows/iocp.h +1 -1
- data/src/core/lib/event_engine/windows/win_socket.cc +23 -17
- data/src/core/lib/event_engine/windows/win_socket.h +4 -5
- data/src/core/lib/event_engine/windows/windows_endpoint.cc +6 -9
- data/src/core/lib/event_engine/windows/windows_engine.cc +201 -87
- data/src/core/lib/event_engine/windows/windows_engine.h +136 -25
- data/src/core/lib/event_engine/windows/windows_listener.cc +12 -23
- data/src/core/lib/experiments/experiments.cc +35 -151
- data/src/core/lib/experiments/experiments.h +12 -45
- data/src/core/lib/gprpp/bitset.h +1 -1
- data/src/core/lib/gprpp/crash.cc +2 -3
- data/src/core/lib/gprpp/dual_ref_counted.h +45 -33
- data/src/core/lib/gprpp/dump_args.cc +54 -0
- data/src/core/lib/gprpp/dump_args.h +69 -0
- data/src/core/lib/gprpp/glob.cc +70 -0
- data/src/core/lib/gprpp/glob.h +29 -0
- data/src/core/lib/gprpp/per_cpu.cc +1 -1
- data/src/core/lib/gprpp/posix/stat.cc +3 -4
- data/src/core/lib/gprpp/posix/thd.cc +8 -9
- data/src/core/lib/gprpp/ref_counted.h +30 -22
- data/src/core/lib/gprpp/single_set_ptr.h +5 -3
- data/src/core/lib/gprpp/status_helper.cc +11 -30
- data/src/core/lib/gprpp/status_helper.h +3 -31
- data/src/core/lib/gprpp/time.cc +3 -4
- data/src/core/lib/gprpp/time.h +3 -2
- data/src/core/lib/gprpp/unique_type_name.h +1 -1
- data/src/core/lib/gprpp/validation_errors.cc +10 -1
- data/src/core/lib/gprpp/validation_errors.h +11 -0
- data/src/core/lib/gprpp/windows/stat.cc +3 -4
- data/src/core/lib/gprpp/windows/thd.cc +3 -2
- data/src/core/lib/gprpp/work_serializer.cc +48 -57
- data/src/core/lib/iomgr/buffer_list.cc +4 -2
- data/src/core/lib/iomgr/call_combiner.cc +18 -27
- data/src/core/lib/iomgr/call_combiner.h +1 -3
- data/src/core/lib/iomgr/cfstream_handle.cc +4 -6
- data/src/core/lib/iomgr/closure.h +2 -4
- data/src/core/lib/iomgr/combiner.cc +6 -8
- data/src/core/lib/iomgr/combiner.h +0 -2
- data/src/core/lib/iomgr/endpoint.cc +0 -6
- data/src/core/lib/iomgr/endpoint.h +0 -2
- data/src/core/lib/iomgr/endpoint_cfstream.cc +19 -41
- data/src/core/lib/iomgr/endpoint_pair_posix.cc +1 -1
- data/src/core/lib/iomgr/endpoint_pair_windows.cc +5 -6
- data/src/core/lib/iomgr/error.cc +13 -21
- data/src/core/lib/iomgr/error.h +1 -1
- data/src/core/lib/iomgr/ev_apple.cc +3 -5
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +43 -42
- data/src/core/lib/iomgr/ev_poll_posix.cc +38 -29
- data/src/core/lib/iomgr/ev_posix.cc +8 -9
- data/src/core/lib/iomgr/ev_posix.h +10 -7
- data/src/core/lib/iomgr/event_engine_shims/closure.cc +2 -2
- data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +14 -28
- data/src/core/lib/iomgr/exec_ctx.cc +2 -2
- data/src/core/lib/iomgr/exec_ctx.h +1 -1
- data/src/core/lib/iomgr/executor.cc +6 -15
- data/src/core/lib/iomgr/executor.h +1 -1
- data/src/core/lib/iomgr/fork_posix.cc +8 -10
- data/src/core/lib/iomgr/fork_windows.cc +3 -1
- data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +2 -3
- data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +3 -5
- data/src/core/lib/iomgr/internal_errqueue.cc +4 -2
- data/src/core/lib/iomgr/iocp_windows.cc +4 -3
- data/src/core/lib/iomgr/iomgr.cc +13 -17
- data/src/core/lib/iomgr/lockfree_event.cc +3 -5
- data/src/core/lib/iomgr/pollset.h +0 -2
- data/src/core/lib/iomgr/pollset_windows.cc +0 -2
- data/src/core/lib/iomgr/resolve_address_posix.cc +7 -14
- data/src/core/lib/iomgr/resolve_address_windows.cc +1 -1
- data/src/core/lib/iomgr/socket_factory_posix.cc +1 -1
- data/src/core/lib/iomgr/socket_mutator.cc +1 -1
- data/src/core/lib/iomgr/socket_utils_common_posix.cc +11 -17
- data/src/core/lib/iomgr/socket_windows.cc +4 -6
- data/src/core/lib/iomgr/tcp_client_cfstream.cc +3 -5
- data/src/core/lib/iomgr/tcp_client_posix.cc +9 -15
- data/src/core/lib/iomgr/tcp_client_windows.cc +2 -4
- data/src/core/lib/iomgr/tcp_posix.cc +57 -84
- data/src/core/lib/iomgr/tcp_posix.h +0 -2
- data/src/core/lib/iomgr/tcp_server_posix.cc +3 -3
- data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +4 -6
- data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +7 -7
- data/src/core/lib/iomgr/tcp_server_windows.cc +10 -16
- data/src/core/lib/iomgr/tcp_windows.cc +25 -41
- data/src/core/lib/iomgr/timer_generic.cc +17 -20
- data/src/core/lib/iomgr/timer_heap.cc +1 -1
- data/src/core/lib/iomgr/timer_manager.cc +17 -30
- data/src/core/lib/iomgr/unix_sockets_posix.cc +1 -1
- data/src/core/lib/iomgr/vsock.cc +1 -1
- data/src/core/lib/iomgr/wakeup_fd_pipe.cc +3 -3
- data/src/core/lib/promise/activity.h +27 -4
- data/src/core/lib/promise/cancel_callback.h +24 -0
- data/src/core/lib/promise/context.h +11 -0
- data/src/core/lib/promise/detail/basic_seq.h +1 -2
- data/src/core/lib/promise/detail/join_state.h +354 -398
- data/src/core/lib/promise/detail/promise_like.h +6 -5
- data/src/core/lib/promise/detail/seq_state.h +1178 -1178
- data/src/core/lib/promise/for_each.h +6 -6
- data/src/core/lib/promise/interceptor_list.h +6 -7
- data/src/core/lib/promise/latch.h +9 -9
- data/src/core/lib/promise/map.h +17 -0
- data/src/core/lib/promise/observable.h +182 -0
- data/src/core/lib/promise/party.cc +7 -8
- data/src/core/lib/promise/party.h +10 -8
- data/src/core/lib/promise/pipe.h +16 -35
- data/src/core/lib/promise/promise.h +1 -0
- data/src/core/lib/promise/status_flag.h +2 -0
- data/src/core/lib/resource_quota/arena.cc +56 -79
- data/src/core/lib/resource_quota/arena.h +118 -209
- data/src/core/lib/resource_quota/memory_quota.cc +12 -13
- data/src/core/lib/resource_quota/memory_quota.h +2 -3
- data/src/core/lib/resource_quota/periodic_update.cc +1 -1
- data/src/core/lib/resource_quota/resource_quota.h +1 -1
- data/src/core/lib/security/authorization/authorization_policy_provider.h +1 -1
- data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +1 -1
- data/src/core/lib/security/authorization/evaluate_args.cc +6 -8
- data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +5 -6
- data/src/core/lib/security/authorization/grpc_server_authz_filter.h +1 -0
- data/src/core/lib/security/authorization/matchers.cc +3 -3
- data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +2 -2
- data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +2 -3
- data/src/core/lib/security/context/security_context.cc +12 -13
- data/src/core/lib/security/context/security_context.h +31 -8
- data/src/core/lib/security/credentials/alts/alts_credentials.h +1 -1
- data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +3 -1
- data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +2 -3
- data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +5 -5
- data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +3 -3
- data/src/core/lib/security/credentials/call_creds_util.cc +2 -1
- data/src/core/lib/security/credentials/channel_creds_registry.h +2 -2
- data/src/core/lib/security/credentials/channel_creds_registry_init.cc +5 -3
- data/src/core/lib/security/credentials/composite/composite_credentials.h +1 -1
- data/src/core/lib/security/credentials/credentials.cc +6 -6
- data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +4 -4
- data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +2 -2
- data/src/core/lib/security/credentials/external/external_account_credentials.cc +9 -11
- data/src/core/lib/security/credentials/external/external_account_credentials.h +3 -3
- data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +2 -2
- data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +4 -4
- data/src/core/lib/security/credentials/external/url_external_account_credentials.h +1 -1
- data/src/core/lib/security/credentials/fake/fake_credentials.h +1 -1
- data/src/core/lib/security/credentials/google_default/credentials_generic.cc +3 -3
- data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +11 -11
- data/src/core/lib/security/credentials/google_default/google_default_credentials.h +1 -1
- data/src/core/lib/security/credentials/iam/iam_credentials.h +1 -1
- data/src/core/lib/security/credentials/jwt/json_token.cc +14 -15
- data/src/core/lib/security/credentials/jwt/json_token.h +1 -1
- data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +6 -5
- data/src/core/lib/security/credentials/jwt/jwt_credentials.h +1 -1
- data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +50 -54
- data/src/core/lib/security/credentials/jwt/jwt_verifier.h +1 -1
- data/src/core/lib/security/credentials/local/local_credentials.h +1 -1
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +12 -11
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +4 -4
- data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +6 -7
- data/src/core/lib/security/credentials/plugin/plugin_credentials.h +1 -3
- data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +15 -21
- data/src/core/lib/security/credentials/ssl/ssl_credentials.h +1 -1
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +21 -30
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +1 -1
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +1 -1
- data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +4 -4
- data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +3 -5
- data/src/core/lib/security/credentials/tls/tls_credentials.cc +14 -16
- data/src/core/lib/security/credentials/tls/tls_utils.cc +4 -4
- data/src/core/lib/security/credentials/xds/xds_credentials.cc +1 -1
- data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +13 -16
- data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +15 -12
- data/src/core/lib/security/security_connector/load_system_roots_supported.cc +6 -6
- data/src/core/lib/security/security_connector/load_system_roots_windows.cc +1 -1
- data/src/core/lib/security/security_connector/local/local_security_connector.cc +8 -12
- data/src/core/lib/security/security_connector/security_connector.cc +1 -4
- data/src/core/lib/security/security_connector/security_connector.h +1 -3
- data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +17 -19
- data/src/core/lib/security/security_connector/ssl_utils.cc +19 -21
- data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +29 -40
- data/src/core/lib/security/transport/auth_filters.h +1 -0
- data/src/core/lib/security/transport/client_auth_filter.cc +7 -13
- data/src/core/lib/security/transport/server_auth_filter.cc +3 -8
- data/src/core/lib/security/util/json_util.h +1 -1
- data/src/core/lib/slice/slice.h +1 -1
- data/src/core/lib/slice/slice_refcount.h +2 -4
- data/src/core/lib/slice/slice_string_helpers.cc +1 -1
- data/src/core/lib/surface/api_trace.h +1 -3
- data/src/core/lib/surface/call.cc +64 -3738
- data/src/core/lib/surface/call.h +41 -143
- data/src/core/lib/surface/call_log_batch.cc +1 -1
- data/src/core/lib/surface/call_utils.cc +276 -0
- data/src/core/lib/surface/call_utils.h +449 -0
- data/src/core/lib/surface/channel.cc +8 -3
- data/src/core/lib/surface/channel.h +10 -7
- data/src/core/lib/surface/channel_create.cc +14 -6
- data/src/core/lib/surface/channel_create.h +3 -2
- data/src/core/lib/surface/channel_init.cc +21 -77
- data/src/core/lib/surface/channel_init.h +19 -97
- data/src/core/lib/surface/client_call.cc +419 -0
- data/src/core/lib/surface/client_call.h +180 -0
- data/src/core/lib/surface/completion_queue.cc +28 -33
- data/src/core/lib/surface/completion_queue.h +0 -8
- data/src/core/lib/surface/filter_stack_call.cc +1157 -0
- data/src/core/lib/surface/filter_stack_call.h +369 -0
- data/src/core/lib/surface/init.cc +7 -6
- data/src/core/lib/surface/lame_client.cc +1 -1
- data/src/core/lib/surface/legacy_channel.cc +40 -27
- data/src/core/lib/surface/legacy_channel.h +9 -18
- data/src/core/lib/surface/server_call.cc +222 -0
- data/src/core/lib/surface/server_call.h +167 -0
- data/src/core/lib/surface/version.cc +2 -2
- data/src/core/lib/transport/bdp_estimator.cc +3 -5
- data/src/core/lib/transport/bdp_estimator.h +2 -4
- data/src/core/lib/transport/call_arena_allocator.h +9 -7
- data/src/core/lib/transport/call_destination.h +76 -0
- data/src/core/lib/transport/call_filters.cc +28 -10
- data/src/core/lib/transport/call_filters.h +128 -22
- data/src/core/lib/transport/call_spine.cc +5 -6
- data/src/core/lib/transport/call_spine.h +159 -334
- data/src/core/lib/transport/connectivity_state.cc +8 -10
- data/src/core/lib/transport/connectivity_state.h +0 -2
- data/src/core/lib/transport/interception_chain.cc +155 -0
- data/src/core/lib/transport/interception_chain.h +236 -0
- data/src/core/lib/transport/metadata_batch.h +10 -1
- data/src/core/lib/transport/metadata_info.h +1 -1
- data/src/core/lib/transport/transport.cc +3 -6
- data/src/core/lib/transport/transport.h +43 -40
- data/src/core/load_balancing/child_policy_handler.cc +8 -8
- data/src/core/load_balancing/endpoint_list.cc +5 -5
- data/src/core/load_balancing/endpoint_list.h +1 -1
- data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +1 -0
- data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +1 -0
- data/src/core/load_balancing/grpclb/grpclb.cc +25 -29
- data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc +1 -1
- data/src/core/load_balancing/grpclb/load_balancer_api.cc +3 -4
- data/src/core/load_balancing/health_check_client.cc +10 -13
- data/src/core/load_balancing/lb_policy.cc +5 -8
- data/src/core/load_balancing/lb_policy.h +19 -3
- data/src/core/load_balancing/lb_policy_factory.h +1 -1
- data/src/core/load_balancing/lb_policy_registry.cc +2 -3
- data/src/core/load_balancing/lb_policy_registry.h +1 -1
- data/src/core/load_balancing/oob_backend_metric.cc +2 -4
- data/src/core/load_balancing/outlier_detection/outlier_detection.cc +33 -35
- data/src/core/load_balancing/outlier_detection/outlier_detection.h +3 -3
- data/src/core/load_balancing/pick_first/pick_first.cc +65 -65
- data/src/core/load_balancing/priority/priority.cc +26 -28
- data/src/core/load_balancing/ring_hash/ring_hash.cc +11 -13
- data/src/core/load_balancing/ring_hash/ring_hash.h +3 -3
- data/src/core/load_balancing/rls/rls.cc +82 -82
- data/src/core/load_balancing/round_robin/round_robin.cc +17 -20
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +54 -43
- data/src/core/load_balancing/weighted_target/weighted_target.cc +21 -24
- data/src/core/load_balancing/xds/cds.cc +14 -16
- data/src/core/load_balancing/xds/xds_cluster_impl.cc +16 -18
- data/src/core/load_balancing/xds/xds_cluster_manager.cc +15 -17
- data/src/core/load_balancing/xds/xds_override_host.cc +40 -41
- data/src/core/load_balancing/xds/xds_override_host.h +3 -3
- data/src/core/load_balancing/xds/xds_wrr_locality.cc +10 -12
- data/src/core/plugin_registry/grpc_plugin_registry.cc +5 -1
- data/src/core/resolver/binder/binder_resolver.cc +3 -2
- data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +3 -2
- data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +1 -1
- data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +7 -14
- data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +1 -5
- data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
- data/src/core/resolver/dns/dns_resolver_plugin.cc +6 -5
- data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +4 -9
- data/src/core/resolver/dns/event_engine/service_config_helper.cc +5 -5
- data/src/core/resolver/dns/native/dns_resolver.cc +8 -9
- data/src/core/resolver/endpoint_addresses.cc +1 -1
- data/src/core/resolver/fake/fake_resolver.cc +1 -1
- data/src/core/resolver/fake/fake_resolver.h +1 -1
- data/src/core/resolver/google_c2p/google_c2p_resolver.cc +13 -14
- data/src/core/resolver/polling_resolver.cc +30 -35
- data/src/core/resolver/resolver.cc +2 -6
- data/src/core/resolver/resolver.h +0 -2
- data/src/core/resolver/resolver_registry.cc +6 -8
- data/src/core/resolver/sockaddr/sockaddr_resolver.cc +3 -3
- data/src/core/resolver/xds/xds_dependency_manager.cc +22 -23
- data/src/core/resolver/xds/xds_resolver.cc +13 -15
- data/src/core/server/server.cc +269 -389
- data/src/core/server/server.h +37 -19
- data/src/core/server/server_call_tracer_filter.cc +7 -14
- data/src/core/server/server_config_selector.h +1 -1
- data/src/core/server/server_config_selector_filter.cc +3 -3
- data/src/core/server/server_interface.h +2 -0
- data/src/core/server/xds_channel_stack_modifier.cc +1 -1
- data/src/core/server/xds_channel_stack_modifier.h +1 -1
- data/src/core/server/xds_server_config_fetcher.cc +1 -4
- data/src/core/service_config/service_config.h +1 -1
- data/src/core/service_config/service_config_call_data.h +13 -11
- data/src/core/service_config/service_config_channel_arg_filter.cc +6 -4
- data/src/core/service_config/service_config_impl.cc +5 -5
- data/src/core/service_config/service_config_impl.h +1 -1
- data/src/core/service_config/service_config_parser.cc +3 -6
- data/src/core/service_config/service_config_parser.h +1 -1
- data/src/core/{lib/channel → telemetry}/call_tracer.cc +20 -30
- data/src/core/{lib/channel → telemetry}/call_tracer.h +32 -9
- data/src/core/{lib/debug → telemetry}/histogram_view.cc +1 -1
- data/src/core/{lib/debug → telemetry}/histogram_view.h +3 -3
- data/src/core/telemetry/metrics.cc +178 -0
- data/src/core/telemetry/metrics.h +562 -0
- data/src/core/{lib/debug → telemetry}/stats.cc +1 -1
- data/src/core/{lib/debug → telemetry}/stats.h +5 -5
- data/src/core/{lib/debug → telemetry}/stats_data.cc +1 -1
- data/src/core/{lib/debug → telemetry}/stats_data.h +4 -4
- data/src/core/{lib/channel → telemetry}/tcp_tracer.h +3 -3
- data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +12 -13
- data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +25 -27
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +32 -33
- data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -1
- data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -1
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +5 -4
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +5 -3
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +1 -1
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +4 -3
- data/src/core/tsi/fake_transport_security.cc +14 -17
- data/src/core/tsi/local_transport_security.cc +6 -5
- data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +4 -4
- data/src/core/tsi/ssl_transport_security.cc +76 -81
- data/src/core/tsi/ssl_transport_security_utils.cc +74 -18
- data/src/core/tsi/ssl_transport_security_utils.h +11 -0
- data/src/core/tsi/transport_security.cc +0 -4
- data/src/core/tsi/transport_security.h +0 -2
- data/src/core/tsi/transport_security_interface.h +0 -4
- data/src/core/{lib/gpr → util}/alloc.h +3 -3
- data/src/core/{lib/gpr → util}/android/log.cc +0 -19
- data/src/core/{lib/gpr → util}/atm.cc +1 -1
- data/src/core/{ext/gcp/metadata_query.cc → util/gcp_metadata_query.cc} +25 -26
- data/src/core/{ext/gcp/metadata_query.h → util/gcp_metadata_query.h} +11 -11
- data/src/core/{lib/http → util/http_client}/format_request.cc +4 -3
- data/src/core/{lib/http → util/http_client}/format_request.h +6 -5
- data/src/core/{lib/http → util/http_client}/httpcli.cc +9 -10
- data/src/core/{lib/http → util/http_client}/httpcli.h +6 -5
- data/src/core/{lib/http → util/http_client}/httpcli_security_connector.cc +9 -9
- data/src/core/{lib/http → util/http_client}/httpcli_ssl_credentials.h +5 -4
- data/src/core/{lib/http → util/http_client}/parser.cc +4 -5
- data/src/core/{lib/http → util/http_client}/parser.h +5 -6
- data/src/core/{lib → util}/json/json.h +5 -4
- data/src/core/{lib → util}/json/json_args.h +5 -5
- data/src/core/{lib → util}/json/json_channel_args.h +6 -6
- data/src/core/{lib → util}/json/json_object_loader.cc +3 -2
- data/src/core/{lib → util}/json/json_object_loader.h +7 -7
- data/src/core/{lib → util}/json/json_reader.cc +3 -2
- data/src/core/{lib → util}/json/json_reader.h +6 -6
- data/src/core/{lib → util}/json/json_util.cc +4 -4
- data/src/core/{lib → util}/json/json_util.h +6 -6
- data/src/core/{lib → util}/json/json_writer.cc +3 -3
- data/src/core/{lib → util}/json/json_writer.h +6 -6
- data/src/core/{lib/gpr → util}/linux/log.cc +0 -45
- data/src/core/util/log.cc +165 -0
- data/src/core/{lib/gpr → util}/msys/tmpfile.cc +2 -2
- data/src/core/{lib/gpr → util}/posix/cpu.cc +1 -1
- data/src/core/{lib/gpr → util}/posix/log.cc +0 -42
- data/src/core/{lib/gpr → util}/posix/time.cc +1 -1
- data/src/core/{lib/gpr → util}/posix/tmpfile.cc +2 -2
- data/src/core/{lib/gpr → util}/spinlock.h +3 -3
- data/src/core/{lib/gpr → util}/string.cc +2 -2
- data/src/core/{lib/gpr → util}/string.h +3 -3
- data/src/core/{lib/gpr → util}/time_precise.cc +1 -1
- data/src/core/{lib/gpr → util}/time_precise.h +3 -3
- data/src/core/{lib/gpr → util}/tmpfile.h +3 -3
- data/src/core/{lib/gpr → util}/useful.h +3 -3
- data/src/core/{lib/gpr → util}/windows/log.cc +1 -44
- data/src/core/{lib/gpr → util}/windows/string.cc +1 -1
- data/src/core/{lib/gpr → util}/windows/string_util.cc +1 -1
- data/src/core/{lib/gpr → util}/windows/time.cc +1 -1
- data/src/core/{lib/gpr → util}/windows/tmpfile.cc +1 -1
- data/src/core/xds/grpc/certificate_provider_store.cc +3 -3
- data/src/core/xds/grpc/certificate_provider_store.h +4 -4
- data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +3 -3
- data/src/core/xds/grpc/file_watcher_certificate_provider_factory.h +3 -3
- data/src/core/xds/grpc/xds_audit_logger_registry.h +1 -1
- data/src/core/xds/grpc/xds_bootstrap_grpc.cc +5 -5
- data/src/core/xds/grpc/xds_bootstrap_grpc.h +3 -3
- data/src/core/xds/grpc/xds_certificate_provider.h +1 -1
- data/src/core/xds/grpc/xds_client_grpc.cc +27 -23
- data/src/core/xds/grpc/xds_client_grpc.h +2 -2
- data/src/core/xds/grpc/xds_cluster.cc +4 -5
- data/src/core/xds/grpc/xds_cluster.h +1 -1
- data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +2 -2
- data/src/core/xds/grpc/xds_cluster_specifier_plugin.h +1 -1
- data/src/core/xds/grpc/xds_common_types.cc +1 -1
- data/src/core/xds/grpc/xds_common_types.h +1 -1
- data/src/core/xds/grpc/xds_endpoint.cc +4 -5
- data/src/core/xds/grpc/xds_http_fault_filter.cc +2 -2
- data/src/core/xds/grpc/xds_http_filters.h +2 -2
- data/src/core/xds/grpc/xds_http_rbac_filter.cc +3 -3
- data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +2 -2
- data/src/core/xds/grpc/xds_lb_policy_registry.h +1 -1
- data/src/core/xds/grpc/xds_listener.cc +4 -6
- data/src/core/xds/grpc/xds_route_config.cc +7 -8
- data/src/core/xds/grpc/xds_transport_grpc.cc +2 -2
- data/src/core/xds/grpc/xds_transport_grpc.h +1 -1
- data/src/core/xds/xds_client/xds_api.cc +5 -9
- data/src/core/xds/xds_client/xds_bootstrap.cc +1 -1
- data/src/core/xds/xds_client/xds_bootstrap.h +1 -1
- data/src/core/xds/xds_client/xds_client.cc +39 -45
- data/src/core/xds/xds_client/xds_client.h +0 -3
- data/src/core/xds/xds_client/xds_client_stats.cc +6 -6
- data/src/core/xds/xds_client/xds_client_stats.h +2 -2
- data/src/ruby/bin/math_pb.rb +1 -22
- data/src/ruby/ext/grpc/rb_call.c +8 -1
- data/src/ruby/ext/grpc/rb_completion_queue.c +15 -32
- data/src/ruby/ext/grpc/rb_completion_queue.h +7 -1
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +2 -2
- data/src/ruby/ext/grpc/rb_server.c +39 -22
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/pb/grpc/health/v1/health_pb.rb +1 -22
- data/src/ruby/pb/grpc/testing/duplicate/echo_duplicate_services_pb.rb +5 -5
- data/src/ruby/pb/grpc/testing/metrics_pb.rb +10 -19
- data/src/ruby/pb/grpc/testing/metrics_services_pb.rb +5 -5
- data/src/ruby/pb/src/proto/grpc/testing/empty_pb.rb +1 -22
- data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +1 -22
- data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +1 -22
- data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +4 -0
- data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +12 -12
- data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +66 -41
- data/third_party/boringssl-with-bazel/src/crypto/dilithium/dilithium.c +1497 -0
- data/third_party/boringssl-with-bazel/src/crypto/dilithium/internal.h +58 -0
- data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +10 -3
- data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +0 -2
- data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +2 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +5 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +45 -1
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +33 -23
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +3 -6
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +9 -4
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +6 -0
- data/third_party/boringssl-with-bazel/src/crypto/internal.h +7 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +0 -4
- data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c +49 -16
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +0 -10
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +7 -17
- data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +8 -6
- data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +3 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/experimental/dilithium.h +125 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +0 -23
- data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +1 -1
- data/third_party/boringssl-with-bazel/src/ssl/internal.h +4 -10
- metadata +103 -93
- data/src/core/ext/transport/chttp2/transport/http_trace.cc +0 -19
- data/src/core/ext/transport/chttp2/transport/http_trace.h +0 -24
- data/src/core/ext/transport/inproc/inproc_plugin.cc +0 -23
- data/src/core/handshaker/security/tsi_error.cc +0 -31
- data/src/core/handshaker/security/tsi_error.h +0 -30
- data/src/core/lib/channel/channel_stack_trace.cc +0 -19
- data/src/core/lib/channel/channel_stack_trace.h +0 -24
- data/src/core/lib/channel/context.h +0 -105
- data/src/core/lib/channel/metrics.cc +0 -334
- data/src/core/lib/channel/metrics.h +0 -365
- data/src/core/lib/event_engine/trace.cc +0 -25
- data/src/core/lib/gpr/log.cc +0 -166
- data/src/core/lib/iomgr/ev_windows.cc +0 -30
- data/src/core/lib/promise/trace.cc +0 -20
- data/src/core/lib/promise/trace.h +0 -24
- data/src/core/lib/resource_quota/trace.cc +0 -19
- data/src/core/lib/resource_quota/trace.h +0 -24
- data/src/core/lib/slice/slice_refcount.cc +0 -20
- data/src/core/lib/surface/api_trace.cc +0 -25
- data/src/core/lib/surface/call_trace.h +0 -24
- data/src/core/lib/surface/wait_for_cq_end_op.cc +0 -75
- data/src/core/lib/surface/wait_for_cq_end_op.h +0 -72
- data/src/core/lib/transport/batch_builder.cc +0 -172
- data/src/core/lib/transport/batch_builder.h +0 -474
- data/src/core/resolver/xds/xds_resolver_trace.cc +0 -25
- data/src/core/resolver/xds/xds_resolver_trace.h +0 -30
- data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +0 -122
- /data/src/core/{lib/gpr → util}/alloc.cc +0 -0
- /data/src/core/{lib/gpr → util}/iphone/cpu.cc +0 -0
- /data/src/core/{lib/gpr → util}/linux/cpu.cc +0 -0
- /data/src/core/{lib/gpr → util}/posix/string.cc +0 -0
- /data/src/core/{lib/gpr → util}/posix/sync.cc +0 -0
- /data/src/core/{lib/gpr → util}/sync.cc +0 -0
- /data/src/core/{lib/gpr → util}/sync_abseil.cc +0 -0
- /data/src/core/{lib/gpr → util}/time.cc +0 -0
- /data/src/core/{lib/gpr → util}/windows/cpu.cc +0 -0
- /data/src/core/{lib/gpr → util}/windows/sync.cc +0 -0
@@ -16,8 +16,6 @@
|
|
16
16
|
|
17
17
|
#include "src/core/lib/experiments/experiments.h"
|
18
18
|
|
19
|
-
#include <stdint.h>
|
20
|
-
|
21
19
|
#include <grpc/support/port_platform.h>
|
22
20
|
|
23
21
|
#ifndef GRPC_EXPERIMENTS_ARE_FINAL
|
@@ -29,8 +27,6 @@ const char* const description_call_status_override_on_cancellation =
|
|
29
27
|
"with cancellation.";
|
30
28
|
const char* const additional_constraints_call_status_override_on_cancellation =
|
31
29
|
"{}";
|
32
|
-
const char* const description_call_v3 = "Promise-based call version 3.";
|
33
|
-
const char* const additional_constraints_call_v3 = "{}";
|
34
30
|
const char* const description_canary_client_privacy =
|
35
31
|
"If set, canary client privacy";
|
36
32
|
const char* const additional_constraints_canary_client_privacy = "{}";
|
@@ -59,6 +55,11 @@ const char* const description_keepalive_server_fix =
|
|
59
55
|
"Allows overriding keepalive_permit_without_calls for servers. Refer "
|
60
56
|
"https://github.com/grpc/grpc/pull/33917 for more information.";
|
61
57
|
const char* const additional_constraints_keepalive_server_fix = "{}";
|
58
|
+
const char* const description_max_pings_wo_data_throttle =
|
59
|
+
"Experiment to throttle pings to a period of 1 min when "
|
60
|
+
"GRPC_ARG_HTTP2_MAX_PINGS_WITHOUT_DATA limit has reached (instead of "
|
61
|
+
"completely blocking).";
|
62
|
+
const char* const additional_constraints_max_pings_wo_data_throttle = "{}";
|
62
63
|
const char* const description_monitoring_experiment =
|
63
64
|
"Placeholder experiment to prove/disprove our monitoring is working";
|
64
65
|
const char* const additional_constraints_monitoring_experiment = "{}";
|
@@ -70,41 +71,12 @@ const char* const description_peer_state_based_framing =
|
|
70
71
|
"on the peer's memory pressure which is reflected in its max http2 frame "
|
71
72
|
"size.";
|
72
73
|
const char* const additional_constraints_peer_state_based_framing = "{}";
|
73
|
-
const char* const description_pending_queue_cap =
|
74
|
-
"In the sync & async apis (but not the callback api), cap the number of "
|
75
|
-
"received but unrequested requests in the server for each call type. A "
|
76
|
-
"received message is one that was read from the wire on the server. A "
|
77
|
-
"requested message is one explicitly requested by the application using "
|
78
|
-
"grpc_server_request_call or grpc_server_request_registered_call (or their "
|
79
|
-
"wrappers in the C++ API).";
|
80
|
-
const char* const additional_constraints_pending_queue_cap = "{}";
|
81
74
|
const char* const description_pick_first_new =
|
82
75
|
"New pick_first impl with memory reduction.";
|
83
76
|
const char* const additional_constraints_pick_first_new = "{}";
|
84
|
-
const char* const description_promise_based_client_call =
|
85
|
-
"If set, use the new gRPC promise based call code when it's appropriate "
|
86
|
-
"(ie when all filters in a stack are promise based)";
|
87
|
-
const char* const additional_constraints_promise_based_client_call = "{}";
|
88
|
-
const uint8_t required_experiments_promise_based_client_call[] = {
|
89
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineClient),
|
90
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineListener)};
|
91
|
-
const char* const description_promise_based_server_call =
|
92
|
-
"If set, use the new gRPC promise based call code when it's appropriate "
|
93
|
-
"(ie when all filters in a stack are promise based)";
|
94
|
-
const char* const additional_constraints_promise_based_server_call = "{}";
|
95
|
-
const char* const description_chaotic_good =
|
96
|
-
"If set, enable the chaotic good load transport (this is mostly here for "
|
97
|
-
"testing)";
|
98
|
-
const char* const additional_constraints_chaotic_good = "{}";
|
99
|
-
const uint8_t required_experiments_chaotic_good[] = {
|
100
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedClientCall),
|
101
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedServerCall)};
|
102
77
|
const char* const description_promise_based_inproc_transport =
|
103
78
|
"Use promises for the in-process transport.";
|
104
79
|
const char* const additional_constraints_promise_based_inproc_transport = "{}";
|
105
|
-
const uint8_t required_experiments_promise_based_inproc_transport[] = {
|
106
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedClientCall),
|
107
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedServerCall)};
|
108
80
|
const char* const description_rstpit =
|
109
81
|
"On RST_STREAM on a server, reduce MAX_CONCURRENT_STREAMS for a short "
|
110
82
|
"duration";
|
@@ -140,8 +112,6 @@ const char* const description_work_serializer_dispatch =
|
|
140
112
|
"callback, instead of running things inline in the first thread that "
|
141
113
|
"successfully enqueues work.";
|
142
114
|
const char* const additional_constraints_work_serializer_dispatch = "{}";
|
143
|
-
const uint8_t required_experiments_work_serializer_dispatch[] = {
|
144
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineClient)};
|
145
115
|
} // namespace
|
146
116
|
|
147
117
|
namespace grpc_core {
|
@@ -151,8 +121,6 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
151
121
|
description_call_status_override_on_cancellation,
|
152
122
|
additional_constraints_call_status_override_on_cancellation, nullptr, 0,
|
153
123
|
true, true},
|
154
|
-
{"call_v3", description_call_v3, additional_constraints_call_v3, nullptr, 0,
|
155
|
-
false, true},
|
156
124
|
{"canary_client_privacy", description_canary_client_privacy,
|
157
125
|
additional_constraints_canary_client_privacy, nullptr, 0, false, false},
|
158
126
|
{"client_privacy", description_client_privacy,
|
@@ -171,28 +139,21 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
171
139
|
additional_constraints_keepalive_fix, nullptr, 0, false, false},
|
172
140
|
{"keepalive_server_fix", description_keepalive_server_fix,
|
173
141
|
additional_constraints_keepalive_server_fix, nullptr, 0, false, false},
|
142
|
+
{"max_pings_wo_data_throttle", description_max_pings_wo_data_throttle,
|
143
|
+
additional_constraints_max_pings_wo_data_throttle, nullptr, 0, false,
|
144
|
+
true},
|
174
145
|
{"monitoring_experiment", description_monitoring_experiment,
|
175
146
|
additional_constraints_monitoring_experiment, nullptr, 0, true, true},
|
176
147
|
{"multiping", description_multiping, additional_constraints_multiping,
|
177
148
|
nullptr, 0, false, true},
|
178
149
|
{"peer_state_based_framing", description_peer_state_based_framing,
|
179
150
|
additional_constraints_peer_state_based_framing, nullptr, 0, false, true},
|
180
|
-
{"pending_queue_cap", description_pending_queue_cap,
|
181
|
-
additional_constraints_pending_queue_cap, nullptr, 0, true, true},
|
182
151
|
{"pick_first_new", description_pick_first_new,
|
183
152
|
additional_constraints_pick_first_new, nullptr, 0, true, true},
|
184
|
-
{"promise_based_client_call", description_promise_based_client_call,
|
185
|
-
additional_constraints_promise_based_client_call,
|
186
|
-
required_experiments_promise_based_client_call, 2, false, true},
|
187
|
-
{"promise_based_server_call", description_promise_based_server_call,
|
188
|
-
additional_constraints_promise_based_server_call, nullptr, 0, false, true},
|
189
|
-
{"chaotic_good", description_chaotic_good,
|
190
|
-
additional_constraints_chaotic_good, required_experiments_chaotic_good, 2,
|
191
|
-
false, true},
|
192
153
|
{"promise_based_inproc_transport",
|
193
154
|
description_promise_based_inproc_transport,
|
194
|
-
additional_constraints_promise_based_inproc_transport,
|
195
|
-
|
155
|
+
additional_constraints_promise_based_inproc_transport, nullptr, 0, false,
|
156
|
+
false},
|
196
157
|
{"rstpit", description_rstpit, additional_constraints_rstpit, nullptr, 0,
|
197
158
|
false, true},
|
198
159
|
{"schedule_cancellation_over_write",
|
@@ -216,8 +177,7 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
216
177
|
additional_constraints_work_serializer_clears_time_cache, nullptr, 0, true,
|
217
178
|
true},
|
218
179
|
{"work_serializer_dispatch", description_work_serializer_dispatch,
|
219
|
-
additional_constraints_work_serializer_dispatch,
|
220
|
-
required_experiments_work_serializer_dispatch, 1, false, true},
|
180
|
+
additional_constraints_work_serializer_dispatch, nullptr, 0, false, true},
|
221
181
|
};
|
222
182
|
|
223
183
|
} // namespace grpc_core
|
@@ -229,8 +189,6 @@ const char* const description_call_status_override_on_cancellation =
|
|
229
189
|
"with cancellation.";
|
230
190
|
const char* const additional_constraints_call_status_override_on_cancellation =
|
231
191
|
"{}";
|
232
|
-
const char* const description_call_v3 = "Promise-based call version 3.";
|
233
|
-
const char* const additional_constraints_call_v3 = "{}";
|
234
192
|
const char* const description_canary_client_privacy =
|
235
193
|
"If set, canary client privacy";
|
236
194
|
const char* const additional_constraints_canary_client_privacy = "{}";
|
@@ -259,6 +217,11 @@ const char* const description_keepalive_server_fix =
|
|
259
217
|
"Allows overriding keepalive_permit_without_calls for servers. Refer "
|
260
218
|
"https://github.com/grpc/grpc/pull/33917 for more information.";
|
261
219
|
const char* const additional_constraints_keepalive_server_fix = "{}";
|
220
|
+
const char* const description_max_pings_wo_data_throttle =
|
221
|
+
"Experiment to throttle pings to a period of 1 min when "
|
222
|
+
"GRPC_ARG_HTTP2_MAX_PINGS_WITHOUT_DATA limit has reached (instead of "
|
223
|
+
"completely blocking).";
|
224
|
+
const char* const additional_constraints_max_pings_wo_data_throttle = "{}";
|
262
225
|
const char* const description_monitoring_experiment =
|
263
226
|
"Placeholder experiment to prove/disprove our monitoring is working";
|
264
227
|
const char* const additional_constraints_monitoring_experiment = "{}";
|
@@ -270,41 +233,12 @@ const char* const description_peer_state_based_framing =
|
|
270
233
|
"on the peer's memory pressure which is reflected in its max http2 frame "
|
271
234
|
"size.";
|
272
235
|
const char* const additional_constraints_peer_state_based_framing = "{}";
|
273
|
-
const char* const description_pending_queue_cap =
|
274
|
-
"In the sync & async apis (but not the callback api), cap the number of "
|
275
|
-
"received but unrequested requests in the server for each call type. A "
|
276
|
-
"received message is one that was read from the wire on the server. A "
|
277
|
-
"requested message is one explicitly requested by the application using "
|
278
|
-
"grpc_server_request_call or grpc_server_request_registered_call (or their "
|
279
|
-
"wrappers in the C++ API).";
|
280
|
-
const char* const additional_constraints_pending_queue_cap = "{}";
|
281
236
|
const char* const description_pick_first_new =
|
282
237
|
"New pick_first impl with memory reduction.";
|
283
238
|
const char* const additional_constraints_pick_first_new = "{}";
|
284
|
-
const char* const description_promise_based_client_call =
|
285
|
-
"If set, use the new gRPC promise based call code when it's appropriate "
|
286
|
-
"(ie when all filters in a stack are promise based)";
|
287
|
-
const char* const additional_constraints_promise_based_client_call = "{}";
|
288
|
-
const uint8_t required_experiments_promise_based_client_call[] = {
|
289
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineClient),
|
290
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineListener)};
|
291
|
-
const char* const description_promise_based_server_call =
|
292
|
-
"If set, use the new gRPC promise based call code when it's appropriate "
|
293
|
-
"(ie when all filters in a stack are promise based)";
|
294
|
-
const char* const additional_constraints_promise_based_server_call = "{}";
|
295
|
-
const char* const description_chaotic_good =
|
296
|
-
"If set, enable the chaotic good load transport (this is mostly here for "
|
297
|
-
"testing)";
|
298
|
-
const char* const additional_constraints_chaotic_good = "{}";
|
299
|
-
const uint8_t required_experiments_chaotic_good[] = {
|
300
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedClientCall),
|
301
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedServerCall)};
|
302
239
|
const char* const description_promise_based_inproc_transport =
|
303
240
|
"Use promises for the in-process transport.";
|
304
241
|
const char* const additional_constraints_promise_based_inproc_transport = "{}";
|
305
|
-
const uint8_t required_experiments_promise_based_inproc_transport[] = {
|
306
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedClientCall),
|
307
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedServerCall)};
|
308
242
|
const char* const description_rstpit =
|
309
243
|
"On RST_STREAM on a server, reduce MAX_CONCURRENT_STREAMS for a short "
|
310
244
|
"duration";
|
@@ -340,8 +274,6 @@ const char* const description_work_serializer_dispatch =
|
|
340
274
|
"callback, instead of running things inline in the first thread that "
|
341
275
|
"successfully enqueues work.";
|
342
276
|
const char* const additional_constraints_work_serializer_dispatch = "{}";
|
343
|
-
const uint8_t required_experiments_work_serializer_dispatch[] = {
|
344
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineClient)};
|
345
277
|
} // namespace
|
346
278
|
|
347
279
|
namespace grpc_core {
|
@@ -351,16 +283,14 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
351
283
|
description_call_status_override_on_cancellation,
|
352
284
|
additional_constraints_call_status_override_on_cancellation, nullptr, 0,
|
353
285
|
true, true},
|
354
|
-
{"call_v3", description_call_v3, additional_constraints_call_v3, nullptr, 0,
|
355
|
-
false, true},
|
356
286
|
{"canary_client_privacy", description_canary_client_privacy,
|
357
287
|
additional_constraints_canary_client_privacy, nullptr, 0, false, false},
|
358
288
|
{"client_privacy", description_client_privacy,
|
359
289
|
additional_constraints_client_privacy, nullptr, 0, false, false},
|
360
290
|
{"event_engine_client", description_event_engine_client,
|
361
|
-
additional_constraints_event_engine_client, nullptr, 0,
|
291
|
+
additional_constraints_event_engine_client, nullptr, 0, true, true},
|
362
292
|
{"event_engine_dns", description_event_engine_dns,
|
363
|
-
additional_constraints_event_engine_dns, nullptr, 0,
|
293
|
+
additional_constraints_event_engine_dns, nullptr, 0, true, false},
|
364
294
|
{"event_engine_listener", description_event_engine_listener,
|
365
295
|
additional_constraints_event_engine_listener, nullptr, 0, true, true},
|
366
296
|
{"free_large_allocator", description_free_large_allocator,
|
@@ -371,28 +301,21 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
371
301
|
additional_constraints_keepalive_fix, nullptr, 0, false, false},
|
372
302
|
{"keepalive_server_fix", description_keepalive_server_fix,
|
373
303
|
additional_constraints_keepalive_server_fix, nullptr, 0, false, false},
|
304
|
+
{"max_pings_wo_data_throttle", description_max_pings_wo_data_throttle,
|
305
|
+
additional_constraints_max_pings_wo_data_throttle, nullptr, 0, false,
|
306
|
+
true},
|
374
307
|
{"monitoring_experiment", description_monitoring_experiment,
|
375
308
|
additional_constraints_monitoring_experiment, nullptr, 0, true, true},
|
376
309
|
{"multiping", description_multiping, additional_constraints_multiping,
|
377
310
|
nullptr, 0, false, true},
|
378
311
|
{"peer_state_based_framing", description_peer_state_based_framing,
|
379
312
|
additional_constraints_peer_state_based_framing, nullptr, 0, false, true},
|
380
|
-
{"pending_queue_cap", description_pending_queue_cap,
|
381
|
-
additional_constraints_pending_queue_cap, nullptr, 0, true, true},
|
382
313
|
{"pick_first_new", description_pick_first_new,
|
383
314
|
additional_constraints_pick_first_new, nullptr, 0, true, true},
|
384
|
-
{"promise_based_client_call", description_promise_based_client_call,
|
385
|
-
additional_constraints_promise_based_client_call,
|
386
|
-
required_experiments_promise_based_client_call, 2, false, true},
|
387
|
-
{"promise_based_server_call", description_promise_based_server_call,
|
388
|
-
additional_constraints_promise_based_server_call, nullptr, 0, false, true},
|
389
|
-
{"chaotic_good", description_chaotic_good,
|
390
|
-
additional_constraints_chaotic_good, required_experiments_chaotic_good, 2,
|
391
|
-
false, true},
|
392
315
|
{"promise_based_inproc_transport",
|
393
316
|
description_promise_based_inproc_transport,
|
394
|
-
additional_constraints_promise_based_inproc_transport,
|
395
|
-
|
317
|
+
additional_constraints_promise_based_inproc_transport, nullptr, 0, false,
|
318
|
+
false},
|
396
319
|
{"rstpit", description_rstpit, additional_constraints_rstpit, nullptr, 0,
|
397
320
|
false, true},
|
398
321
|
{"schedule_cancellation_over_write",
|
@@ -416,8 +339,7 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
416
339
|
additional_constraints_work_serializer_clears_time_cache, nullptr, 0, true,
|
417
340
|
true},
|
418
341
|
{"work_serializer_dispatch", description_work_serializer_dispatch,
|
419
|
-
additional_constraints_work_serializer_dispatch,
|
420
|
-
required_experiments_work_serializer_dispatch, 1, false, true},
|
342
|
+
additional_constraints_work_serializer_dispatch, nullptr, 0, false, true},
|
421
343
|
};
|
422
344
|
|
423
345
|
} // namespace grpc_core
|
@@ -429,8 +351,6 @@ const char* const description_call_status_override_on_cancellation =
|
|
429
351
|
"with cancellation.";
|
430
352
|
const char* const additional_constraints_call_status_override_on_cancellation =
|
431
353
|
"{}";
|
432
|
-
const char* const description_call_v3 = "Promise-based call version 3.";
|
433
|
-
const char* const additional_constraints_call_v3 = "{}";
|
434
354
|
const char* const description_canary_client_privacy =
|
435
355
|
"If set, canary client privacy";
|
436
356
|
const char* const additional_constraints_canary_client_privacy = "{}";
|
@@ -459,6 +379,11 @@ const char* const description_keepalive_server_fix =
|
|
459
379
|
"Allows overriding keepalive_permit_without_calls for servers. Refer "
|
460
380
|
"https://github.com/grpc/grpc/pull/33917 for more information.";
|
461
381
|
const char* const additional_constraints_keepalive_server_fix = "{}";
|
382
|
+
const char* const description_max_pings_wo_data_throttle =
|
383
|
+
"Experiment to throttle pings to a period of 1 min when "
|
384
|
+
"GRPC_ARG_HTTP2_MAX_PINGS_WITHOUT_DATA limit has reached (instead of "
|
385
|
+
"completely blocking).";
|
386
|
+
const char* const additional_constraints_max_pings_wo_data_throttle = "{}";
|
462
387
|
const char* const description_monitoring_experiment =
|
463
388
|
"Placeholder experiment to prove/disprove our monitoring is working";
|
464
389
|
const char* const additional_constraints_monitoring_experiment = "{}";
|
@@ -470,41 +395,12 @@ const char* const description_peer_state_based_framing =
|
|
470
395
|
"on the peer's memory pressure which is reflected in its max http2 frame "
|
471
396
|
"size.";
|
472
397
|
const char* const additional_constraints_peer_state_based_framing = "{}";
|
473
|
-
const char* const description_pending_queue_cap =
|
474
|
-
"In the sync & async apis (but not the callback api), cap the number of "
|
475
|
-
"received but unrequested requests in the server for each call type. A "
|
476
|
-
"received message is one that was read from the wire on the server. A "
|
477
|
-
"requested message is one explicitly requested by the application using "
|
478
|
-
"grpc_server_request_call or grpc_server_request_registered_call (or their "
|
479
|
-
"wrappers in the C++ API).";
|
480
|
-
const char* const additional_constraints_pending_queue_cap = "{}";
|
481
398
|
const char* const description_pick_first_new =
|
482
399
|
"New pick_first impl with memory reduction.";
|
483
400
|
const char* const additional_constraints_pick_first_new = "{}";
|
484
|
-
const char* const description_promise_based_client_call =
|
485
|
-
"If set, use the new gRPC promise based call code when it's appropriate "
|
486
|
-
"(ie when all filters in a stack are promise based)";
|
487
|
-
const char* const additional_constraints_promise_based_client_call = "{}";
|
488
|
-
const uint8_t required_experiments_promise_based_client_call[] = {
|
489
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineClient),
|
490
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineListener)};
|
491
|
-
const char* const description_promise_based_server_call =
|
492
|
-
"If set, use the new gRPC promise based call code when it's appropriate "
|
493
|
-
"(ie when all filters in a stack are promise based)";
|
494
|
-
const char* const additional_constraints_promise_based_server_call = "{}";
|
495
|
-
const char* const description_chaotic_good =
|
496
|
-
"If set, enable the chaotic good load transport (this is mostly here for "
|
497
|
-
"testing)";
|
498
|
-
const char* const additional_constraints_chaotic_good = "{}";
|
499
|
-
const uint8_t required_experiments_chaotic_good[] = {
|
500
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedClientCall),
|
501
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedServerCall)};
|
502
401
|
const char* const description_promise_based_inproc_transport =
|
503
402
|
"Use promises for the in-process transport.";
|
504
403
|
const char* const additional_constraints_promise_based_inproc_transport = "{}";
|
505
|
-
const uint8_t required_experiments_promise_based_inproc_transport[] = {
|
506
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedClientCall),
|
507
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdPromiseBasedServerCall)};
|
508
404
|
const char* const description_rstpit =
|
509
405
|
"On RST_STREAM on a server, reduce MAX_CONCURRENT_STREAMS for a short "
|
510
406
|
"duration";
|
@@ -540,8 +436,6 @@ const char* const description_work_serializer_dispatch =
|
|
540
436
|
"callback, instead of running things inline in the first thread that "
|
541
437
|
"successfully enqueues work.";
|
542
438
|
const char* const additional_constraints_work_serializer_dispatch = "{}";
|
543
|
-
const uint8_t required_experiments_work_serializer_dispatch[] = {
|
544
|
-
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineClient)};
|
545
439
|
} // namespace
|
546
440
|
|
547
441
|
namespace grpc_core {
|
@@ -551,8 +445,6 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
551
445
|
description_call_status_override_on_cancellation,
|
552
446
|
additional_constraints_call_status_override_on_cancellation, nullptr, 0,
|
553
447
|
true, true},
|
554
|
-
{"call_v3", description_call_v3, additional_constraints_call_v3, nullptr, 0,
|
555
|
-
false, true},
|
556
448
|
{"canary_client_privacy", description_canary_client_privacy,
|
557
449
|
additional_constraints_canary_client_privacy, nullptr, 0, false, false},
|
558
450
|
{"client_privacy", description_client_privacy,
|
@@ -571,28 +463,21 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
571
463
|
additional_constraints_keepalive_fix, nullptr, 0, false, false},
|
572
464
|
{"keepalive_server_fix", description_keepalive_server_fix,
|
573
465
|
additional_constraints_keepalive_server_fix, nullptr, 0, false, false},
|
466
|
+
{"max_pings_wo_data_throttle", description_max_pings_wo_data_throttle,
|
467
|
+
additional_constraints_max_pings_wo_data_throttle, nullptr, 0, false,
|
468
|
+
true},
|
574
469
|
{"monitoring_experiment", description_monitoring_experiment,
|
575
470
|
additional_constraints_monitoring_experiment, nullptr, 0, true, true},
|
576
471
|
{"multiping", description_multiping, additional_constraints_multiping,
|
577
472
|
nullptr, 0, false, true},
|
578
473
|
{"peer_state_based_framing", description_peer_state_based_framing,
|
579
474
|
additional_constraints_peer_state_based_framing, nullptr, 0, false, true},
|
580
|
-
{"pending_queue_cap", description_pending_queue_cap,
|
581
|
-
additional_constraints_pending_queue_cap, nullptr, 0, true, true},
|
582
475
|
{"pick_first_new", description_pick_first_new,
|
583
476
|
additional_constraints_pick_first_new, nullptr, 0, true, true},
|
584
|
-
{"promise_based_client_call", description_promise_based_client_call,
|
585
|
-
additional_constraints_promise_based_client_call,
|
586
|
-
required_experiments_promise_based_client_call, 2, false, true},
|
587
|
-
{"promise_based_server_call", description_promise_based_server_call,
|
588
|
-
additional_constraints_promise_based_server_call, nullptr, 0, false, true},
|
589
|
-
{"chaotic_good", description_chaotic_good,
|
590
|
-
additional_constraints_chaotic_good, required_experiments_chaotic_good, 2,
|
591
|
-
false, true},
|
592
477
|
{"promise_based_inproc_transport",
|
593
478
|
description_promise_based_inproc_transport,
|
594
|
-
additional_constraints_promise_based_inproc_transport,
|
595
|
-
|
479
|
+
additional_constraints_promise_based_inproc_transport, nullptr, 0, false,
|
480
|
+
false},
|
596
481
|
{"rstpit", description_rstpit, additional_constraints_rstpit, nullptr, 0,
|
597
482
|
false, true},
|
598
483
|
{"schedule_cancellation_over_write",
|
@@ -616,8 +501,7 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
616
501
|
additional_constraints_work_serializer_clears_time_cache, nullptr, 0, true,
|
617
502
|
true},
|
618
503
|
{"work_serializer_dispatch", description_work_serializer_dispatch,
|
619
|
-
additional_constraints_work_serializer_dispatch,
|
620
|
-
required_experiments_work_serializer_dispatch, 1, true, true},
|
504
|
+
additional_constraints_work_serializer_dispatch, nullptr, 0, true, true},
|
621
505
|
};
|
622
506
|
|
623
507
|
} // namespace grpc_core
|
@@ -59,7 +59,6 @@ namespace grpc_core {
|
|
59
59
|
#if defined(GRPC_CFSTREAM)
|
60
60
|
#define GRPC_EXPERIMENT_IS_INCLUDED_CALL_STATUS_OVERRIDE_ON_CANCELLATION
|
61
61
|
inline bool IsCallStatusOverrideOnCancellationEnabled() { return true; }
|
62
|
-
inline bool IsCallV3Enabled() { return false; }
|
63
62
|
inline bool IsCanaryClientPrivacyEnabled() { return false; }
|
64
63
|
inline bool IsClientPrivacyEnabled() { return false; }
|
65
64
|
inline bool IsEventEngineClientEnabled() { return false; }
|
@@ -70,17 +69,13 @@ inline bool IsFreeLargeAllocatorEnabled() { return false; }
|
|
70
69
|
inline bool IsHttp2StatsFixEnabled() { return true; }
|
71
70
|
inline bool IsKeepaliveFixEnabled() { return false; }
|
72
71
|
inline bool IsKeepaliveServerFixEnabled() { return false; }
|
72
|
+
inline bool IsMaxPingsWoDataThrottleEnabled() { return false; }
|
73
73
|
#define GRPC_EXPERIMENT_IS_INCLUDED_MONITORING_EXPERIMENT
|
74
74
|
inline bool IsMonitoringExperimentEnabled() { return true; }
|
75
75
|
inline bool IsMultipingEnabled() { return false; }
|
76
76
|
inline bool IsPeerStateBasedFramingEnabled() { return false; }
|
77
|
-
#define GRPC_EXPERIMENT_IS_INCLUDED_PENDING_QUEUE_CAP
|
78
|
-
inline bool IsPendingQueueCapEnabled() { return true; }
|
79
77
|
#define GRPC_EXPERIMENT_IS_INCLUDED_PICK_FIRST_NEW
|
80
78
|
inline bool IsPickFirstNewEnabled() { return true; }
|
81
|
-
inline bool IsPromiseBasedClientCallEnabled() { return false; }
|
82
|
-
inline bool IsPromiseBasedServerCallEnabled() { return false; }
|
83
|
-
inline bool IsChaoticGoodEnabled() { return false; }
|
84
79
|
inline bool IsPromiseBasedInprocTransportEnabled() { return false; }
|
85
80
|
inline bool IsRstpitEnabled() { return false; }
|
86
81
|
inline bool IsScheduleCancellationOverWriteEnabled() { return false; }
|
@@ -97,11 +92,12 @@ inline bool IsWorkSerializerDispatchEnabled() { return false; }
|
|
97
92
|
#elif defined(GPR_WINDOWS)
|
98
93
|
#define GRPC_EXPERIMENT_IS_INCLUDED_CALL_STATUS_OVERRIDE_ON_CANCELLATION
|
99
94
|
inline bool IsCallStatusOverrideOnCancellationEnabled() { return true; }
|
100
|
-
inline bool IsCallV3Enabled() { return false; }
|
101
95
|
inline bool IsCanaryClientPrivacyEnabled() { return false; }
|
102
96
|
inline bool IsClientPrivacyEnabled() { return false; }
|
103
|
-
|
104
|
-
inline bool
|
97
|
+
#define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CLIENT
|
98
|
+
inline bool IsEventEngineClientEnabled() { return true; }
|
99
|
+
#define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_DNS
|
100
|
+
inline bool IsEventEngineDnsEnabled() { return true; }
|
105
101
|
#define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_LISTENER
|
106
102
|
inline bool IsEventEngineListenerEnabled() { return true; }
|
107
103
|
inline bool IsFreeLargeAllocatorEnabled() { return false; }
|
@@ -109,17 +105,13 @@ inline bool IsFreeLargeAllocatorEnabled() { return false; }
|
|
109
105
|
inline bool IsHttp2StatsFixEnabled() { return true; }
|
110
106
|
inline bool IsKeepaliveFixEnabled() { return false; }
|
111
107
|
inline bool IsKeepaliveServerFixEnabled() { return false; }
|
108
|
+
inline bool IsMaxPingsWoDataThrottleEnabled() { return false; }
|
112
109
|
#define GRPC_EXPERIMENT_IS_INCLUDED_MONITORING_EXPERIMENT
|
113
110
|
inline bool IsMonitoringExperimentEnabled() { return true; }
|
114
111
|
inline bool IsMultipingEnabled() { return false; }
|
115
112
|
inline bool IsPeerStateBasedFramingEnabled() { return false; }
|
116
|
-
#define GRPC_EXPERIMENT_IS_INCLUDED_PENDING_QUEUE_CAP
|
117
|
-
inline bool IsPendingQueueCapEnabled() { return true; }
|
118
113
|
#define GRPC_EXPERIMENT_IS_INCLUDED_PICK_FIRST_NEW
|
119
114
|
inline bool IsPickFirstNewEnabled() { return true; }
|
120
|
-
inline bool IsPromiseBasedClientCallEnabled() { return false; }
|
121
|
-
inline bool IsPromiseBasedServerCallEnabled() { return false; }
|
122
|
-
inline bool IsChaoticGoodEnabled() { return false; }
|
123
115
|
inline bool IsPromiseBasedInprocTransportEnabled() { return false; }
|
124
116
|
inline bool IsRstpitEnabled() { return false; }
|
125
117
|
inline bool IsScheduleCancellationOverWriteEnabled() { return false; }
|
@@ -136,7 +128,6 @@ inline bool IsWorkSerializerDispatchEnabled() { return false; }
|
|
136
128
|
#else
|
137
129
|
#define GRPC_EXPERIMENT_IS_INCLUDED_CALL_STATUS_OVERRIDE_ON_CANCELLATION
|
138
130
|
inline bool IsCallStatusOverrideOnCancellationEnabled() { return true; }
|
139
|
-
inline bool IsCallV3Enabled() { return false; }
|
140
131
|
inline bool IsCanaryClientPrivacyEnabled() { return false; }
|
141
132
|
inline bool IsClientPrivacyEnabled() { return false; }
|
142
133
|
inline bool IsEventEngineClientEnabled() { return false; }
|
@@ -149,17 +140,13 @@ inline bool IsFreeLargeAllocatorEnabled() { return false; }
|
|
149
140
|
inline bool IsHttp2StatsFixEnabled() { return true; }
|
150
141
|
inline bool IsKeepaliveFixEnabled() { return false; }
|
151
142
|
inline bool IsKeepaliveServerFixEnabled() { return false; }
|
143
|
+
inline bool IsMaxPingsWoDataThrottleEnabled() { return false; }
|
152
144
|
#define GRPC_EXPERIMENT_IS_INCLUDED_MONITORING_EXPERIMENT
|
153
145
|
inline bool IsMonitoringExperimentEnabled() { return true; }
|
154
146
|
inline bool IsMultipingEnabled() { return false; }
|
155
147
|
inline bool IsPeerStateBasedFramingEnabled() { return false; }
|
156
|
-
#define GRPC_EXPERIMENT_IS_INCLUDED_PENDING_QUEUE_CAP
|
157
|
-
inline bool IsPendingQueueCapEnabled() { return true; }
|
158
148
|
#define GRPC_EXPERIMENT_IS_INCLUDED_PICK_FIRST_NEW
|
159
149
|
inline bool IsPickFirstNewEnabled() { return true; }
|
160
|
-
inline bool IsPromiseBasedClientCallEnabled() { return false; }
|
161
|
-
inline bool IsPromiseBasedServerCallEnabled() { return false; }
|
162
|
-
inline bool IsChaoticGoodEnabled() { return false; }
|
163
150
|
inline bool IsPromiseBasedInprocTransportEnabled() { return false; }
|
164
151
|
inline bool IsRstpitEnabled() { return false; }
|
165
152
|
inline bool IsScheduleCancellationOverWriteEnabled() { return false; }
|
@@ -178,7 +165,6 @@ inline bool IsWorkSerializerDispatchEnabled() { return true; }
|
|
178
165
|
#else
|
179
166
|
enum ExperimentIds {
|
180
167
|
kExperimentIdCallStatusOverrideOnCancellation,
|
181
|
-
kExperimentIdCallV3,
|
182
168
|
kExperimentIdCanaryClientPrivacy,
|
183
169
|
kExperimentIdClientPrivacy,
|
184
170
|
kExperimentIdEventEngineClient,
|
@@ -188,14 +174,11 @@ enum ExperimentIds {
|
|
188
174
|
kExperimentIdHttp2StatsFix,
|
189
175
|
kExperimentIdKeepaliveFix,
|
190
176
|
kExperimentIdKeepaliveServerFix,
|
177
|
+
kExperimentIdMaxPingsWoDataThrottle,
|
191
178
|
kExperimentIdMonitoringExperiment,
|
192
179
|
kExperimentIdMultiping,
|
193
180
|
kExperimentIdPeerStateBasedFraming,
|
194
|
-
kExperimentIdPendingQueueCap,
|
195
181
|
kExperimentIdPickFirstNew,
|
196
|
-
kExperimentIdPromiseBasedClientCall,
|
197
|
-
kExperimentIdPromiseBasedServerCall,
|
198
|
-
kExperimentIdChaoticGood,
|
199
182
|
kExperimentIdPromiseBasedInprocTransport,
|
200
183
|
kExperimentIdRstpit,
|
201
184
|
kExperimentIdScheduleCancellationOverWrite,
|
@@ -212,10 +195,6 @@ enum ExperimentIds {
|
|
212
195
|
inline bool IsCallStatusOverrideOnCancellationEnabled() {
|
213
196
|
return IsExperimentEnabled(kExperimentIdCallStatusOverrideOnCancellation);
|
214
197
|
}
|
215
|
-
#define GRPC_EXPERIMENT_IS_INCLUDED_CALL_V3
|
216
|
-
inline bool IsCallV3Enabled() {
|
217
|
-
return IsExperimentEnabled(kExperimentIdCallV3);
|
218
|
-
}
|
219
198
|
#define GRPC_EXPERIMENT_IS_INCLUDED_CANARY_CLIENT_PRIVACY
|
220
199
|
inline bool IsCanaryClientPrivacyEnabled() {
|
221
200
|
return IsExperimentEnabled(kExperimentIdCanaryClientPrivacy);
|
@@ -252,6 +231,10 @@ inline bool IsKeepaliveFixEnabled() {
|
|
252
231
|
inline bool IsKeepaliveServerFixEnabled() {
|
253
232
|
return IsExperimentEnabled(kExperimentIdKeepaliveServerFix);
|
254
233
|
}
|
234
|
+
#define GRPC_EXPERIMENT_IS_INCLUDED_MAX_PINGS_WO_DATA_THROTTLE
|
235
|
+
inline bool IsMaxPingsWoDataThrottleEnabled() {
|
236
|
+
return IsExperimentEnabled(kExperimentIdMaxPingsWoDataThrottle);
|
237
|
+
}
|
255
238
|
#define GRPC_EXPERIMENT_IS_INCLUDED_MONITORING_EXPERIMENT
|
256
239
|
inline bool IsMonitoringExperimentEnabled() {
|
257
240
|
return IsExperimentEnabled(kExperimentIdMonitoringExperiment);
|
@@ -264,26 +247,10 @@ inline bool IsMultipingEnabled() {
|
|
264
247
|
inline bool IsPeerStateBasedFramingEnabled() {
|
265
248
|
return IsExperimentEnabled(kExperimentIdPeerStateBasedFraming);
|
266
249
|
}
|
267
|
-
#define GRPC_EXPERIMENT_IS_INCLUDED_PENDING_QUEUE_CAP
|
268
|
-
inline bool IsPendingQueueCapEnabled() {
|
269
|
-
return IsExperimentEnabled(kExperimentIdPendingQueueCap);
|
270
|
-
}
|
271
250
|
#define GRPC_EXPERIMENT_IS_INCLUDED_PICK_FIRST_NEW
|
272
251
|
inline bool IsPickFirstNewEnabled() {
|
273
252
|
return IsExperimentEnabled(kExperimentIdPickFirstNew);
|
274
253
|
}
|
275
|
-
#define GRPC_EXPERIMENT_IS_INCLUDED_PROMISE_BASED_CLIENT_CALL
|
276
|
-
inline bool IsPromiseBasedClientCallEnabled() {
|
277
|
-
return IsExperimentEnabled(kExperimentIdPromiseBasedClientCall);
|
278
|
-
}
|
279
|
-
#define GRPC_EXPERIMENT_IS_INCLUDED_PROMISE_BASED_SERVER_CALL
|
280
|
-
inline bool IsPromiseBasedServerCallEnabled() {
|
281
|
-
return IsExperimentEnabled(kExperimentIdPromiseBasedServerCall);
|
282
|
-
}
|
283
|
-
#define GRPC_EXPERIMENT_IS_INCLUDED_CHAOTIC_GOOD
|
284
|
-
inline bool IsChaoticGoodEnabled() {
|
285
|
-
return IsExperimentEnabled(kExperimentIdChaoticGood);
|
286
|
-
}
|
287
254
|
#define GRPC_EXPERIMENT_IS_INCLUDED_PROMISE_BASED_INPROC_TRANSPORT
|
288
255
|
inline bool IsPromiseBasedInprocTransportEnabled() {
|
289
256
|
return IsExperimentEnabled(kExperimentIdPromiseBasedInprocTransport);
|
data/src/core/lib/gprpp/bitset.h
CHANGED
data/src/core/lib/gprpp/crash.cc
CHANGED
@@ -19,16 +19,15 @@
|
|
19
19
|
|
20
20
|
#include <string>
|
21
21
|
|
22
|
+
#include "absl/log/log.h"
|
22
23
|
#include "absl/strings/str_cat.h"
|
23
24
|
|
24
|
-
#include <grpc/support/log.h>
|
25
25
|
#include <grpc/support/port_platform.h>
|
26
26
|
|
27
27
|
namespace grpc_core {
|
28
28
|
|
29
29
|
void Crash(absl::string_view message, SourceLocation location) {
|
30
|
-
|
31
|
-
std::string(message).c_str());
|
30
|
+
LOG(ERROR).AtLocation(location.file(), location.line()) << message;
|
32
31
|
abort();
|
33
32
|
}
|
34
33
|
|