Skip to content

[sled-agent] use wrapper types for trust quorum responses - #11635

Merged
sunshowers merged 3 commits into
mainfrom
sunshowers/spr/sled-agent-use-wrapper-structs-for-trust-quorum-responses
Oct 30, 2026
Merged

sunshowers merged 3 commits into
mainfrom
sunshowers/spr/sled-agent-use-wrapper-structs-for-trust-quorum-responses

Conversation

@sunshowers

@sunshowers sunshowers commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Steps 1-3 in the plan for #11623 -- see that issue for more details.

Comment on lines +348 to +354
.ok_or_else(|| {
anyhow!(
"Coordinator {} reported no coordinator status: it is not \
currently coordinating a reconfiguration.",
config.coordinator
)
})?;

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

@andrewjstone how should we handle this?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I think we should abort the configuration. The user will have to find out about it by querying the status, but that's unavoidable at this point.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Can I do this in a followup? This change is currently behavior-preserving (just makes the error messages better and closes a footgun) and I would want to introduce such a behavior change in a followup.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Yes. Totally. I expected as much. It's a major change, although a nice fix.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

What I'm going to do in this commit is to also include the epoch in the response, so that Nexus can use that as part of its abort decision-making.

/// the coordinator started that epoch and then stopped for some reason,
/// and Nexus can abort this configuration. If lower than the Nexus
/// epoch, then reconfiguration has not started yet.
latest_config_epoch: Option<Epoch>,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

👍

@sunshowers
sunshowers enabled auto-merge (squash) October 30, 2026 18:19
@sunshowers
sunshowers disabled auto-merge October 30, 2026 18:19
@sunshowers sunshowers changed the title [sled-agent] use wrapper structs for trust quorum responses [sled-agent] use wrapper types for trust quorum responses Oct 30, 2026
@sunshowers
sunshowers enabled auto-merge (squash) October 30, 2026 18:20
@sunshowers
sunshowers merged commit 702f5d3 into main Oct 30, 2026
20 checks passed
@sunshowers
sunshowers deleted the sunshowers/spr/sled-agent-use-wrapper-structs-for-trust-quorum-responses branch October 30, 2026 18:31
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