From cdc86036144b8edcc5a276e3334f1e3bf0fff65c Mon Sep 17 00:00:00 2001 From: Chun-Hung Tseng Date: Wed, 12 Feb 2025 06:36:33 +0000 Subject: [PATCH 1/2] Reproduce TestDowngradeCancellationAfterDowngrading2InClusterOf3 failure consistently Implemented findings from Fu Wei. See https://github.com/etcd-io/etcd/issues/19391#issuecomment-2652285100 Execute locally by using the following command: clear; PASSES="release e2e" PKG=./tests/e2e TESTCASE="TestDowngradeCancellationAfterDowngrading2InClusterOf3" TIMEOUT=20m ./scripts/test.sh -v -failfast Signed-off-by: Chun-Hung Tseng --- tests/framework/e2e/downgrade.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/framework/e2e/downgrade.go b/tests/framework/e2e/downgrade.go index a0a270dd182..b1e7470ea2b 100644 --- a/tests/framework/e2e/downgrade.go +++ b/tests/framework/e2e/downgrade.go @@ -117,6 +117,9 @@ func DowngradeUpgradeMembersByID(t *testing.T, lg *zap.Logger, clus *EtcdProcess return err } } + + time.Sleep(5 * time.Second) + lg.Info("Validating versions") for _, memberID := range membersToChange { member := clus.Procs[memberID] From 0951f70613811b72d23b45966ae59b1493bd4f35 Mon Sep 17 00:00:00 2001 From: Chun-Hung Tseng Date: Wed, 12 Feb 2025 09:36:54 +0000 Subject: [PATCH 2/2] Add more logging Signed-off-by: Chun-Hung Tseng --- server/etcdserver/version/monitor.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/server/etcdserver/version/monitor.go b/server/etcdserver/version/monitor.go index b3e7f5804e1..5bc5b58f5d5 100644 --- a/server/etcdserver/version/monitor.go +++ b/server/etcdserver/version/monitor.go @@ -127,6 +127,12 @@ func (m *Monitor) UpdateStorageVersionIfNeeded() { zap.String("target-version", d.TargetVersion), zap.String("server-version", version.Version), ) + } else if d != nil && !d.Enabled { + m.lg.Info( + "The server is in downgrade cancellation state", + zap.String("target-version", d.TargetVersion), + zap.String("server-version", version.Version), + ) } } }