-
Notifications
You must be signed in to change notification settings - Fork 466
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
metamorphic: fix format major version ratcheting and parsing #2691
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
jbowens
force-pushed
the
fix-deletesized-meta
branch
from
June 30, 2023 21:46
d568fb2
to
8956c1a
Compare
Fix three bugs in the metamorphic tests' use of format major versions. First, during op generation, the code failed to add the minimum format major version back to the randomly generated value. This prevented format major versions from being ratcheted up sufficiently high. Second, during options generation, randomized options would only use format major verisons as recent as FormatNewest (which excluded the two experimental format major versions which have not yet been stabilized). Third, parsing format major version strings could fail for some values because ParseUint interpreted the leading `0` as indicating an octal value because the base argument was unspecified.
Previously DELSIZED keys were written with value sizes over a much larger magnitude than the actual values persisted. This made it very unlikely a DELSIZED key ever was the same size as the value it deleted.
Add a standard metamorphic tests options configuration that uses the latest format major version from the start of the test.
Setting the new isObsolete bit can cause missing keys. See cockroachdb#2705 for tracking fixing.
jbowens
force-pushed
the
fix-deletesized-meta
branch
from
July 1, 2023 01:56
8956c1a
to
1bab415
Compare
Support exercising the new ExperimentalFormatVirtualSSTables format major version now.
jbowens
changed the title
metamorphic: fix metamorphic format major version ratcheting and parsing
metamorphic: fix format major version ratcheting and parsing
Jul 1, 2023
RaduBerinde
approved these changes
Jul 1, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed 1 of 3 files at r1, 3 of 3 files at r2, 3 of 3 files at r4, 1 of 1 files at r5, all commit messages.
Reviewable status: complete! all files reviewed, all discussions resolved (waiting on @jbowens)
TFTR! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix a few bugs in the metamorphic tests' use of format major versions. These bugs were hiding an issue with the new obsolete-bit in the sstable format, and so I've temporarily disabled that codepath.