From 343f0ee000b10842d008113d577a961500dc443e Mon Sep 17 00:00:00 2001 From: Lukasz Szaszkiewicz Date: Mon, 1 Jul 2024 14:32:48 +0200 Subject: [PATCH] apiextensions-apiserver/test/integration: deflake TestCustomResourceDefaultingWithoutWatchCache --- .../test/integration/defaulting_test.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/staging/src/k8s.io/apiextensions-apiserver/test/integration/defaulting_test.go b/staging/src/k8s.io/apiextensions-apiserver/test/integration/defaulting_test.go index eff48b4f847..7162811148e 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/test/integration/defaulting_test.go +++ b/staging/src/k8s.io/apiextensions-apiserver/test/integration/defaulting_test.go @@ -376,8 +376,21 @@ func testDefaulting(t *testing.T, watchCache bool) { if err != nil { t.Fatal(err) } + defer w.Stop() select { case event := <-w.ResultChan(): + // since the RV we watch from can be compacted + // during the execution of the test, + // tolerate the expiration error. + // + // see: https://github.com/kubernetes/kubernetes/issues/125760 + if event.Type == watch.Error { + if !apierrors.IsResourceExpired(apierrors.FromObject(event.Object)) { + t.Fatalf("unexpected watch event: %v, %#v", event.Type, event.Object) + } + t.Logf("skipping the WATCH at RV = %s, because the revision has been compacetd, err: %#v", initialResourceVersion, event.Object) + break + } if event.Type != watch.Modified { t.Fatalf("unexpected watch event: %v, %#v", event.Type, event.Object) }