From 4e51e9cff8f48a38bb5ce45e8602842486c3a59e Mon Sep 17 00:00:00 2001 From: Marek Siarkowicz Date: Mon, 26 Feb 2024 16:43:24 +0100 Subject: [PATCH 1/3] Explicitly disable ConsistentListFromCache in TestGetListNonRecursiveCacheBypass --- .../k8s.io/apiserver/pkg/storage/cacher/cacher_whitebox_test.go | 1 + 1 file changed, 1 insertion(+) diff --git a/staging/src/k8s.io/apiserver/pkg/storage/cacher/cacher_whitebox_test.go b/staging/src/k8s.io/apiserver/pkg/storage/cacher/cacher_whitebox_test.go index 2c0546ece56..0cfed001038 100644 --- a/staging/src/k8s.io/apiserver/pkg/storage/cacher/cacher_whitebox_test.go +++ b/staging/src/k8s.io/apiserver/pkg/storage/cacher/cacher_whitebox_test.go @@ -285,6 +285,7 @@ func testGetListCacheBypass(t *testing.T, options storage.ListOptions, expectByp } func TestGetListNonRecursiveCacheBypass(t *testing.T) { + featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.ConsistentListFromCache, false) backingStorage := &dummyStorage{} cacher, _, err := newTestCacher(backingStorage) if err != nil { From 0c0e19b343d48d4bea0e7fa735e3781c70298a34 Mon Sep 17 00:00:00 2001 From: Marek Siarkowicz Date: Mon, 26 Feb 2024 14:34:53 +0100 Subject: [PATCH 2/3] Move ConsistentListFromCache to Beta default --- pkg/features/kube_features.go | 2 +- staging/src/k8s.io/apiserver/pkg/features/kube_features.go | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/features/kube_features.go b/pkg/features/kube_features.go index adc74b68b4a..c506316aa44 100644 --- a/pkg/features/kube_features.go +++ b/pkg/features/kube_features.go @@ -1215,7 +1215,7 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS genericfeatures.APIServingWithRoutine: {Default: true, PreRelease: featuregate.Beta}, - genericfeatures.ConsistentListFromCache: {Default: false, PreRelease: featuregate.Alpha}, + genericfeatures.ConsistentListFromCache: {Default: true, PreRelease: featuregate.Beta}, genericfeatures.CustomResourceValidationExpressions: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.31 diff --git a/staging/src/k8s.io/apiserver/pkg/features/kube_features.go b/staging/src/k8s.io/apiserver/pkg/features/kube_features.go index c25296590a5..80dc25cc6b1 100644 --- a/staging/src/k8s.io/apiserver/pkg/features/kube_features.go +++ b/staging/src/k8s.io/apiserver/pkg/features/kube_features.go @@ -305,6 +305,7 @@ const ( // owner: @serathius // kep: http://kep.k8s.io/2340 // alpha: v1.28 + // beta: v1.31 // // Allow the API server to serve consistent lists from cache ConsistentListFromCache featuregate.Feature = "ConsistentListFromCache" @@ -392,7 +393,7 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS WatchList: {Default: false, PreRelease: featuregate.Alpha}, - ConsistentListFromCache: {Default: false, PreRelease: featuregate.Alpha}, + ConsistentListFromCache: {Default: true, PreRelease: featuregate.Beta}, ZeroLimitedNominalConcurrencyShares: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.32 } From 038bbacb41e645c935c6864612d9c3d1434d7f12 Mon Sep 17 00:00:00 2001 From: Marek Siarkowicz Date: Wed, 28 Feb 2024 10:54:25 +0100 Subject: [PATCH 3/3] Fix tracing test for list nodes --- .../apiserver/tracing/tracing_test.go | 32 ------------------- 1 file changed, 32 deletions(-) diff --git a/test/integration/apiserver/tracing/tracing_test.go b/test/integration/apiserver/tracing/tracing_test.go index 60b49c7ed15..b6d8b828a68 100644 --- a/test/integration/apiserver/tracing/tracing_test.go +++ b/test/integration/apiserver/tracing/tracing_test.go @@ -562,38 +562,6 @@ endpoint: %s`, listener.Addr().String())), os.FileMode(0755)); err != nil { "Writing http response done", }, }, - { - name: "List(recursive=true) etcd3", - attributes: map[string]func(*commonv1.AnyValue) bool{ - "audit-id": func(v *commonv1.AnyValue) bool { - return v.GetStringValue() != "" - }, - "key": func(v *commonv1.AnyValue) bool { - return v.GetStringValue() == "/minions" - }, - "resourceVersion": func(v *commonv1.AnyValue) bool { - return v.GetStringValue() == "" - }, - "resourceVersionMatch": func(v *commonv1.AnyValue) bool { - return v.GetStringValue() == "" - }, - "limit": func(v *commonv1.AnyValue) bool { - return v.GetIntValue() == 0 - }, - "continue": func(v *commonv1.AnyValue) bool { - return v.GetStringValue() == "" - }, - }, - }, - { - name: "etcdserverpb.KV/Range", - attributes: map[string]func(*commonv1.AnyValue) bool{ - "rpc.system": func(v *commonv1.AnyValue) bool { - return v.GetStringValue() == "grpc" - }, - }, - events: []string{"message"}, - }, { name: "SerializeObject", attributes: map[string]func(*commonv1.AnyValue) bool{