Skip to content

Conversation

@Aaronontheweb
Copy link
Member

Summary

  • Migrates multi-node tests in Akka.Cluster.Tools.Tests.MultiNode from blocking synchronous calls to async/await patterns
  • Fixes thread pool starvation issues that were causing 20+ second timeouts in CI environments

Changes

  • Convert test methods from void to async Task
  • Replace TestConductor.*.Wait() with await TestConductor.*Async()
  • Replace EnterBarrier() with await EnterBarrierAsync()
  • Replace Within() with await WithinAsync() where appropriate
  • Add System.Threading.Tasks imports
  • Enable TestTransport configuration where needed

Migrated Tests

  • ClusterClientDiscoverySpec
  • ClusterClientSpec
  • DistributedPubSubMediatorSpec
  • ClusterSingletonManagerDownedSpec
  • ClusterSingletonManagerSpec

Testing

  • All tests build successfully
  • Tests run and pass locally
  • No functional changes, only async/await migration

This follows the pattern established in #7750 for migrating multi-node tests to async.

Aaronontheweb and others added 2 commits August 13, 2025 21:42
- Replace blocking Wait() calls with async/await patterns
- Convert test methods to async Task
- Update TestConductor operations to use async APIs
- Fix thread pool starvation issues in CI
Copy link
Contributor

@Arkatufus Arkatufus left a comment

Choose a reason for hiding this comment

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

LGTM

@Arkatufus Arkatufus enabled auto-merge (squash) August 14, 2025 19:34
@Arkatufus Arkatufus merged commit 89e6405 into akkadotnet:dev Aug 14, 2025
11 checks passed
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.

2 participants