Skip to content

Forward-port #8480 to dev: Cluster Sharding private replicator recovery - #8491

Merged
Aaronontheweb merged 2 commits into
akkadotnet:devfrom
Aaronontheweb:forward-port/8471-sharding-replicator-recovery-to-dev
Aug 27, 2026
Merged

Forward-port #8480 to dev: Cluster Sharding private replicator recovery#8491
Aaronontheweb merged 2 commits into
akkadotnet:devfrom
Aaronontheweb:forward-port/8471-sharding-replicator-recovery-to-dev

Conversation

@Aaronontheweb

Copy link
Copy Markdown
Member

Summary

  • forward-ports Fix Cluster Sharding private replicator recovery #8480 to dev via cherry-pick of merge commit 885f466680ee207ee8130d5d6b74c9ddc17b7629
  • recreates unexpectedly terminated private Cluster Sharding DData replicators at their stable actor paths
  • keeps existing sharding consumers connected to the replacement and covers coordinated shutdown in both state-store modes

Verification

  • ClusterShardingReplicatorResiliencySpec passed
  • PersistentShardingReplicatorCompatibilitySpec passed
  • CoordinatedShutdownShardingSpec passed for DData and persistence
  • Slopwatch passed for all seven changed files

Forward-port of #8480. Related to #8471.

* Fix Cluster Sharding private replicator recovery

Watch role-scoped sharding DData replicators and recreate them at their stable actor paths when they terminate. Use actor selections so existing coordinators and remember-entities stores continue communicating with the replacement incarnation.

Add regression coverage for DData remember entities and the persistence compatibility configuration.

* Address sharding replicator recovery review

Keep IActorRef throughout the sharding DData consumers and publish a local replacement message when the guardian recreates a terminated replicator. Existing coordinators and remember-entities stores swap to the new ref and retry their active operation, while providers use the replacement for newly-created stores.

Use WatchWith role-aware termination messages, preserve the peer-visible actor path, suppress shutdown recreation, and simplify the regression test fixtures.

* Simplify remember entities provider tracking

* Simplify sharding replicator recovery

* Cover sharding replicator coordinated shutdown
@Aaronontheweb
Aaronontheweb enabled auto-merge (squash) August 27, 2026 21:12
@Aaronontheweb
Aaronontheweb merged commit 43e9038 into akkadotnet:dev Aug 27, 2026
14 of 15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant