Add end-to-end tests to verify index limits when migrating from PostgreSQL#1245
Merged
pratickchokhani merged 10 commits intoGoogleCloudPlatform:masterfrom Jan 7, 2026
Merged
Conversation
2 tasks
…igrating from Postgres
1c2caa7 to
ecb3a32
Compare
2 tasks
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #1245 +/- ##
=======================================
Coverage 47.22% 47.22%
=======================================
Files 231 231
Lines 26698 26698
Branches 581 581
=======================================
+ Hits 12607 12609 +2
+ Misses 13370 13368 -2
Partials 721 721
🚀 New features to boost your workflow:
|
pratickchokhani
approved these changes
Dec 23, 2025
This file contains hidden or 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
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.
This is the second PR to add end-to-end tests to verify table and index limits when migrating from a PostgreSQL database. It focuses only on the schema migration portion, verification for the data migration is not included here.
It adds test for the following index limits:
These end-to-end tests are expected to run against an actual Spanner instance, not an emulated Spanner instance. As such, they have been separated from the other integration tests with a new env var, SPANNER_MIGRATION_TOOL_RUN_E2E_TESTS, to indicate that the E2E tests should be run.
Additionally, given that these run against an actual Spanner instance, they're a bit slower than other tests (on the order of minutes, not seconds). I expect it makes more sense to only run these on-demand instead of for every build.
Also, note that some of these tests don't actually pass: I've written them under the expectation that the limits are adhered to and that exceeding a limit leads to an error. This is unfortunately not the case for all limits: some succeed without any errors or issues, which of course fails the test. I'll be including the full details of all the issues and disparities in the actual parity report.