-
Notifications
You must be signed in to change notification settings - Fork 22
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
CNDB-12484: Fix flaky VectorUpdateDeleteTest failures #1519
base: main
Are you sure you want to change the base?
Conversation
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.
LGTM
I'm going to scope creep you a bit here, sorry!
|
+1 great suggestion |
Scope creep accepted. I'll update the PR shortly. |
…getLiveSSTables/getCanonicalSSTables. Swap SAITester's verification to getCanonicalSSTables.
Ah, despite multiplexing this 200 times, the CI run here caught a real issue. We need a proper reference to the canonical sstables to prevent them from being removed from the filesystem during verification. I'll push a fix. |
…fyChecksum. We need a ref to prevent them from getting tidied out from under the verification.
Quality Gate passedIssues Measures |
❌ Build ds-cassandra-pr-gate/PR-1519 rejected by Butler2 new test failure(s) in 3 builds Found 2 new test failures
Found 14 known test failures |
What is the issue
VectorUpdateDeleteTest sees flaky failures where it fails to verify the checksums of all sstables.
What does this PR fix and why was it fixed
SAITester.verifyChecksum is swapped to consider canonical sstables rather than live sstables. If the SAITester.verifier overlaps with a compaction, it could previously see a preemptively opened SSTable. Validating the SAI components for this preemptively opened sstable fails, as they haven't yet been written. The verifier should only consider canonical sstables, which are expected to have valid SAI components.
Checklist before you submit for review
NoSpamLogger
for log lines that may appear frequently in the logs