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

Allow revive if some data paths differ #336

Merged
merged 3 commits into from
Feb 19, 2023

Conversation

spilchen
Copy link
Collaborator

@spilchen spilchen commented Feb 19, 2023

This PR will allow a revive if the data paths are different among the vertica hosts. Vertica databases managed in k8s assume the data paths are the same across all pods. This relaxes that to allow a revive if the data path is either equal to spec.local.dataPath or spec.local.catalogPath. Both paths are still backed by the PV, so will persist between restarts.

In order to allow the data paths to differ, the db existence check in pod facts now checks the catalog path.

Note: the data path could mismatch due to a bug in revive. When revive reconstructs the admintools.conf, it will set the data path to be the same as the catalog path. This happens even if they originally were different. In that case, when the database does a scaling operation, the new vertica hosts will have catalog and data to be the same. But existing vertica hosts will have catalog and data that will differ. I included an e2e test to mimic this behaviour.

Closes #335

@spilchen spilchen self-assigned this Feb 19, 2023
@spilchen spilchen merged commit e84715f into vertica:main Feb 19, 2023
@spilchen spilchen deleted the revive-path-error branch February 19, 2023 11:46
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.

Database could not be revived
1 participant