Skip to content

[sled-agent] Vectorize the request for dataset zones #3025

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 5 commits into from

Conversation

smklein
Copy link
Collaborator

@smklein smklein commented May 5, 2023

This is necessary to unify the interface between "storage" and "non-storage" zones.

Part of #2978

smklein added a commit that referenced this pull request Jun 29, 2023
…oo (#3390)

## Prelude 

This combines:

- #3022
- #3025
- #3026

Into one PR. Trying to split them out resulted in intermediate states
that were not worthwhile debugging - I'd rather invest the energy into
fixing this "more-desirable end-state".

## What does this PR do

- (Internal and External) DNS services are explicitly backed by
datasets, making it possible to "delete and re-initialize" arbitrary
zones without data loss. This is necessary for correct behavior in cold
boot.
- Merges the concept of "datasets" into "services".
- Previously, "datasets" were considered services managing data, and
"services" were considered services *without datasets* - the two were
totally disjoint. This was a bit arbitrary, and made it more complicated
to conform sleds during service management.
- As one example of an inconsistency, "requesting services" was
vectorized ("ask for all services that should be on the sled"),
"requesting datasets" was not (it was an ask-for-one-at-a-time API).
- Now, "services" are universal, and they may optionally manage
datasets. This unifies pathways a bit, and simplifies the API.

Fixes #3018
Part of #2978
@smklein
Copy link
Collaborator Author

smklein commented Jul 4, 2023

Merged in #3390

@smklein smklein closed this Jul 4, 2023
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.

1 participant