Skip to content
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

pageserver: full reconciliation of tenant locations (attached & secondary) on startup #5377

Closed
jcsp opened this issue Sep 26, 2023 · 1 comment
Labels
a/tech_debt Area: related to tech debt c/storage/pageserver Component: storage: pageserver

Comments

@jcsp
Copy link
Collaborator

jcsp commented Sep 26, 2023

This is follow-on from #5299, but is a medium-term thing: it won't make sense to implement this until we do a more general revamp of how pageservers are updated about tenants, probably moving to a more reconciliation-loop like model.

Currently, our /re-attach API response only tells us about attached locations. When we have local data for a tenant that is omitted from this response, we have to choose between:

  • A) detaching the tenant (and thereby dumping its local disk content)
  • B) setting the tenant's state to secondary, and waiting for the control plane to detach it if that's what it wanted.

This would be much simpler if the /re-attach response included all state for tenant locations, but that would make it quite a lot bigger (approx 2x the size if it includes secondaries). We anticipate that switching to this model might be done at the same time as moving to a nicer gRPC-esque transport for this API, so that very large responses are not a source of risk.

@jcsp jcsp added c/storage/pageserver Component: storage: pageserver a/tech_debt Area: related to tech debt labels Sep 26, 2023
@jcsp
Copy link
Collaborator Author

jcsp commented Mar 28, 2024

Support for secondaries was added in #6941

@jcsp jcsp closed this as completed Mar 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a/tech_debt Area: related to tech debt c/storage/pageserver Component: storage: pageserver
Projects
None yet
Development

No branches or pull requests

1 participant