-
Notifications
You must be signed in to change notification settings - Fork 485
pg-cdc-old-syntax multiversion tests #34227
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
pg-cdc-old-syntax multiversion tests #34227
Conversation
745d0b9 to
52b5525
Compare
- Adds helper class for doing 0dt upgrades - Add a multiversion test for pg-cdc-old-syntax - Branch on certain testdrive tests due to incompatible syntax - Change version list filtering for upgrade tests Filter on versions within the previous unskippable major release. This won't work for 26.0.0 since we can't upgrade from 25.1, so we keep the same conditional - Add multi-version upgrade tests for Postgres old CDC to release qualification pipeline
52b5525 to
0a340ad
Compare
| if args.mode == "random": | ||
| random_initial_version = Random(args.seed).choice(compatible_versions) | ||
| versions = [random_initial_version, None] |
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.
Initially I wrote this to test a random upgrade path rather than a random direct upgrade, but the test was taking over 2 hours to run doing so. Decided the path testing didn't add much value to this specific test
def-
left a comment
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.
Generally seems good.
| agents: | ||
| queue: hetzner-aarch64-4cpu-8gb | ||
|
|
||
| - id: pg-cdc-old-syntax-multi-version-upgrade-random |
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.
I think these should live in Nightly first, because otherwise we will only catch them breaking once the release candidate is already cut.
See commit messages for details
Motivation
https://github.com/MaterializeInc/database-issues/issues/9869
Added these tests in the release qualification pipeline
https://buildkite.com/materialize/release-qualification/builds/1005
Tips for reviewer
Checklist
$T ⇔ Proto$Tmapping (possibly in a backwards-incompatible way), then it is tagged with aT-protolabel.