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

Update propolis with new Crucible Volume change #485

Merged
merged 4 commits into from
Aug 14, 2023
Merged

Conversation

leftwo
Copy link
Contributor

@leftwo leftwo commented Aug 10, 2023

New crucible, which has updated Volume structure with Logger field. New VolumeConstructionRequest format which has sub-structures for all the fields.

This also adds support for using a new VCR for replacement
This enables downstairs replacement in a running Volume, and can also be used for migration to validate a VCR.

New crucible, which has updated Volume structure with Logger field.
New VolumeConstructionRequest format which has sub-structures for
all the fields.

This also adds support for the VCR replacement, which can be used
to replace a downstairs as well as validate a VCR for migration.
@leftwo leftwo requested a review from gjcolombo August 10, 2023 17:32
@@ -16,7 +16,9 @@ use std::net::SocketAddr;
use uuid::Uuid;

// Re-export types that are of a public struct
pub use crucible_client_types::VolumeConstructionRequest;
pub use crucible_client_types::{
VcrFile, VcrRegion, VcrUrl, VcrVolume, VolumeConstructionRequest,
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I'm not 100% sure this was the correct place to export these, but it worked :)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This change is no longer part of the PR

@leftwo
Copy link
Contributor Author

leftwo commented Aug 10, 2023

This adds some of the support required in #470

@leftwo leftwo changed the title Update crucible with new Volume and VCR related changes Update propolis with new Crucible Volume and VCR related changes Aug 11, 2023
@leftwo
Copy link
Contributor Author

leftwo commented Aug 14, 2023

Bad news from chat:

(@jmpesp): James (he/him):
hey, unfortunately the change to the VCR's struct will break what's serialized in omicron's database
we have to revert it and come up with better versioning

Which means we have to think a bit more here about the best way forward.

We do need the functionality to compare VCRs.
However, we don't require the VCR itself to change to do that comparison, it just makes the
code to do it not as... pretty.

@leftwo leftwo changed the title Update propolis with new Crucible Volume and VCR related changes Update propolis with new Crucible Volume change Aug 14, 2023
@leftwo
Copy link
Contributor Author

leftwo commented Aug 14, 2023

This change has been mostly redacted.

All we have here now is an update to the Volume structure to include a Logger field, and support for the
few places that had wanted that logger as an arg.

@leftwo leftwo merged commit 803cb36 into master Aug 14, 2023
8 checks passed
@leftwo leftwo deleted the alan/the-new-vcr branch August 14, 2023 23:29
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