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

e2e test: add schema version verification in mix_version_test. #17881

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

siyuanfoundation
Copy link
Contributor

@siyuanfoundation siyuanfoundation commented Apr 25, 2024

#17361
#17752

Verify storage version is consistent with expected at the end of tests.
Since storageVersion is the only field added in 3.6, there is no need to check other buckets.

Please read https://github.com/etcd-io/etcd/blob/main/CONTRIBUTING.md#contribution-flow.

@siyuanfoundation
Copy link
Contributor Author

/retest

tests/framework/e2e/etcd_process.go Outdated Show resolved Hide resolved
tests/framework/e2e/etcd_process.go Outdated Show resolved Hide resolved
tests/framework/e2e/etcd_process.go Outdated Show resolved Hide resolved
@siyuanfoundation
Copy link
Contributor Author

/retest

@siyuanfoundation
Copy link
Contributor Author

cc @ahrtr

@siyuanfoundation
Copy link
Contributor Author

/retest

tests/framework/e2e/etcd_process.go Outdated Show resolved Hide resolved
tests/framework/e2e/etcd_process.go Outdated Show resolved Hide resolved
@siyuanfoundation siyuanfoundation force-pushed the downgrade-snap branch 4 times, most recently from b7f6a39 to bad484f Compare April 29, 2024 23:37
tests/framework/e2e/etcd_process.go Outdated Show resolved Hide resolved
tests/framework/e2e/etcd_process.go Outdated Show resolved Hide resolved
tests/framework/e2e/etcd_process.go Outdated Show resolved Hide resolved
@ahrtr
Copy link
Member

ahrtr commented Apr 30, 2024

The existing schemaChanges isn't flexible. Propose to add the following changes, and we can construct the the schemaChanges based on the new schemaChangeMappings.


func GetNewFieldsInVersion(ver semver.Version) []NewField {
	if newFields, found := schemaChangeMappings[ver]; found {
		return newFields
	}

	return nil
}

type NewField struct {
	bucket       backend.Bucket
	field        []byte
	defaultValue []byte
}

var (
	schemaChangeMappings = map[semver.Version][]NewField{
		version.V3_6: {
			{Meta, MetaStorageVersionName, emptyStorageVersion},
		},
	}

	......
)

Copy link
Member

@ahrtr ahrtr left a comment

Choose a reason for hiding this comment

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

LGTM

Thanks

@ahrtr
Copy link
Member

ahrtr commented Apr 30, 2024

cc @serathius to take a look

Signed-off-by: Siyuan Zhang <sizhang@google.com>
Signed-off-by: Siyuan Zhang <sizhang@google.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants