Skip to content

Remove legacy cluster auto-downing - #8468

Open
orange-dot wants to merge 5 commits into
akkadotnet:devfrom
orange-dot:docs/8439-auto-downing-investigation
Open

Remove legacy cluster auto-downing#8468
orange-dot wants to merge 5 commits into
akkadotnet:devfrom
orange-dot:docs/8439-auto-downing-investigation

Conversation

@orange-dot

Copy link
Copy Markdown
Contributor

Summary

This change removes the legacy production auto-downing implementation and its configuration fallback from Akka.Cluster.

  • An active akka.cluster.auto-down-unreachable-after value is now ignored and produces a migration warning.
  • Disabled values (off, false, and no) remain quiet.
  • The default keep-majority Split Brain Resolver remains the production default.
  • Tests that deliberately need deterministic auto-down behavior use an explicitly selected provider from Cluster TestKit.
  • The test-only provider is available from both Cluster TestKit variants and uses the separate akka.cluster.testkit.auto-down-unreachable-after setting.
  • Cluster, sharding, singleton, pub-sub, and sample configurations were migrated according to their actual membership behavior.
  • Migration guidance, samples, API approvals, and the breaking-change ledger were updated.

Scope

The PR touches 61 files because removing the production fallback crosses configuration, cluster behavior tests, multi-node fixtures, samples, public API approvals, and migration documentation.

The scope is intentionally limited to that migration:

  • No replacement production auto-down mechanism is introduced.
  • The retained auto-down implementation is test-only.
  • The Cluster TestKit public surfaces are approval-tested in both variants.
  • The design-notes document is intentionally excluded from the PR.
  • An unrelated shutdown-wait change discovered during review was removed.

Validation

Validation Result
Full Akka.Cluster.Tests suite 392 passed, 0 failed
Full API approval suite 20 passed, 0 failed
Affected core cluster multi-node scenarios 33 node tests passed, 0 failed
Affected cluster sharding multi-node scenarios 49 node tests passed across grouped and isolated runs
Affected Cluster.Tools multi-node scenarios 23 node tests passed, 0 failed
Release builds for Cluster TestKit, Cluster TestKit Xunit2, core cluster multi-node, sharding multi-node, Cluster.Tools multi-node, and API tests 0 warnings, 0 errors
Slopwatch against an exact-base baseline 2,572 files analyzed, 0 new findings
API snapshot hygiene and git diff --check Passed
CodeQL Passed

The constrained validation host exceeded fixed internal barriers when all affected sharding specs ran together. The 17 affected node tests from those specs were rerun in isolation; 10 used a validation-only akka.test.timefactor = 3. All passed, and the time-factor override was removed before the final build and commit.

Documentation build

DocFX completed content generation with 0 errors. The repository's existing --warningsAsErrors posture remains non-green: the exact base produced 533 warnings and this branch produced 537. The four additional warnings are the four AutoDowning API members appearing in both intentionally compatible Cluster TestKit assemblies; no new warning category was introduced.

Closes #8439

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.

Remove legacy auto-downing (AutoDowning / auto-down-unreachable-after) in favor of the split brain resolver

1 participant