Skip to content

[DEV] Rework SimpleSetupCluster in cluster tests, and longer timeouts for select tests#1763

Merged
kevin-montrose merged 7 commits intodevfrom
users/kmontrose/testSimpleClusterRework-dev
May 1, 2026
Merged

[DEV] Rework SimpleSetupCluster in cluster tests, and longer timeouts for select tests#1763
kevin-montrose merged 7 commits intodevfrom
users/kmontrose/testSimpleClusterRework-dev

Conversation

@kevin-montrose
Copy link
Copy Markdown
Contributor

dev version of #1762

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the cluster test infrastructure to use an async, more stepwise SimpleSetupCluster flow (with additional stabilization checks) and adjusts timeouts for a few long-running tests, improving reliability and debuggability of CI cluster test runs.

Changes:

  • Convert cluster test setup and several test cases to async flows (including new *Async helpers).
  • Add/consume [CancelAfter] timeouts during ClusterTestContext.Setup and extend timeouts for select cluster/vector tests.
  • Make replication recovery logging resilient to a null logger.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
test/Garnet.test.cluster/VectorSets/ClusterVectorSetTests.cs Converts tests and local setup helper to async and adds longer [CancelAfter] for a few slow tests.
test/Garnet.test.cluster/ReplicationTests/ClusterReplicationBaseTests.cs Converts select tests and waits to async (WaitForConnectedReplicaCountAsync, ReconnectAsync, etc.).
test/Garnet.test.cluster/ClusterTestUtils.cs Introduces async cluster setup + async wrappers for several cluster operations and additional post-step stabilization checks.
test/Garnet.test.cluster/ClusterTestContext.cs Makes setup respect [CancelAfter] timeout and converts attach/sync helper to async.
test/Garnet.test.cluster/ClusterNegativeTests.cs Converts a few replication/failover tests to async and awaits new async wait helpers.
test/Garnet.test.cluster/ClusterMigrateTests.cs Converts one migrate test to async and awaits async node selection helper.
test/Garnet.test.cluster/ClusterConfigTests.cs Removes a [CancelAfter] on one test.
libs/cluster/Server/Replication/ReplicationManager.cs Null-checks logger in replication recovery logs.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread test/Garnet.test.cluster/ClusterTestUtils.cs
Comment thread test/Garnet.test.cluster/ClusterTestUtils.cs
Comment thread test/Garnet.test.cluster/ClusterTestUtils.cs
Comment thread test/Garnet.test.cluster/ClusterTestUtils.cs
Comment thread test/Garnet.test.cluster/ClusterTestContext.cs
@kevin-montrose kevin-montrose merged commit 950d976 into dev May 1, 2026
23 checks passed
@kevin-montrose kevin-montrose deleted the users/kmontrose/testSimpleClusterRework-dev branch May 1, 2026 22:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants