Skip to content

Fix state inconsistency in Orleans Chirper account#7125

Open
TimonPasslick wants to merge 1 commit into
dotnet:mainfrom
TimonPasslick:issue#7124-fix-state-inconsistency-in-orleans-chirper-account
Open

Fix state inconsistency in Orleans Chirper account#7125
TimonPasslick wants to merge 1 commit into
dotnet:mainfrom
TimonPasslick:issue#7124-fix-state-inconsistency-in-orleans-chirper-account

Conversation

@TimonPasslick

Copy link
Copy Markdown

Summary

Disabled reentrancy/interleaving for FollowUserIdAsync‎ and UnfollowUserIdAsync. Interleaving can cause 2 problems if both methods get called with the same username on the same grain:

  1. If a user gets followed, but between the remote and local update, he gets unfollowed, the local state says the user is followed, but the remote state says the user is not followed. Same vice versa.
  2. The follow and unfollow commands may arrive on the other grain in reverse of sending order, causing the same inconsistencies.

Fixes #7124

@TimonPasslick TimonPasslick force-pushed the issue#7124-fix-state-inconsistency-in-orleans-chirper-account branch from fbafe94 to 31e8828 Compare June 24, 2026 22:34
@TimonPasslick

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

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.

State inconsistency bug in orleans/Chirper/Chirper.Grains/ChirperAccount.cs

1 participant