Skip to content

Align PostgreSQL Testcontainers image version across integration tests#5401

Open
seonwooj0810 wants to merge 1 commit into
spring-projects:mainfrom
seonwooj0810:GH-5383
Open

Align PostgreSQL Testcontainers image version across integration tests#5401
seonwooj0810 wants to merge 1 commit into
spring-projects:mainfrom
seonwooj0810:GH-5383

Conversation

@seonwooj0810
Copy link
Copy Markdown

Summary

Aligns the PostgreSQL Testcontainers image version across the four PostgreSQL-based integration tests in spring-batch. After this change all four tests use postgres:18.1.

File Before After
spring-batch-core/.../migration/PostgreSQLMigrationScriptIntegrationTests.java postgres:18.1 postgres:18.1 (unchanged)
spring-batch-core/.../PostgreSQLJobRepositoryIntegrationTests.java postgres:17.5 postgres:18.1
spring-batch-infrastructure/.../PostgresPagingQueryProviderIntegrationTests.java postgres:17.5 postgres:18.1
spring-batch-samples/.../PostgreSQLJpaIntegrationTests.java postgres:17.5 postgres:18.1

This eliminates the drift described in #5383, where the migration tests and the rest of the suite were validated against different PostgreSQL major versions.

Test plan

  • Confirmed before the change: three files referenced postgres:17.5, one referenced postgres:18.1.
  • Confirmed after the change: all four files reference postgres:18.1.
  • Diff is a literal version-string update inside DockerImageName.parse(...) — no logic change.
  • Full ./mvnw verify could not be executed locally: the spring-batch-infrastructure main compile fails on JDK 21 with a pre-existing NullAway / JSpecify error (Running NullAway in JSpecify mode requires either JDK 22+ ...). The project's CI uses Java 25 (.github/workflows/continuous-integration.yml), so this is an environment limitation, not a regression introduced by this change. Verified by reproducing the same error against unmodified main.

Verification done

  1. No in-flight PR: gh pr list --repo spring-projects/spring-batch --search "postgres testcontainers" / "5383" / "postgres:18.1" returned no matching PR; /issues/5383/events shows only the original labeled event with no cross-reference.
  2. No active claim: the issue author mentioned "I would like to submit a PR for this" 33 days ago (2026-04-21) without follow-up, so the implicit claim is treated as stalled.
  3. Code-focused: change touches three .java integration test files.
  4. Verified the bug still exists on main via gh search code: 3 files use postgres:17.5, 1 uses postgres:18.1 (matching the issue body exactly).
  5. No umbrella/parent issue closed silently — issue is still open with status: waiting-for-triage.

Resolves #5383

Update PostgreSQLJobRepositoryIntegrationTests, PostgresPagingQueryProviderIntegrationTests,
and PostgreSQLJpaIntegrationTests to use postgres:18.1, matching the version
already used in PostgreSQLMigrationScriptIntegrationTests.

This eliminates the drift introduced when only the migration test was updated
to postgres:18.1, leaving the other three integration tests on postgres:17.5,
so that the whole PostgreSQL integration test suite is validated against the
same major version.

Resolves spring-projects#5383

Signed-off-by: Seonwoo Jung <laborlawseon@kap.kr>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Align PostgreSQL Testcontainers image version across integration tests

1 participant