From 7e2d4c24de33c36fba0836312c42019014084d63 Mon Sep 17 00:00:00 2001 From: chrislusf Date: Wed, 10 Dec 2025 23:40:48 -0800 Subject: test: fix master client timeout causing test hangs Use the main test context for KeepConnectedToMaster instead of creating a separate 60s context. The tests have 180s outer timeouts but the master client was disconnecting after 60s, causing subsequent commands to hang waiting for reconnection. --- test/erasure_coding/ec_integration_test.go | 38 ++++++++++++------------------ 1 file changed, 15 insertions(+), 23 deletions(-) diff --git a/test/erasure_coding/ec_integration_test.go b/test/erasure_coding/ec_integration_test.go index bb0983f06..ac85bb08a 100644 --- a/test/erasure_coding/ec_integration_test.go +++ b/test/erasure_coding/ec_integration_test.go @@ -753,11 +753,9 @@ func TestDiskAwareECRebalancing(t *testing.T) { } commandEnv := shell.NewCommandEnv(options) - // Connect to master with longer timeout - ctx2, cancel2 := context.WithTimeout(context.Background(), 60*time.Second) - defer cancel2() - go commandEnv.MasterClient.KeepConnectedToMaster(ctx2) - commandEnv.MasterClient.WaitUntilConnected(ctx2) + // Connect to master - use the main test context to avoid early disconnection + go commandEnv.MasterClient.KeepConnectedToMaster(ctx) + commandEnv.MasterClient.WaitUntilConnected(ctx) // Wait for master client to fully sync time.Sleep(5 * time.Second) @@ -1194,11 +1192,9 @@ func TestECDiskTypeSupport(t *testing.T) { } commandEnv := shell.NewCommandEnv(options) - // Connect to master with longer timeout - ctx2, cancel2 := context.WithTimeout(context.Background(), 60*time.Second) - defer cancel2() - go commandEnv.MasterClient.KeepConnectedToMaster(ctx2) - commandEnv.MasterClient.WaitUntilConnected(ctx2) + // Connect to master - use the main test context to avoid early disconnection + go commandEnv.MasterClient.KeepConnectedToMaster(ctx) + commandEnv.MasterClient.WaitUntilConnected(ctx) // Wait for master client to fully sync time.Sleep(5 * time.Second) @@ -1569,11 +1565,9 @@ func TestECDiskTypeMixedCluster(t *testing.T) { } commandEnv := shell.NewCommandEnv(options) - // Connect to master with longer timeout - ctx2, cancel2 := context.WithTimeout(context.Background(), 60*time.Second) - defer cancel2() - go commandEnv.MasterClient.KeepConnectedToMaster(ctx2) - commandEnv.MasterClient.WaitUntilConnected(ctx2) + // Connect to master - use the main test context to avoid early disconnection + go commandEnv.MasterClient.KeepConnectedToMaster(ctx) + commandEnv.MasterClient.WaitUntilConnected(ctx) // Wait for master client to fully sync time.Sleep(5 * time.Second) @@ -1770,10 +1764,9 @@ func TestEvacuationFallbackBehavior(t *testing.T) { } commandEnv := shell.NewCommandEnv(options) - ctx2, cancel2 := context.WithTimeout(context.Background(), 60*time.Second) - defer cancel2() - go commandEnv.MasterClient.KeepConnectedToMaster(ctx2) - commandEnv.MasterClient.WaitUntilConnected(ctx2) + // Connect to master - use the main test context to avoid early disconnection + go commandEnv.MasterClient.KeepConnectedToMaster(ctx) + commandEnv.MasterClient.WaitUntilConnected(ctx) time.Sleep(5 * time.Second) @@ -1875,10 +1868,9 @@ func TestCrossRackECPlacement(t *testing.T) { } commandEnv := shell.NewCommandEnv(options) - ctx2, cancel2 := context.WithTimeout(context.Background(), 60*time.Second) - defer cancel2() - go commandEnv.MasterClient.KeepConnectedToMaster(ctx2) - commandEnv.MasterClient.WaitUntilConnected(ctx2) + // Connect to master - use the main test context to avoid early disconnection + go commandEnv.MasterClient.KeepConnectedToMaster(ctx) + commandEnv.MasterClient.WaitUntilConnected(ctx) time.Sleep(5 * time.Second) -- cgit v1.2.3