-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Add migration script integration tests #4954
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
Open
baezzys
wants to merge
1
commit into
spring-projects:main
from
baezzys:feature/add-migration-script-integration-tests
Open
Add migration script integration tests #4954
baezzys
wants to merge
1
commit into
spring-projects:main
from
baezzys:feature/add-migration-script-integration-tests
Conversation
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
@baezzys
baezzys
force-pushed
the
feature/add-migration-script-integration-tests
branch
from
August 18, 2025 10:18
1f11625
to
ced1cbf
Compare
@baezzys
baezzys
changed the title
(削除) GH-4289: Add schema migration integration tests (削除ここまで)
(追記) GH-4289: Add migration script integration tests (追記ここまで)
Aug 18, 2025
@baezzys
baezzys
force-pushed
the
feature/add-migration-script-integration-tests
branch
from
August 18, 2025 14:56
91bb4d2
to
8608e18
Compare
@baezzys
baezzys
changed the title
(削除) GH-4289: Add migration script integration tests (削除ここまで)
(追記) Add migration script integration tests (追記ここまで)
Aug 18, 2025
@baezzys
baezzys
force-pushed
the
feature/add-migration-script-integration-tests
branch
2 times, most recently
from
August 19, 2025 01:18
b095f10
to
b2c63d3
Compare
- Implement 4.x to 5.0 migration validation for all supported databases - Add 4.x baseline schema files for migration testing - Use TestContainers for major databases, embedded for others - Auto-disable tests when Docker unavailable Resolves: spring-projects#4289 Signed-off-by: baezzys <wlsdn3578@gmail.com>
@baezzys
baezzys
force-pushed
the
feature/add-migration-script-integration-tests
branch
from
August 21, 2025 14:08
aa77031
to
d79971b
Compare
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.
Uh oh!
There was an error while loading. Please reload this page.
Overview
This PR adds integration tests to validate the Spring Batch 4.x → 5.0 database schema migration scripts for all datasources where 5.0 migration scripts are available.
Resolves #4289
Implementation Details
Test Strategy
The tests implement the following validation approach:
schema-{database}-4.sql
filesmigration/5.0/migration-{database}.sql
filesDatabase Coverage
Working Databases (Tests Pass)
Migration Issues Discovered (Tests Fail)
During testing, migration script execution failed on several databases due to compatibility issues:
MODIFY COLUMN
syntax not supportedSyntax error: Encountered "MODIFY"
MODIFY COLUMN
syntax not supportednear "MODIFY": syntax error
MODIFY COLUMN
syntax not supportedunexpected token: MODIFY
MODIFY COLUMN
syntax not supportedSQLCODE=-104, SQLSTATE=42601
ALTER TABLE with data copy cannot be done
select into
andfull logging
optionsTechnical Implementation
TestContainers Integration:
@Testcontainers(disabledWithoutDocker = true)
Embedded Database Support:
EmbeddedDatabaseBuilder
for consistency