[multicast,instance,test-flake] reorder instance_stop and send stop before tearing down multicast member state#10402
Merged
Conversation
…efore tearing down multicast member state Handles (closes) #9711 (was fixed downstream in a PR'ed branch).
Collaborator
Author
|
@jgallagher |
jgallagher
reviewed
May 22, 2026
This addresses a review comment on the synchronous `multicast_group_members_detach_by_instance` call introduced by the prior reorder, as a transient DB failure would 500 the caller for a stop that already succeeded at the sled, while short-circuiting past the reconciler activation. The state would be self-healing via the reconciler, but the visible failure for a successful op would be a regression. Instead, we move the detach into the `instance_update` saga's `siu_commit_instance_updates` action, gated on `update.deprovision.is_some()`, where the saga signals an instance has reached no-active-VMM state. That saga already orchestrates terminal-VMM cleanup, so the detach fits naturally there. As a side effect, this also covers guest-initiated shutdown and sled-agent-reported failure paths that the `instance_stop` callsite hadn't covered. And, we still have the reconciler to check through things. This change also includes a reconciler nudge in `instance_stop` in the case where the saga does not fire if there were no terminal VMM transition to drive it in the first place (instead of waiting for the full reconciler pass on next tick).
Collaborator
Author
|
This included a merge of main over the top of the fixes. |
jgallagher
approved these changes
May 26, 2026
Contributor
jgallagher
left a comment
There was a problem hiding this comment.
I don't do much with instance sagas or multicast, but the changes LGTM and definitely look more correct than the original version. Happy to approve based on your testing, but I won't be offended if you want to wait for an approval from someone else with more context.
FelixMcFelix
approved these changes
May 27, 2026
Contributor
FelixMcFelix
left a comment
There was a problem hiding this comment.
The change makes sense to me; thanks Zeeshan!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Handles (closes) #9711 (was fixed downstream in a PR'ed branch).