Revert "[test] Enable EventEngine experiments for Posix end2end tests." (#32855)

Reverts grpc/grpc#32844. CI revealed multiple EventEngine issues
overnight.
pull/32877/head
AJ Heller 2 years ago committed by GitHub
parent b16bf18bc3
commit ca92648aa3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      bazel/experiments.bzl
  2. 39
      src/core/lib/experiments/experiments.yaml
  3. 1
      test/core/end2end/BUILD
  4. 25
      test/core/end2end/end2end_test_main.cc
  5. 28
      test/core/end2end/end2end_tests.h

@ -24,8 +24,6 @@ EXPERIMENTS = {
"transport_supplies_client_latency", "transport_supplies_client_latency",
], ],
"core_end2end_test": [ "core_end2end_test": [
"event_engine_client",
"event_engine_listener",
"promise_based_client_call", "promise_based_client_call",
"promise_based_server_call", "promise_based_server_call",
], ],

@ -29,7 +29,7 @@
# that that test should be run with this experiment enabled in CI # that that test should be run with this experiment enabled in CI
# #
# Well known test tags: # Well known test tags:
# core_end2end_test: all tests, fixtures in the core end2end suite # core_end2end_tests: all tests, fixtures in the core end2end suite
# endpoint_test: endpoint related iomgr tests # endpoint_test: endpoint related iomgr tests
# flow_control_test: tests pertaining explicitly to flow control # flow_control_test: tests pertaining explicitly to flow control
# hpack_test: hpack encode/decode tests # hpack_test: hpack encode/decode tests
@ -47,7 +47,8 @@
owner: vigneshbabu@google.com owner: vigneshbabu@google.com
test_tags: ["endpoint_test", "flow_control_test"] test_tags: ["endpoint_test", "flow_control_test"]
- name: tcp_rcv_lowat - name: tcp_rcv_lowat
description: Use SO_RCVLOWAT to avoid wakeups on the read path. description:
Use SO_RCVLOWAT to avoid wakeups on the read path.
default: false default: false
expiry: 2023/03/01 expiry: 2023/03/01
owner: vigneshbabu@google.com owner: vigneshbabu@google.com
@ -62,31 +63,36 @@
owner: vigneshbabu@google.com owner: vigneshbabu@google.com
test_tags: ["flow_control_test"] test_tags: ["flow_control_test"]
- name: flow_control_fixes - name: flow_control_fixes
description: Various fixes for flow control, max frame size setting. description:
Various fixes for flow control, max frame size setting.
default: true default: true
expiry: 2023/04/01 expiry: 2023/04/01
owner: ctiller@google.com owner: ctiller@google.com
test_tags: ["flow_control_test"] test_tags: ["flow_control_test"]
- name: memory_pressure_controller - name: memory_pressure_controller
description: New memory pressure controller description:
New memory pressure controller
default: false default: false
expiry: 2023/03/01 expiry: 2023/03/01
owner: ctiller@google.com owner: ctiller@google.com
test_tags: [resource_quota_test] test_tags: [resource_quota_test]
- name: unconstrained_max_quota_buffer_size - name: unconstrained_max_quota_buffer_size
description: Discard the cap on the max free pool size for one memory allocator description:
Discard the cap on the max free pool size for one memory allocator
default: false default: false
expiry: 2023/03/01 expiry: 2023/03/01
owner: ctiller@google.com owner: ctiller@google.com
test_tags: [resource_quota_test] test_tags: [resource_quota_test]
- name: event_engine_client - name: event_engine_client
description: Use EventEngine clients instead of iomgr's grpc_tcp_client description:
Use EventEngine clients instead of iomgr's grpc_tcp_client
default: false default: false
expiry: 2023/04/13 expiry: 2023/04/13
owner: hork@google.com owner: hork@google.com
test_tags: ["core_end2end_test", "event_engine_client_test"] test_tags: ["event_engine_client_test"]
- name: monitoring_experiment - name: monitoring_experiment
description: Placeholder experiment to prove/disprove our monitoring is working description:
Placeholder experiment to prove/disprove our monitoring is working
default: true default: true
expiry: 2023/06/01 expiry: 2023/06/01
owner: ctiller@google.com owner: ctiller@google.com
@ -100,7 +106,8 @@
owner: ctiller@google.com owner: ctiller@google.com
test_tags: ["core_end2end_test", "lame_client_test"] test_tags: ["core_end2end_test", "lame_client_test"]
- name: free_large_allocator - name: free_large_allocator
description: If set, return all free bytes from a "big" allocator description:
If set, return all free bytes from a "big" allocator
default: false default: false
expiry: 2023/04/01 expiry: 2023/04/01
owner: alishananda@google.com owner: alishananda@google.com
@ -116,25 +123,29 @@
# removing these until I can stabilize tests a little further # removing these until I can stabilize tests a little further
disabled_test_tags: ["cpp_end2end_test", "xds_end2end_test"] disabled_test_tags: ["cpp_end2end_test", "xds_end2end_test"]
- name: transport_supplies_client_latency - name: transport_supplies_client_latency
description: If set, use the transport represented value for client latency in opencensus description:
If set, use the transport represented value for client latency in opencensus
default: false default: false
expiry: 2023/06/01 expiry: 2023/06/01
owner: ctiller@google.com owner: ctiller@google.com
test_tags: [census_test] test_tags: [census_test]
- name: event_engine_listener - name: event_engine_listener
description: Use EventEngine listeners instead of iomgr's grpc_tcp_server description:
Use EventEngine listeners instead of iomgr's grpc_tcp_server
default: false default: false
expiry: 2023/05/13 expiry: 2023/05/13
owner: vigneshbabu@google.com owner: vigneshbabu@google.com
test_tags: ["core_end2end_test", "event_engine_listener_test"] test_tags: ["event_engine_listener_test"]
- name: schedule_cancellation_over_write - name: schedule_cancellation_over_write
description: Allow cancellation op to be scheduled over a write description:
Allow cancellation op to be scheduled over a write
default: false default: false
expiry: 2023/07/01 expiry: 2023/07/01
owner: vigneshbabu@google.com owner: vigneshbabu@google.com
test_tags: [] test_tags: []
- name: trace_record_callops - name: trace_record_callops
description: Enables tracing of call batch initiation and completion. description:
Enables tracing of call batch initiation and completion.
default: false default: false
expiry: 2023/07/01 expiry: 2023/07/01
owner: vigneshbabu@google.com owner: vigneshbabu@google.com

@ -318,7 +318,6 @@ grpc_cc_test(
"//src/core:channel_stack_type", "//src/core:channel_stack_type",
"//src/core:closure", "//src/core:closure",
"//src/core:error", "//src/core:error",
"//src/core:experiments",
"//src/core:grpc_authorization_base", "//src/core:grpc_authorization_base",
"//src/core:grpc_fake_credentials", "//src/core:grpc_fake_credentials",
"//src/core:iomgr_port", "//src/core:iomgr_port",

@ -44,7 +44,6 @@
#include "src/core/lib/channel/channel_args.h" #include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/config/config_vars.h" #include "src/core/lib/config/config_vars.h"
#include "src/core/lib/debug/trace.h" #include "src/core/lib/debug/trace.h"
#include "src/core/lib/experiments/experiments.h"
#include "src/core/lib/gprpp/host_port.h" #include "src/core/lib/gprpp/host_port.h"
#include "src/core/lib/gprpp/no_destruct.h" #include "src/core/lib/gprpp/no_destruct.h"
#include "src/core/lib/iomgr/error.h" #include "src/core/lib/iomgr/error.h"
@ -925,24 +924,6 @@ class ConfigQuery {
AllConfigs()); AllConfigs());
std::vector<const CoreTestConfiguration*> out; std::vector<const CoreTestConfiguration*> out;
for (const CoreTestConfiguration& config : *kConfigs) { for (const CoreTestConfiguration& config : *kConfigs) {
if (IsEventEngineClientEnabled() &&
// Ignore disabled test suites
(((exclude_features_ &
FEATURE_MASK_DISABLE_EVENT_ENGINE_CLIENT_EXPERIMENT) != 0) ||
// Ignore disabled tests
((config.feature_mask &
FEATURE_MASK_DISABLE_EVENT_ENGINE_CLIENT_EXPERIMENT) != 0))) {
continue;
}
if (IsEventEngineListenerEnabled() &&
// Ignore disabled test suites
(((exclude_features_ &
FEATURE_MASK_DISABLE_EVENT_ENGINE_LISTENER_EXPERIMENT) != 0) ||
// Ignore disabled tests
((config.feature_mask &
FEATURE_MASK_DISABLE_EVENT_ENGINE_LISTENER_EXPERIMENT) != 0))) {
continue;
}
if ((config.feature_mask & enforce_features_) == enforce_features_ && if ((config.feature_mask & enforce_features_) == enforce_features_ &&
(config.feature_mask & exclude_features_) == 0) { (config.feature_mask & exclude_features_) == 0) {
bool allowed = allowed_names_.empty(); bool allowed = allowed_names_.empty();
@ -1042,15 +1023,11 @@ INSTANTIATE_TEST_SUITE_P(
.Run(), .Run(),
NameFromConfig); NameFromConfig);
// TODO(ctiller): Resolve the ResourceQuota / EventEngine listener problems and
// re-enable this test.
GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(ResourceQuotaTest);
INSTANTIATE_TEST_SUITE_P( INSTANTIATE_TEST_SUITE_P(
ResourceQuotaTests, ResourceQuotaTest, ResourceQuotaTests, ResourceQuotaTest,
ConfigQuery() ConfigQuery()
.ExcludeFeatures(FEATURE_MASK_SUPPORTS_REQUEST_PROXYING | .ExcludeFeatures(FEATURE_MASK_SUPPORTS_REQUEST_PROXYING |
FEATURE_MASK_1BYTE_AT_A_TIME | FEATURE_MASK_1BYTE_AT_A_TIME)
FEATURE_MASK_DISABLE_EVENT_ENGINE_LISTENER_EXPERIMENT)
.ExcludeName("Chttp2.*Uds.*") .ExcludeName("Chttp2.*Uds.*")
.ExcludeName("Chttp2HttpProxy") .ExcludeName("Chttp2HttpProxy")
.Run(), .Run(),

@ -58,25 +58,23 @@
#include "test/core/util/test_config.h" #include "test/core/util/test_config.h"
// Test feature flags. // Test feature flags.
#define FEATURE_MASK_DOES_NOT_SUPPORT_RETRY 1 << 0 #define FEATURE_MASK_DOES_NOT_SUPPORT_RETRY 1
#define FEATURE_MASK_SUPPORTS_HOSTNAME_VERIFICATION 1 << 1 #define FEATURE_MASK_SUPPORTS_HOSTNAME_VERIFICATION 2
// Feature mask supports call credentials with a minimum security level of // Feature mask supports call credentials with a minimum security level of
// GRPC_PRIVACY_AND_INTEGRITY. // GRPC_PRIVACY_AND_INTEGRITY.
#define FEATURE_MASK_SUPPORTS_PER_CALL_CREDENTIALS 1 << 2 #define FEATURE_MASK_SUPPORTS_PER_CALL_CREDENTIALS 4
// Feature mask supports call credentials with a minimum security level of // Feature mask supports call credentials with a minimum security level of
// GRPC_SECURTITY_NONE. // GRPC_SECURTITY_NONE.
#define FEATURE_MASK_SUPPORTS_PER_CALL_CREDENTIALS_LEVEL_INSECURE 1 << 3 #define FEATURE_MASK_SUPPORTS_PER_CALL_CREDENTIALS_LEVEL_INSECURE 8
#define FEATURE_MASK_SUPPORTS_REQUEST_PROXYING 1 << 4 #define FEATURE_MASK_SUPPORTS_REQUEST_PROXYING 16
#define FEATURE_MASK_SUPPORTS_CLIENT_CHANNEL 1 << 5 #define FEATURE_MASK_SUPPORTS_CLIENT_CHANNEL 32
#define FEATURE_MASK_IS_HTTP2 1 << 6 #define FEATURE_MASK_IS_HTTP2 64
#define FEATURE_MASK_ENABLES_TRACES 1 << 7 #define FEATURE_MASK_ENABLES_TRACES 128
#define FEATURE_MASK_1BYTE_AT_A_TIME 1 << 8 #define FEATURE_MASK_1BYTE_AT_A_TIME 256
#define FEATURE_MASK_DOES_NOT_SUPPORT_WRITE_BUFFERING 1 << 9 #define FEATURE_MASK_DOES_NOT_SUPPORT_WRITE_BUFFERING 512
#define FEATURE_MASK_DOES_NOT_SUPPORT_CLIENT_HANDSHAKE_COMPLETE_FIRST 1 << 10 #define FEATURE_MASK_DOES_NOT_SUPPORT_CLIENT_HANDSHAKE_COMPLETE_FIRST 1024
#define FEATURE_MASK_IS_MINSTACK 1 << 11 #define FEATURE_MASK_IS_MINSTACK 2048
#define FEATURE_MASK_IS_SECURE 1 << 12 #define FEATURE_MASK_IS_SECURE 4096
#define FEATURE_MASK_DISABLE_EVENT_ENGINE_CLIENT_EXPERIMENT 1 << 13
#define FEATURE_MASK_DISABLE_EVENT_ENGINE_LISTENER_EXPERIMENT 1 << 14
#define FAIL_AUTH_CHECK_SERVER_ARG_NAME "fail_auth_check" #define FAIL_AUTH_CHECK_SERVER_ARG_NAME "fail_auth_check"

Loading…
Cancel
Save