grpc 1.82.2 → 1.83.0.pre1
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 +8 -5
- data/etc/roots.pem +10400 -3855
- data/include/grpc/grpc_audit_logging.h +2 -2
- data/include/grpc/grpc_security_constants.h +2 -0
- data/include/grpc/impl/channel_arg_names.h +23 -0
- data/src/core/call/call_filters.h +19 -3
- data/src/core/call/call_spine.h +4 -4
- data/src/core/call/client_call.cc +1 -1
- data/src/core/call/metadata.cc +7 -2
- data/src/core/call/server_call.cc +13 -3
- data/src/core/call/server_call.h +5 -3
- data/src/core/client_channel/backup_poller.cc +2 -17
- data/src/core/client_channel/client_channel.cc +17 -14
- data/src/core/client_channel/client_channel.h +3 -1
- data/src/core/client_channel/client_channel_filter.cc +11 -13
- data/src/core/client_channel/client_channel_service_config.cc +5 -13
- data/src/core/client_channel/direct_channel.cc +5 -1
- data/src/core/client_channel/direct_channel.h +3 -1
- data/src/core/config/experiment_env_var.cc +30 -0
- data/src/core/config/experiment_env_var.h +26 -0
- data/src/core/credentials/call/regional_access_boundary_fetcher.cc +6 -6
- data/src/core/credentials/transport/ssl/ssl_security_connector.cc +14 -2
- data/src/core/credentials/transport/tls/grpc_tls_certificate_selector.cc +172 -0
- data/src/core/credentials/transport/tls/grpc_tls_certificate_selector.h +103 -0
- data/src/core/credentials/transport/tls/load_system_roots_fallback.cc +3 -2
- data/src/core/credentials/transport/tls/load_system_roots_supported.cc +10 -3
- data/src/core/credentials/transport/tls/tls_security_connector.cc +14 -2
- data/src/core/credentials/transport/xds/xds_credentials.cc +4 -12
- data/src/core/ext/filters/http/message_compress/compression_filter.cc +32 -25
- data/src/core/ext/filters/http/message_compress/compression_filter.h +1 -0
- data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +2 -1
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +19 -13
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +14 -57
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +2 -2
- data/src/core/ext/transport/chttp2/transport/flow_control.h +3 -2
- data/src/core/ext/transport/chttp2/transport/frame.cc +58 -1
- data/src/core/ext/transport/chttp2/transport/frame.h +13 -1
- data/src/core/ext/transport/chttp2/transport/frame_data.cc +2 -34
- data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +23 -55
- data/src/core/ext/transport/chttp2/transport/frame_goaway.h +0 -1
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +2 -4
- data/src/core/ext/transport/chttp2/transport/frame_security.cc +10 -1
- data/src/core/ext/transport/chttp2/transport/frame_security.h +2 -1
- data/src/core/ext/transport/chttp2/transport/goaway.cc +11 -1
- data/src/core/ext/transport/chttp2/transport/goaway.h +17 -1
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +9 -0
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.cc +117 -276
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.h +44 -17
- data/src/core/ext/transport/chttp2/transport/http2_server_transport.cc +382 -496
- data/src/core/ext/transport/chttp2/transport/http2_server_transport.h +75 -77
- data/src/core/ext/transport/chttp2/transport/http2_settings.cc +1 -1
- data/src/core/ext/transport/chttp2/transport/http2_settings.h +30 -11
- data/src/core/ext/transport/chttp2/transport/http2_settings_promises.h +24 -9
- data/src/core/ext/transport/chttp2/transport/http2_transport.cc +26 -0
- data/src/core/ext/transport/chttp2/transport/http2_transport.h +2 -0
- data/src/core/ext/transport/chttp2/transport/internal.h +4 -6
- data/src/core/ext/transport/chttp2/transport/parsing.cc +3 -10
- data/src/core/ext/transport/chttp2/transport/ping_promise.cc +1 -1
- data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +4 -10
- data/src/core/ext/transport/chttp2/transport/read_context.h +62 -20
- data/src/core/ext/transport/chttp2/transport/security_frame.h +1 -0
- data/src/core/ext/transport/chttp2/transport/stream.h +271 -120
- data/src/core/ext/transport/chttp2/transport/stream_data_queue.h +77 -61
- data/src/core/handshaker/security/secure_endpoint.cc +0 -13
- data/src/core/lib/channel/promise_based_filter.cc +77 -3
- data/src/core/lib/channel/promise_based_filter.h +238 -184
- data/src/core/lib/compression/message_compress.cc +97 -132
- data/src/core/lib/compression/message_compress.h +0 -24
- data/src/core/lib/event_engine/extensions/receive_coalescing_extension.h +0 -4
- data/src/core/lib/event_engine/extensions/tcp_trace.h +1 -1
- data/src/core/lib/event_engine/posix_engine/posix_engine.cc +2 -12
- data/src/core/lib/event_engine/shim.cc +2 -16
- data/src/core/lib/event_engine/shim.h +0 -4
- data/src/core/lib/experiments/experiments.cc +57 -123
- data/src/core/lib/experiments/experiments.h +43 -82
- data/src/core/lib/iomgr/error.cc +3 -73
- data/src/core/lib/iomgr/error.h +8 -6
- data/src/core/lib/iomgr/error_cfstream.cc +1 -2
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +2 -6
- data/src/core/lib/iomgr/ev_poll_posix.cc +2 -6
- data/src/core/lib/iomgr/tcp_posix.cc +2 -6
- data/src/core/lib/security/authorization/audit_logging.cc +2 -2
- data/src/core/lib/security/authorization/audit_logging.h +3 -3
- data/src/core/lib/security/authorization/grpc_authorization_engine.cc +11 -13
- data/src/core/lib/security/authorization/grpc_authorization_engine.h +1 -1
- data/src/core/lib/security/authorization/matchers.cc +20 -20
- data/src/core/lib/security/authorization/matchers.h +15 -16
- data/src/core/lib/security/authorization/rbac_policy.h +1 -1
- data/src/core/lib/security/authorization/stdout_logger.cc +3 -3
- data/src/core/lib/security/authorization/stdout_logger.h +6 -5
- data/src/core/lib/surface/call.cc +0 -8
- data/src/core/lib/surface/call.h +2 -0
- data/src/core/lib/surface/channel.cc +21 -2
- data/src/core/lib/surface/channel.h +14 -6
- data/src/core/lib/surface/filter_stack_call.cc +10 -29
- data/src/core/lib/surface/legacy_channel.cc +7 -7
- data/src/core/lib/surface/legacy_channel.h +3 -1
- data/src/core/lib/surface/version.cc +2 -2
- data/src/core/lib/transport/bdp_estimator.cc +13 -13
- data/src/core/lib/transport/bdp_estimator.h +9 -5
- data/src/core/lib/transport/error_utils.cc +26 -138
- data/src/core/lib/transport/promise_endpoint.h +2 -4
- data/src/core/load_balancing/grpclb/grpclb.cc +2 -1
- data/src/core/load_balancing/pick_first/pick_first.cc +33 -2
- data/src/core/load_balancing/pick_first/pick_first.h +6 -0
- data/src/core/load_balancing/ring_hash/ring_hash.cc +3 -10
- data/src/core/load_balancing/rls/rls.cc +2 -1
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +2 -7
- data/src/core/load_balancing/xds/cds.cc +80 -56
- data/src/core/load_balancing/xds/cds.h +21 -0
- data/src/core/mitigation_engine/mitigation.h +53 -0
- data/src/core/mitigation_engine/mitigation_provider.h +62 -0
- data/src/core/resolver/dns/dns_resolver_plugin.cc +1 -6
- data/src/core/resolver/xds/xds_resolver.cc +14 -11
- data/src/core/server/server.h +1 -4
- data/src/core/server/server_config_selector.h +5 -4
- data/src/core/server/server_config_selector_filter.cc +67 -80
- data/src/core/server/xds_server_config_fetcher.cc +681 -692
- data/src/core/server/xds_server_config_fetcher_legacy.cc +15 -12
- data/src/core/telemetry/call_tracer.cc +49 -2
- data/src/core/telemetry/call_tracer.h +1 -0
- data/src/core/telemetry/tcp_tracer.h +38 -0
- data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +1 -1
- data/src/core/tsi/ssl_telemetry_utils.cc +343 -0
- data/src/core/tsi/ssl_telemetry_utils.h +74 -0
- data/src/core/tsi/ssl_transport_security.cc +577 -301
- data/src/core/tsi/ssl_transport_security.h +22 -6
- data/src/core/tsi/ssl_transport_security_utils.cc +2 -0
- data/src/core/tsi/transport_security.h +7 -0
- data/src/core/util/http_client/httpcli.cc +1 -4
- data/src/core/util/http_client/httpcli_security_connector.cc +2 -1
- data/src/core/util/status_helper.cc +71 -192
- data/src/core/util/status_helper.h +16 -21
- data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +2 -11
- data/src/core/xds/grpc/xds_bootstrap_grpc.cc +2 -7
- data/src/core/xds/grpc/xds_cluster_parser.cc +5 -16
- data/src/core/xds/grpc/xds_common_types.cc +94 -38
- data/src/core/xds/grpc/xds_common_types.h +33 -18
- data/src/core/xds/grpc/xds_common_types_parser.cc +168 -100
- data/src/core/xds/grpc/xds_common_types_parser.h +18 -1
- data/src/core/xds/grpc/xds_endpoint_parser.cc +6 -17
- data/src/core/xds/grpc/xds_http_filter_registry.cc +2 -10
- data/src/core/xds/grpc/xds_http_rbac_filter.cc +3 -12
- data/src/core/xds/grpc/xds_metadata_parser.cc +0 -2
- data/src/core/xds/grpc/xds_route_config_parser.cc +7 -11
- data/src/core/xds/grpc/xds_routing.cc +113 -82
- data/src/core/xds/grpc/xds_routing.h +70 -20
- data/src/core/xds/grpc/xds_server_grpc.cc +22 -13
- data/src/core/xds/grpc/xds_server_grpc.h +16 -2
- data/src/core/xds/grpc/xds_server_grpc_interface.h +10 -0
- data/src/core/xds/grpc/xds_transport_grpc.cc +123 -18
- data/src/core/xds/grpc/xds_transport_grpc.h +28 -4
- data/src/core/xds/xds_client/lrs_client.cc +3 -7
- data/src/core/xds/xds_client/xds_bootstrap.cc +4 -16
- data/src/core/xds/xds_client/xds_client.cc +2 -15
- data/src/core/xds/xds_client/xds_transport.h +3 -0
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +1 -1
- metadata +10 -2
|
@@ -54,9 +54,6 @@ const char* const additional_constraints_chaotic_good_send_supported_features =
|
|
|
54
54
|
const char* const description_custom_frame_check =
|
|
55
55
|
"Adding checks to custom HTTP2 frame.";
|
|
56
56
|
const char* const additional_constraints_custom_frame_check = "{}";
|
|
57
|
-
const char* const description_error_flatten =
|
|
58
|
-
"Flatten errors to ordinary absl::Status form.";
|
|
59
|
-
const char* const additional_constraints_error_flatten = "{}";
|
|
60
57
|
const char* const description_event_engine_client =
|
|
61
58
|
"Use EventEngine clients instead of iomgr's grpc_tcp_client";
|
|
62
59
|
const char* const additional_constraints_event_engine_client = "{}";
|
|
@@ -92,9 +89,6 @@ const uint8_t required_experiments_event_engine_for_all_other_endpoints[] = {
|
|
|
92
89
|
static_cast<uint8_t>(
|
|
93
90
|
grpc_core::kExperimentIdEventEngineDnsNonClientChannel),
|
|
94
91
|
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineListener)};
|
|
95
|
-
const char* const description_event_engine_poller_for_python =
|
|
96
|
-
"Enable event engine poller in gRPC Python";
|
|
97
|
-
const char* const additional_constraints_event_engine_poller_for_python = "{}";
|
|
98
92
|
const char* const description_fail_recv_metadata_on_deadline_exceeded =
|
|
99
93
|
"Fail recv initial metadata when the deadline is exceeded.";
|
|
100
94
|
const char* const
|
|
@@ -109,9 +103,6 @@ const char* const description_h2_max_deallocating_streams_headroom =
|
|
|
109
103
|
"Separate allocated max concurrent streams.";
|
|
110
104
|
const char* const additional_constraints_h2_max_deallocating_streams_headroom =
|
|
111
105
|
"{}";
|
|
112
|
-
const char* const description_header_data_frame =
|
|
113
|
-
"Managing header and data memory better";
|
|
114
|
-
const char* const additional_constraints_header_data_frame = "{}";
|
|
115
106
|
const char* const description_inproc_cancel_stream =
|
|
116
107
|
"If set, cancel inproc stream inside the transport mutex.";
|
|
117
108
|
const char* const additional_constraints_inproc_cancel_stream = "{}";
|
|
@@ -123,9 +114,6 @@ const char* const description_local_connector_secure =
|
|
|
123
114
|
"Local security connector uses TSI_SECURITY_NONE for LOCAL_TCP "
|
|
124
115
|
"connections.";
|
|
125
116
|
const char* const additional_constraints_local_connector_secure = "{}";
|
|
126
|
-
const char* const description_max_inflight_pings_strict_limit =
|
|
127
|
-
"If set, the max inflight pings limit is strictly enforced.";
|
|
128
|
-
const char* const additional_constraints_max_inflight_pings_strict_limit = "{}";
|
|
129
117
|
const char* const description_memory_optimization_01 = "Memory Optimization";
|
|
130
118
|
const char* const additional_constraints_memory_optimization_01 = "{}";
|
|
131
119
|
const char* const description_memory_optimization_02 = "Memory Optimization 02";
|
|
@@ -154,6 +142,10 @@ const char* const description_optimization_03 = "Optimization";
|
|
|
154
142
|
const char* const additional_constraints_optimization_03 = "{}";
|
|
155
143
|
const char* const description_optimization_04 = "Optimization";
|
|
156
144
|
const char* const additional_constraints_optimization_04 = "{}";
|
|
145
|
+
const char* const description_optimization_05 = "Optimization";
|
|
146
|
+
const char* const additional_constraints_optimization_05 = "{}";
|
|
147
|
+
const char* const description_optimization_06 = "Optimization";
|
|
148
|
+
const char* const additional_constraints_optimization_06 = "{}";
|
|
157
149
|
const char* const description_otel_export_telemetry_domains =
|
|
158
150
|
"Export telemetry domains in OpenTelemetry metrics.";
|
|
159
151
|
const char* const additional_constraints_otel_export_telemetry_domains = "{}";
|
|
@@ -245,11 +237,6 @@ const char* const additional_constraints_skip_clear_peer_on_cancellation = "{}";
|
|
|
245
237
|
const char* const description_subchannel_connection_scaling =
|
|
246
238
|
"Subchannel connection scaling support.";
|
|
247
239
|
const char* const additional_constraints_subchannel_connection_scaling = "{}";
|
|
248
|
-
const char* const description_subchannel_wrapper_cleanup_on_orphan =
|
|
249
|
-
"Fixes the subchannel wrapper to drop any non-cancelled watchers when it "
|
|
250
|
-
"gets orphaned.";
|
|
251
|
-
const char* const additional_constraints_subchannel_wrapper_cleanup_on_orphan =
|
|
252
|
-
"{}";
|
|
253
240
|
const char* const description_tcp_frame_size_tuning =
|
|
254
241
|
"If set, enables TCP to use RPC size estimation made by higher layers. TCP "
|
|
255
242
|
"would not indicate completion of a read operation until a specified "
|
|
@@ -287,6 +274,9 @@ const char* const description_xds_server_filter_chain_per_route =
|
|
|
287
274
|
"xDS servers use a separate filter chain for each route.";
|
|
288
275
|
const char* const additional_constraints_xds_server_filter_chain_per_route =
|
|
289
276
|
"{}";
|
|
277
|
+
const uint8_t required_experiments_xds_server_filter_chain_per_route[] = {
|
|
278
|
+
static_cast<uint8_t>(
|
|
279
|
+
grpc_core::kExperimentIdV2NonOwningWakerImplementation)};
|
|
290
280
|
} // namespace
|
|
291
281
|
|
|
292
282
|
namespace grpc_core {
|
|
@@ -312,11 +302,9 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
312
302
|
{"chaotic_good_send_supported_features",
|
|
313
303
|
description_chaotic_good_send_supported_features,
|
|
314
304
|
additional_constraints_chaotic_good_send_supported_features, nullptr, 0,
|
|
315
|
-
|
|
305
|
+
true, true},
|
|
316
306
|
{"custom_frame_check", description_custom_frame_check,
|
|
317
307
|
additional_constraints_custom_frame_check, nullptr, 0, true, false},
|
|
318
|
-
{"error_flatten", description_error_flatten,
|
|
319
|
-
additional_constraints_error_flatten, nullptr, 0, true, false},
|
|
320
308
|
{"event_engine_client", description_event_engine_client,
|
|
321
309
|
additional_constraints_event_engine_client, nullptr, 0, true, false},
|
|
322
310
|
{"event_engine_dns", description_event_engine_dns,
|
|
@@ -336,10 +324,6 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
336
324
|
description_event_engine_for_all_other_endpoints,
|
|
337
325
|
additional_constraints_event_engine_for_all_other_endpoints,
|
|
338
326
|
required_experiments_event_engine_for_all_other_endpoints, 4, true, false},
|
|
339
|
-
{"event_engine_poller_for_python",
|
|
340
|
-
description_event_engine_poller_for_python,
|
|
341
|
-
additional_constraints_event_engine_poller_for_python, nullptr, 0, true,
|
|
342
|
-
true},
|
|
343
327
|
{"fail_recv_metadata_on_deadline_exceeded",
|
|
344
328
|
description_fail_recv_metadata_on_deadline_exceeded,
|
|
345
329
|
additional_constraints_fail_recv_metadata_on_deadline_exceeded, nullptr, 0,
|
|
@@ -352,8 +336,6 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
352
336
|
description_h2_max_deallocating_streams_headroom,
|
|
353
337
|
additional_constraints_h2_max_deallocating_streams_headroom, nullptr, 0,
|
|
354
338
|
false, true},
|
|
355
|
-
{"header_data_frame", description_header_data_frame,
|
|
356
|
-
additional_constraints_header_data_frame, nullptr, 0, true, true},
|
|
357
339
|
{"inproc_cancel_stream", description_inproc_cancel_stream,
|
|
358
340
|
additional_constraints_inproc_cancel_stream, nullptr, 0, true, true},
|
|
359
341
|
{"keep_alive_ping_timer_batch", description_keep_alive_ping_timer_batch,
|
|
@@ -361,22 +343,18 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
361
343
|
true},
|
|
362
344
|
{"local_connector_secure", description_local_connector_secure,
|
|
363
345
|
additional_constraints_local_connector_secure, nullptr, 0, false, true},
|
|
364
|
-
{"max_inflight_pings_strict_limit",
|
|
365
|
-
description_max_inflight_pings_strict_limit,
|
|
366
|
-
additional_constraints_max_inflight_pings_strict_limit, nullptr, 0, true,
|
|
367
|
-
true},
|
|
368
346
|
{"memory_optimization_01", description_memory_optimization_01,
|
|
369
347
|
additional_constraints_memory_optimization_01, nullptr, 0, false, false},
|
|
370
348
|
{"memory_optimization_02", description_memory_optimization_02,
|
|
371
349
|
additional_constraints_memory_optimization_02, nullptr, 0, false, false},
|
|
372
350
|
{"message_size_refactoring", description_message_size_refactoring,
|
|
373
|
-
additional_constraints_message_size_refactoring, nullptr, 0,
|
|
351
|
+
additional_constraints_message_size_refactoring, nullptr, 0, false, true},
|
|
374
352
|
{"metadata_outstanding_token_refactor",
|
|
375
353
|
description_metadata_outstanding_token_refactor,
|
|
376
354
|
additional_constraints_metadata_outstanding_token_refactor, nullptr, 0,
|
|
377
355
|
false, true},
|
|
378
356
|
{"metadata_publish_to_app_tag", description_metadata_publish_to_app_tag,
|
|
379
|
-
additional_constraints_metadata_publish_to_app_tag, nullptr, 0,
|
|
357
|
+
additional_constraints_metadata_publish_to_app_tag, nullptr, 0, false,
|
|
380
358
|
true},
|
|
381
359
|
{"monitoring_experiment", description_monitoring_experiment,
|
|
382
360
|
additional_constraints_monitoring_experiment, nullptr, 0, true, true},
|
|
@@ -390,6 +368,10 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
390
368
|
additional_constraints_optimization_03, nullptr, 0, true, true},
|
|
391
369
|
{"optimization_04", description_optimization_04,
|
|
392
370
|
additional_constraints_optimization_04, nullptr, 0, true, true},
|
|
371
|
+
{"optimization_05", description_optimization_05,
|
|
372
|
+
additional_constraints_optimization_05, nullptr, 0, false, true},
|
|
373
|
+
{"optimization_06", description_optimization_06,
|
|
374
|
+
additional_constraints_optimization_06, nullptr, 0, false, true},
|
|
393
375
|
{"otel_export_telemetry_domains", description_otel_export_telemetry_domains,
|
|
394
376
|
additional_constraints_otel_export_telemetry_domains, nullptr, 0, false,
|
|
395
377
|
true},
|
|
@@ -398,7 +380,7 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
398
380
|
{"ph2_client_server", description_ph2_client_server,
|
|
399
381
|
additional_constraints_ph2_client_server, nullptr, 0, false, true},
|
|
400
382
|
{"ph2_perf_01", description_ph2_perf_01, additional_constraints_ph2_perf_01,
|
|
401
|
-
nullptr, 0,
|
|
383
|
+
nullptr, 0, false, true},
|
|
402
384
|
{"ph2_server", description_ph2_server, additional_constraints_ph2_server,
|
|
403
385
|
nullptr, 0, false, true},
|
|
404
386
|
{"pick_first_ignore_empty_updates",
|
|
@@ -430,7 +412,7 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
430
412
|
{"retry_in_callv3", description_retry_in_callv3,
|
|
431
413
|
additional_constraints_retry_in_callv3, nullptr, 0, false, true},
|
|
432
414
|
{"return_preexisting_errors", description_return_preexisting_errors,
|
|
433
|
-
additional_constraints_return_preexisting_errors, nullptr, 0,
|
|
415
|
+
additional_constraints_return_preexisting_errors, nullptr, 0, true, true},
|
|
434
416
|
{"schedule_cancellation_over_write",
|
|
435
417
|
description_schedule_cancellation_over_write,
|
|
436
418
|
additional_constraints_schedule_cancellation_over_write, nullptr, 0, false,
|
|
@@ -452,12 +434,8 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
452
434
|
additional_constraints_skip_clear_peer_on_cancellation, nullptr, 0, false,
|
|
453
435
|
true},
|
|
454
436
|
{"subchannel_connection_scaling", description_subchannel_connection_scaling,
|
|
455
|
-
additional_constraints_subchannel_connection_scaling, nullptr, 0,
|
|
437
|
+
additional_constraints_subchannel_connection_scaling, nullptr, 0, true,
|
|
456
438
|
true},
|
|
457
|
-
{"subchannel_wrapper_cleanup_on_orphan",
|
|
458
|
-
description_subchannel_wrapper_cleanup_on_orphan,
|
|
459
|
-
additional_constraints_subchannel_wrapper_cleanup_on_orphan, nullptr, 0,
|
|
460
|
-
true, true},
|
|
461
439
|
{"tcp_frame_size_tuning", description_tcp_frame_size_tuning,
|
|
462
440
|
additional_constraints_tcp_frame_size_tuning, nullptr, 0, false, true},
|
|
463
441
|
{"tcp_rcv_lowat", description_tcp_rcv_lowat,
|
|
@@ -488,8 +466,8 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
488
466
|
false, true},
|
|
489
467
|
{"xds_server_filter_chain_per_route",
|
|
490
468
|
description_xds_server_filter_chain_per_route,
|
|
491
|
-
additional_constraints_xds_server_filter_chain_per_route,
|
|
492
|
-
false, true},
|
|
469
|
+
additional_constraints_xds_server_filter_chain_per_route,
|
|
470
|
+
required_experiments_xds_server_filter_chain_per_route, 1, false, true},
|
|
493
471
|
};
|
|
494
472
|
|
|
495
473
|
} // namespace grpc_core
|
|
@@ -527,9 +505,6 @@ const char* const additional_constraints_chaotic_good_send_supported_features =
|
|
|
527
505
|
const char* const description_custom_frame_check =
|
|
528
506
|
"Adding checks to custom HTTP2 frame.";
|
|
529
507
|
const char* const additional_constraints_custom_frame_check = "{}";
|
|
530
|
-
const char* const description_error_flatten =
|
|
531
|
-
"Flatten errors to ordinary absl::Status form.";
|
|
532
|
-
const char* const additional_constraints_error_flatten = "{}";
|
|
533
508
|
const char* const description_event_engine_client =
|
|
534
509
|
"Use EventEngine clients instead of iomgr's grpc_tcp_client";
|
|
535
510
|
const char* const additional_constraints_event_engine_client = "{}";
|
|
@@ -565,9 +540,6 @@ const uint8_t required_experiments_event_engine_for_all_other_endpoints[] = {
|
|
|
565
540
|
static_cast<uint8_t>(
|
|
566
541
|
grpc_core::kExperimentIdEventEngineDnsNonClientChannel),
|
|
567
542
|
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineListener)};
|
|
568
|
-
const char* const description_event_engine_poller_for_python =
|
|
569
|
-
"Enable event engine poller in gRPC Python";
|
|
570
|
-
const char* const additional_constraints_event_engine_poller_for_python = "{}";
|
|
571
543
|
const char* const description_fail_recv_metadata_on_deadline_exceeded =
|
|
572
544
|
"Fail recv initial metadata when the deadline is exceeded.";
|
|
573
545
|
const char* const
|
|
@@ -582,9 +554,6 @@ const char* const description_h2_max_deallocating_streams_headroom =
|
|
|
582
554
|
"Separate allocated max concurrent streams.";
|
|
583
555
|
const char* const additional_constraints_h2_max_deallocating_streams_headroom =
|
|
584
556
|
"{}";
|
|
585
|
-
const char* const description_header_data_frame =
|
|
586
|
-
"Managing header and data memory better";
|
|
587
|
-
const char* const additional_constraints_header_data_frame = "{}";
|
|
588
557
|
const char* const description_inproc_cancel_stream =
|
|
589
558
|
"If set, cancel inproc stream inside the transport mutex.";
|
|
590
559
|
const char* const additional_constraints_inproc_cancel_stream = "{}";
|
|
@@ -596,9 +565,6 @@ const char* const description_local_connector_secure =
|
|
|
596
565
|
"Local security connector uses TSI_SECURITY_NONE for LOCAL_TCP "
|
|
597
566
|
"connections.";
|
|
598
567
|
const char* const additional_constraints_local_connector_secure = "{}";
|
|
599
|
-
const char* const description_max_inflight_pings_strict_limit =
|
|
600
|
-
"If set, the max inflight pings limit is strictly enforced.";
|
|
601
|
-
const char* const additional_constraints_max_inflight_pings_strict_limit = "{}";
|
|
602
568
|
const char* const description_memory_optimization_01 = "Memory Optimization";
|
|
603
569
|
const char* const additional_constraints_memory_optimization_01 = "{}";
|
|
604
570
|
const char* const description_memory_optimization_02 = "Memory Optimization 02";
|
|
@@ -627,6 +593,10 @@ const char* const description_optimization_03 = "Optimization";
|
|
|
627
593
|
const char* const additional_constraints_optimization_03 = "{}";
|
|
628
594
|
const char* const description_optimization_04 = "Optimization";
|
|
629
595
|
const char* const additional_constraints_optimization_04 = "{}";
|
|
596
|
+
const char* const description_optimization_05 = "Optimization";
|
|
597
|
+
const char* const additional_constraints_optimization_05 = "{}";
|
|
598
|
+
const char* const description_optimization_06 = "Optimization";
|
|
599
|
+
const char* const additional_constraints_optimization_06 = "{}";
|
|
630
600
|
const char* const description_otel_export_telemetry_domains =
|
|
631
601
|
"Export telemetry domains in OpenTelemetry metrics.";
|
|
632
602
|
const char* const additional_constraints_otel_export_telemetry_domains = "{}";
|
|
@@ -718,11 +688,6 @@ const char* const additional_constraints_skip_clear_peer_on_cancellation = "{}";
|
|
|
718
688
|
const char* const description_subchannel_connection_scaling =
|
|
719
689
|
"Subchannel connection scaling support.";
|
|
720
690
|
const char* const additional_constraints_subchannel_connection_scaling = "{}";
|
|
721
|
-
const char* const description_subchannel_wrapper_cleanup_on_orphan =
|
|
722
|
-
"Fixes the subchannel wrapper to drop any non-cancelled watchers when it "
|
|
723
|
-
"gets orphaned.";
|
|
724
|
-
const char* const additional_constraints_subchannel_wrapper_cleanup_on_orphan =
|
|
725
|
-
"{}";
|
|
726
691
|
const char* const description_tcp_frame_size_tuning =
|
|
727
692
|
"If set, enables TCP to use RPC size estimation made by higher layers. TCP "
|
|
728
693
|
"would not indicate completion of a read operation until a specified "
|
|
@@ -760,6 +725,9 @@ const char* const description_xds_server_filter_chain_per_route =
|
|
|
760
725
|
"xDS servers use a separate filter chain for each route.";
|
|
761
726
|
const char* const additional_constraints_xds_server_filter_chain_per_route =
|
|
762
727
|
"{}";
|
|
728
|
+
const uint8_t required_experiments_xds_server_filter_chain_per_route[] = {
|
|
729
|
+
static_cast<uint8_t>(
|
|
730
|
+
grpc_core::kExperimentIdV2NonOwningWakerImplementation)};
|
|
763
731
|
} // namespace
|
|
764
732
|
|
|
765
733
|
namespace grpc_core {
|
|
@@ -785,11 +753,9 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
785
753
|
{"chaotic_good_send_supported_features",
|
|
786
754
|
description_chaotic_good_send_supported_features,
|
|
787
755
|
additional_constraints_chaotic_good_send_supported_features, nullptr, 0,
|
|
788
|
-
|
|
756
|
+
true, true},
|
|
789
757
|
{"custom_frame_check", description_custom_frame_check,
|
|
790
758
|
additional_constraints_custom_frame_check, nullptr, 0, true, false},
|
|
791
|
-
{"error_flatten", description_error_flatten,
|
|
792
|
-
additional_constraints_error_flatten, nullptr, 0, true, false},
|
|
793
759
|
{"event_engine_client", description_event_engine_client,
|
|
794
760
|
additional_constraints_event_engine_client, nullptr, 0, true, false},
|
|
795
761
|
{"event_engine_dns", description_event_engine_dns,
|
|
@@ -809,10 +775,6 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
809
775
|
description_event_engine_for_all_other_endpoints,
|
|
810
776
|
additional_constraints_event_engine_for_all_other_endpoints,
|
|
811
777
|
required_experiments_event_engine_for_all_other_endpoints, 4, true, false},
|
|
812
|
-
{"event_engine_poller_for_python",
|
|
813
|
-
description_event_engine_poller_for_python,
|
|
814
|
-
additional_constraints_event_engine_poller_for_python, nullptr, 0, true,
|
|
815
|
-
true},
|
|
816
778
|
{"fail_recv_metadata_on_deadline_exceeded",
|
|
817
779
|
description_fail_recv_metadata_on_deadline_exceeded,
|
|
818
780
|
additional_constraints_fail_recv_metadata_on_deadline_exceeded, nullptr, 0,
|
|
@@ -825,8 +787,6 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
825
787
|
description_h2_max_deallocating_streams_headroom,
|
|
826
788
|
additional_constraints_h2_max_deallocating_streams_headroom, nullptr, 0,
|
|
827
789
|
false, true},
|
|
828
|
-
{"header_data_frame", description_header_data_frame,
|
|
829
|
-
additional_constraints_header_data_frame, nullptr, 0, true, true},
|
|
830
790
|
{"inproc_cancel_stream", description_inproc_cancel_stream,
|
|
831
791
|
additional_constraints_inproc_cancel_stream, nullptr, 0, true, true},
|
|
832
792
|
{"keep_alive_ping_timer_batch", description_keep_alive_ping_timer_batch,
|
|
@@ -834,22 +794,18 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
834
794
|
true},
|
|
835
795
|
{"local_connector_secure", description_local_connector_secure,
|
|
836
796
|
additional_constraints_local_connector_secure, nullptr, 0, false, true},
|
|
837
|
-
{"max_inflight_pings_strict_limit",
|
|
838
|
-
description_max_inflight_pings_strict_limit,
|
|
839
|
-
additional_constraints_max_inflight_pings_strict_limit, nullptr, 0, true,
|
|
840
|
-
true},
|
|
841
797
|
{"memory_optimization_01", description_memory_optimization_01,
|
|
842
798
|
additional_constraints_memory_optimization_01, nullptr, 0, false, false},
|
|
843
799
|
{"memory_optimization_02", description_memory_optimization_02,
|
|
844
800
|
additional_constraints_memory_optimization_02, nullptr, 0, false, false},
|
|
845
801
|
{"message_size_refactoring", description_message_size_refactoring,
|
|
846
|
-
additional_constraints_message_size_refactoring, nullptr, 0,
|
|
802
|
+
additional_constraints_message_size_refactoring, nullptr, 0, false, true},
|
|
847
803
|
{"metadata_outstanding_token_refactor",
|
|
848
804
|
description_metadata_outstanding_token_refactor,
|
|
849
805
|
additional_constraints_metadata_outstanding_token_refactor, nullptr, 0,
|
|
850
806
|
false, true},
|
|
851
807
|
{"metadata_publish_to_app_tag", description_metadata_publish_to_app_tag,
|
|
852
|
-
additional_constraints_metadata_publish_to_app_tag, nullptr, 0,
|
|
808
|
+
additional_constraints_metadata_publish_to_app_tag, nullptr, 0, false,
|
|
853
809
|
true},
|
|
854
810
|
{"monitoring_experiment", description_monitoring_experiment,
|
|
855
811
|
additional_constraints_monitoring_experiment, nullptr, 0, true, true},
|
|
@@ -863,6 +819,10 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
863
819
|
additional_constraints_optimization_03, nullptr, 0, true, true},
|
|
864
820
|
{"optimization_04", description_optimization_04,
|
|
865
821
|
additional_constraints_optimization_04, nullptr, 0, true, true},
|
|
822
|
+
{"optimization_05", description_optimization_05,
|
|
823
|
+
additional_constraints_optimization_05, nullptr, 0, false, true},
|
|
824
|
+
{"optimization_06", description_optimization_06,
|
|
825
|
+
additional_constraints_optimization_06, nullptr, 0, false, true},
|
|
866
826
|
{"otel_export_telemetry_domains", description_otel_export_telemetry_domains,
|
|
867
827
|
additional_constraints_otel_export_telemetry_domains, nullptr, 0, false,
|
|
868
828
|
true},
|
|
@@ -871,7 +831,7 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
871
831
|
{"ph2_client_server", description_ph2_client_server,
|
|
872
832
|
additional_constraints_ph2_client_server, nullptr, 0, false, true},
|
|
873
833
|
{"ph2_perf_01", description_ph2_perf_01, additional_constraints_ph2_perf_01,
|
|
874
|
-
nullptr, 0,
|
|
834
|
+
nullptr, 0, false, true},
|
|
875
835
|
{"ph2_server", description_ph2_server, additional_constraints_ph2_server,
|
|
876
836
|
nullptr, 0, false, true},
|
|
877
837
|
{"pick_first_ignore_empty_updates",
|
|
@@ -903,7 +863,7 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
903
863
|
{"retry_in_callv3", description_retry_in_callv3,
|
|
904
864
|
additional_constraints_retry_in_callv3, nullptr, 0, false, true},
|
|
905
865
|
{"return_preexisting_errors", description_return_preexisting_errors,
|
|
906
|
-
additional_constraints_return_preexisting_errors, nullptr, 0,
|
|
866
|
+
additional_constraints_return_preexisting_errors, nullptr, 0, true, true},
|
|
907
867
|
{"schedule_cancellation_over_write",
|
|
908
868
|
description_schedule_cancellation_over_write,
|
|
909
869
|
additional_constraints_schedule_cancellation_over_write, nullptr, 0, false,
|
|
@@ -925,12 +885,8 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
925
885
|
additional_constraints_skip_clear_peer_on_cancellation, nullptr, 0, false,
|
|
926
886
|
true},
|
|
927
887
|
{"subchannel_connection_scaling", description_subchannel_connection_scaling,
|
|
928
|
-
additional_constraints_subchannel_connection_scaling, nullptr, 0,
|
|
888
|
+
additional_constraints_subchannel_connection_scaling, nullptr, 0, true,
|
|
929
889
|
true},
|
|
930
|
-
{"subchannel_wrapper_cleanup_on_orphan",
|
|
931
|
-
description_subchannel_wrapper_cleanup_on_orphan,
|
|
932
|
-
additional_constraints_subchannel_wrapper_cleanup_on_orphan, nullptr, 0,
|
|
933
|
-
true, true},
|
|
934
890
|
{"tcp_frame_size_tuning", description_tcp_frame_size_tuning,
|
|
935
891
|
additional_constraints_tcp_frame_size_tuning, nullptr, 0, false, true},
|
|
936
892
|
{"tcp_rcv_lowat", description_tcp_rcv_lowat,
|
|
@@ -961,8 +917,8 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
961
917
|
false, true},
|
|
962
918
|
{"xds_server_filter_chain_per_route",
|
|
963
919
|
description_xds_server_filter_chain_per_route,
|
|
964
|
-
additional_constraints_xds_server_filter_chain_per_route,
|
|
965
|
-
false, true},
|
|
920
|
+
additional_constraints_xds_server_filter_chain_per_route,
|
|
921
|
+
required_experiments_xds_server_filter_chain_per_route, 1, false, true},
|
|
966
922
|
};
|
|
967
923
|
|
|
968
924
|
} // namespace grpc_core
|
|
@@ -1000,9 +956,6 @@ const char* const additional_constraints_chaotic_good_send_supported_features =
|
|
|
1000
956
|
const char* const description_custom_frame_check =
|
|
1001
957
|
"Adding checks to custom HTTP2 frame.";
|
|
1002
958
|
const char* const additional_constraints_custom_frame_check = "{}";
|
|
1003
|
-
const char* const description_error_flatten =
|
|
1004
|
-
"Flatten errors to ordinary absl::Status form.";
|
|
1005
|
-
const char* const additional_constraints_error_flatten = "{}";
|
|
1006
959
|
const char* const description_event_engine_client =
|
|
1007
960
|
"Use EventEngine clients instead of iomgr's grpc_tcp_client";
|
|
1008
961
|
const char* const additional_constraints_event_engine_client = "{}";
|
|
@@ -1038,9 +991,6 @@ const uint8_t required_experiments_event_engine_for_all_other_endpoints[] = {
|
|
|
1038
991
|
static_cast<uint8_t>(
|
|
1039
992
|
grpc_core::kExperimentIdEventEngineDnsNonClientChannel),
|
|
1040
993
|
static_cast<uint8_t>(grpc_core::kExperimentIdEventEngineListener)};
|
|
1041
|
-
const char* const description_event_engine_poller_for_python =
|
|
1042
|
-
"Enable event engine poller in gRPC Python";
|
|
1043
|
-
const char* const additional_constraints_event_engine_poller_for_python = "{}";
|
|
1044
994
|
const char* const description_fail_recv_metadata_on_deadline_exceeded =
|
|
1045
995
|
"Fail recv initial metadata when the deadline is exceeded.";
|
|
1046
996
|
const char* const
|
|
@@ -1055,9 +1005,6 @@ const char* const description_h2_max_deallocating_streams_headroom =
|
|
|
1055
1005
|
"Separate allocated max concurrent streams.";
|
|
1056
1006
|
const char* const additional_constraints_h2_max_deallocating_streams_headroom =
|
|
1057
1007
|
"{}";
|
|
1058
|
-
const char* const description_header_data_frame =
|
|
1059
|
-
"Managing header and data memory better";
|
|
1060
|
-
const char* const additional_constraints_header_data_frame = "{}";
|
|
1061
1008
|
const char* const description_inproc_cancel_stream =
|
|
1062
1009
|
"If set, cancel inproc stream inside the transport mutex.";
|
|
1063
1010
|
const char* const additional_constraints_inproc_cancel_stream = "{}";
|
|
@@ -1069,9 +1016,6 @@ const char* const description_local_connector_secure =
|
|
|
1069
1016
|
"Local security connector uses TSI_SECURITY_NONE for LOCAL_TCP "
|
|
1070
1017
|
"connections.";
|
|
1071
1018
|
const char* const additional_constraints_local_connector_secure = "{}";
|
|
1072
|
-
const char* const description_max_inflight_pings_strict_limit =
|
|
1073
|
-
"If set, the max inflight pings limit is strictly enforced.";
|
|
1074
|
-
const char* const additional_constraints_max_inflight_pings_strict_limit = "{}";
|
|
1075
1019
|
const char* const description_memory_optimization_01 = "Memory Optimization";
|
|
1076
1020
|
const char* const additional_constraints_memory_optimization_01 = "{}";
|
|
1077
1021
|
const char* const description_memory_optimization_02 = "Memory Optimization 02";
|
|
@@ -1100,6 +1044,10 @@ const char* const description_optimization_03 = "Optimization";
|
|
|
1100
1044
|
const char* const additional_constraints_optimization_03 = "{}";
|
|
1101
1045
|
const char* const description_optimization_04 = "Optimization";
|
|
1102
1046
|
const char* const additional_constraints_optimization_04 = "{}";
|
|
1047
|
+
const char* const description_optimization_05 = "Optimization";
|
|
1048
|
+
const char* const additional_constraints_optimization_05 = "{}";
|
|
1049
|
+
const char* const description_optimization_06 = "Optimization";
|
|
1050
|
+
const char* const additional_constraints_optimization_06 = "{}";
|
|
1103
1051
|
const char* const description_otel_export_telemetry_domains =
|
|
1104
1052
|
"Export telemetry domains in OpenTelemetry metrics.";
|
|
1105
1053
|
const char* const additional_constraints_otel_export_telemetry_domains = "{}";
|
|
@@ -1191,11 +1139,6 @@ const char* const additional_constraints_skip_clear_peer_on_cancellation = "{}";
|
|
|
1191
1139
|
const char* const description_subchannel_connection_scaling =
|
|
1192
1140
|
"Subchannel connection scaling support.";
|
|
1193
1141
|
const char* const additional_constraints_subchannel_connection_scaling = "{}";
|
|
1194
|
-
const char* const description_subchannel_wrapper_cleanup_on_orphan =
|
|
1195
|
-
"Fixes the subchannel wrapper to drop any non-cancelled watchers when it "
|
|
1196
|
-
"gets orphaned.";
|
|
1197
|
-
const char* const additional_constraints_subchannel_wrapper_cleanup_on_orphan =
|
|
1198
|
-
"{}";
|
|
1199
1142
|
const char* const description_tcp_frame_size_tuning =
|
|
1200
1143
|
"If set, enables TCP to use RPC size estimation made by higher layers. TCP "
|
|
1201
1144
|
"would not indicate completion of a read operation until a specified "
|
|
@@ -1233,6 +1176,9 @@ const char* const description_xds_server_filter_chain_per_route =
|
|
|
1233
1176
|
"xDS servers use a separate filter chain for each route.";
|
|
1234
1177
|
const char* const additional_constraints_xds_server_filter_chain_per_route =
|
|
1235
1178
|
"{}";
|
|
1179
|
+
const uint8_t required_experiments_xds_server_filter_chain_per_route[] = {
|
|
1180
|
+
static_cast<uint8_t>(
|
|
1181
|
+
grpc_core::kExperimentIdV2NonOwningWakerImplementation)};
|
|
1236
1182
|
} // namespace
|
|
1237
1183
|
|
|
1238
1184
|
namespace grpc_core {
|
|
@@ -1258,11 +1204,9 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
1258
1204
|
{"chaotic_good_send_supported_features",
|
|
1259
1205
|
description_chaotic_good_send_supported_features,
|
|
1260
1206
|
additional_constraints_chaotic_good_send_supported_features, nullptr, 0,
|
|
1261
|
-
|
|
1207
|
+
true, true},
|
|
1262
1208
|
{"custom_frame_check", description_custom_frame_check,
|
|
1263
1209
|
additional_constraints_custom_frame_check, nullptr, 0, true, false},
|
|
1264
|
-
{"error_flatten", description_error_flatten,
|
|
1265
|
-
additional_constraints_error_flatten, nullptr, 0, true, false},
|
|
1266
1210
|
{"event_engine_client", description_event_engine_client,
|
|
1267
1211
|
additional_constraints_event_engine_client, nullptr, 0, true, false},
|
|
1268
1212
|
{"event_engine_dns", description_event_engine_dns,
|
|
@@ -1282,10 +1226,6 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
1282
1226
|
description_event_engine_for_all_other_endpoints,
|
|
1283
1227
|
additional_constraints_event_engine_for_all_other_endpoints,
|
|
1284
1228
|
required_experiments_event_engine_for_all_other_endpoints, 4, true, false},
|
|
1285
|
-
{"event_engine_poller_for_python",
|
|
1286
|
-
description_event_engine_poller_for_python,
|
|
1287
|
-
additional_constraints_event_engine_poller_for_python, nullptr, 0, true,
|
|
1288
|
-
true},
|
|
1289
1229
|
{"fail_recv_metadata_on_deadline_exceeded",
|
|
1290
1230
|
description_fail_recv_metadata_on_deadline_exceeded,
|
|
1291
1231
|
additional_constraints_fail_recv_metadata_on_deadline_exceeded, nullptr, 0,
|
|
@@ -1298,8 +1238,6 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
1298
1238
|
description_h2_max_deallocating_streams_headroom,
|
|
1299
1239
|
additional_constraints_h2_max_deallocating_streams_headroom, nullptr, 0,
|
|
1300
1240
|
false, true},
|
|
1301
|
-
{"header_data_frame", description_header_data_frame,
|
|
1302
|
-
additional_constraints_header_data_frame, nullptr, 0, true, true},
|
|
1303
1241
|
{"inproc_cancel_stream", description_inproc_cancel_stream,
|
|
1304
1242
|
additional_constraints_inproc_cancel_stream, nullptr, 0, true, true},
|
|
1305
1243
|
{"keep_alive_ping_timer_batch", description_keep_alive_ping_timer_batch,
|
|
@@ -1307,22 +1245,18 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
1307
1245
|
true},
|
|
1308
1246
|
{"local_connector_secure", description_local_connector_secure,
|
|
1309
1247
|
additional_constraints_local_connector_secure, nullptr, 0, false, true},
|
|
1310
|
-
{"max_inflight_pings_strict_limit",
|
|
1311
|
-
description_max_inflight_pings_strict_limit,
|
|
1312
|
-
additional_constraints_max_inflight_pings_strict_limit, nullptr, 0, true,
|
|
1313
|
-
true},
|
|
1314
1248
|
{"memory_optimization_01", description_memory_optimization_01,
|
|
1315
1249
|
additional_constraints_memory_optimization_01, nullptr, 0, false, false},
|
|
1316
1250
|
{"memory_optimization_02", description_memory_optimization_02,
|
|
1317
1251
|
additional_constraints_memory_optimization_02, nullptr, 0, false, false},
|
|
1318
1252
|
{"message_size_refactoring", description_message_size_refactoring,
|
|
1319
|
-
additional_constraints_message_size_refactoring, nullptr, 0,
|
|
1253
|
+
additional_constraints_message_size_refactoring, nullptr, 0, false, true},
|
|
1320
1254
|
{"metadata_outstanding_token_refactor",
|
|
1321
1255
|
description_metadata_outstanding_token_refactor,
|
|
1322
1256
|
additional_constraints_metadata_outstanding_token_refactor, nullptr, 0,
|
|
1323
1257
|
false, true},
|
|
1324
1258
|
{"metadata_publish_to_app_tag", description_metadata_publish_to_app_tag,
|
|
1325
|
-
additional_constraints_metadata_publish_to_app_tag, nullptr, 0,
|
|
1259
|
+
additional_constraints_metadata_publish_to_app_tag, nullptr, 0, false,
|
|
1326
1260
|
true},
|
|
1327
1261
|
{"monitoring_experiment", description_monitoring_experiment,
|
|
1328
1262
|
additional_constraints_monitoring_experiment, nullptr, 0, true, true},
|
|
@@ -1336,6 +1270,10 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
1336
1270
|
additional_constraints_optimization_03, nullptr, 0, true, true},
|
|
1337
1271
|
{"optimization_04", description_optimization_04,
|
|
1338
1272
|
additional_constraints_optimization_04, nullptr, 0, true, true},
|
|
1273
|
+
{"optimization_05", description_optimization_05,
|
|
1274
|
+
additional_constraints_optimization_05, nullptr, 0, false, true},
|
|
1275
|
+
{"optimization_06", description_optimization_06,
|
|
1276
|
+
additional_constraints_optimization_06, nullptr, 0, false, true},
|
|
1339
1277
|
{"otel_export_telemetry_domains", description_otel_export_telemetry_domains,
|
|
1340
1278
|
additional_constraints_otel_export_telemetry_domains, nullptr, 0, false,
|
|
1341
1279
|
true},
|
|
@@ -1344,7 +1282,7 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
1344
1282
|
{"ph2_client_server", description_ph2_client_server,
|
|
1345
1283
|
additional_constraints_ph2_client_server, nullptr, 0, false, true},
|
|
1346
1284
|
{"ph2_perf_01", description_ph2_perf_01, additional_constraints_ph2_perf_01,
|
|
1347
|
-
nullptr, 0,
|
|
1285
|
+
nullptr, 0, false, true},
|
|
1348
1286
|
{"ph2_server", description_ph2_server, additional_constraints_ph2_server,
|
|
1349
1287
|
nullptr, 0, false, true},
|
|
1350
1288
|
{"pick_first_ignore_empty_updates",
|
|
@@ -1376,7 +1314,7 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
1376
1314
|
{"retry_in_callv3", description_retry_in_callv3,
|
|
1377
1315
|
additional_constraints_retry_in_callv3, nullptr, 0, false, true},
|
|
1378
1316
|
{"return_preexisting_errors", description_return_preexisting_errors,
|
|
1379
|
-
additional_constraints_return_preexisting_errors, nullptr, 0,
|
|
1317
|
+
additional_constraints_return_preexisting_errors, nullptr, 0, true, true},
|
|
1380
1318
|
{"schedule_cancellation_over_write",
|
|
1381
1319
|
description_schedule_cancellation_over_write,
|
|
1382
1320
|
additional_constraints_schedule_cancellation_over_write, nullptr, 0, false,
|
|
@@ -1398,12 +1336,8 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
1398
1336
|
additional_constraints_skip_clear_peer_on_cancellation, nullptr, 0, false,
|
|
1399
1337
|
true},
|
|
1400
1338
|
{"subchannel_connection_scaling", description_subchannel_connection_scaling,
|
|
1401
|
-
additional_constraints_subchannel_connection_scaling, nullptr, 0,
|
|
1339
|
+
additional_constraints_subchannel_connection_scaling, nullptr, 0, true,
|
|
1402
1340
|
true},
|
|
1403
|
-
{"subchannel_wrapper_cleanup_on_orphan",
|
|
1404
|
-
description_subchannel_wrapper_cleanup_on_orphan,
|
|
1405
|
-
additional_constraints_subchannel_wrapper_cleanup_on_orphan, nullptr, 0,
|
|
1406
|
-
true, true},
|
|
1407
1341
|
{"tcp_frame_size_tuning", description_tcp_frame_size_tuning,
|
|
1408
1342
|
additional_constraints_tcp_frame_size_tuning, nullptr, 0, false, true},
|
|
1409
1343
|
{"tcp_rcv_lowat", description_tcp_rcv_lowat,
|
|
@@ -1434,8 +1368,8 @@ const ExperimentMetadata g_experiment_metadata[] = {
|
|
|
1434
1368
|
false, true},
|
|
1435
1369
|
{"xds_server_filter_chain_per_route",
|
|
1436
1370
|
description_xds_server_filter_chain_per_route,
|
|
1437
|
-
additional_constraints_xds_server_filter_chain_per_route,
|
|
1438
|
-
false, true},
|
|
1371
|
+
additional_constraints_xds_server_filter_chain_per_route,
|
|
1372
|
+
required_experiments_xds_server_filter_chain_per_route, 1, false, true},
|
|
1439
1373
|
};
|
|
1440
1374
|
|
|
1441
1375
|
} // namespace grpc_core
|