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

Introduce Durability Policy in VTop #282

Merged
merged 8 commits into from
Jul 12, 2022
Merged

Introduce Durability Policy in VTop #282

merged 8 commits into from
Jul 12, 2022

Conversation

GuptaManan100
Copy link
Collaborator

Description

This PR introduces the durability policy in the Vitess Operator. Durability Policy is introduced as a configuration in the Keyspace specification.
Furthermore, the reconciliation logic for the same has also been added which ensures that the durability policy configured matches the durability policy in the topo server.

If the durability_policy is left unspecified, then VTop will not set a default or configure it at all. This is required for upgrade considerations. Since the previous version of VTop didn't support this configuration, when VTop is upgraded, it is expected that the durability policy configuration will be empty. If it is, we do not want to presume its value and set a default because that could be different than the durability policy that the user has already set in v14 using SetKeyspaceDurabilityPolicy.
Once VTop is upgraded, the durability policy config can be added and VTop will ensure that it is configured properly henceforth.

Copy link
Contributor

@Verolop Verolop left a comment

Choose a reason for hiding this comment

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

test/endtoend/operator/operator-latest.yaml Outdated Show resolved Hide resolved
@GuptaManan100 GuptaManan100 merged commit 5ed3a36 into main Jul 12, 2022
@GuptaManan100 GuptaManan100 deleted the durability_policy branch July 12, 2022 05:07
GuptaManan100 added a commit that referenced this pull request Jul 28, 2022
* feat: add durability policy as a field in keyspace configuration

Signed-off-by: Manan Gupta <[email protected]>

* feat: update crds for test

Signed-off-by: Manan Gupta <[email protected]>

* feat: add reconciliation logic for keyspace record in the topo server

Signed-off-by: Manan Gupta <[email protected]>

* test: update tests to set the durability policy and verify it in the upgrade-test

Signed-off-by: Manan Gupta <[email protected]>

* feat: remove default from durability_policy

Signed-off-by: Manan Gupta <[email protected]>

* test: fix initial config by moving durability policy to the keyspace specification instead of cell

Signed-off-by: Manan Gupta <[email protected]>

* feat: run make generate

Signed-off-by: Manan Gupta <[email protected]>

* refactor: remove a new line added accidentally

Signed-off-by: Manan Gupta <[email protected]>
GuptaManan100 added a commit that referenced this pull request Jul 28, 2022
* Introduce Durability Policy in VTop (#282)

* feat: add durability policy as a field in keyspace configuration

Signed-off-by: Manan Gupta <[email protected]>

* feat: update crds for test

Signed-off-by: Manan Gupta <[email protected]>

* feat: add reconciliation logic for keyspace record in the topo server

Signed-off-by: Manan Gupta <[email protected]>

* test: update tests to set the durability policy and verify it in the upgrade-test

Signed-off-by: Manan Gupta <[email protected]>

* feat: remove default from durability_policy

Signed-off-by: Manan Gupta <[email protected]>

* test: fix initial config by moving durability policy to the keyspace specification instead of cell

Signed-off-by: Manan Gupta <[email protected]>

* feat: run make generate

Signed-off-by: Manan Gupta <[email protected]>

* refactor: remove a new line added accidentally

Signed-off-by: Manan Gupta <[email protected]>

* feat: fix durability policy check

Signed-off-by: Manan Gupta <[email protected]>
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.

3 participants