Stabilize Oracle JDBC backend test on CI#662
Open
vharseko wants to merge 1 commit into
Open
Conversation
OracleTestCase could hang ~51 min and fail the whole opendj-server-legacy build when the Oracle container failed to start: withStartupAttempts(10) x withStartupTimeout(5m) retried a failing container for up to ~50 min, which tripped the maven-failsafe fork timeout (BUILD FAILURE: 'There was a timeout in the fork'). - OracleTestCase: reduce withStartupAttempts 10 -> 2 and bump the image from gvenzl/oracle-free:23.6-faststart (2025-03) to 23.26.2-slim-faststart (newest, slim variant for a lighter pull). - TestCase.setUp: skip (SkipException) instead of failing when the database container cannot be started - container startup is an infrastructure concern, not a regression in the JDBC backend under test.
maximthomas
approved these changes
Jun 26, 2026
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.
Problem
The
build-maven (26, ubuntu-latest)CI job failed at the Build with Maven step (opendj-server-legacy) with:Root cause: when the Oracle container fails to initialize,
withStartupAttempts(10)×withStartupTimeout(5m)retries it for up to ~50 minutes. In this runOracleTestCasealone ran ~51 min (05:56 → 06:47), tripping the failsafe fork timeout and breaking the whole build. The other JDBC backends (Postgres/MySQL/MSSQL) finished in well under a minute. The failure was infra flakiness — the same tests pass on the other matrix combinations.Changes
OracleTestCase:withStartupAttempts(10)→2(worst case now ~10 min, safely underforkedProcessTimeoutInSeconds=900); bump imagegvenzl/oracle-free:23.6-faststart(2025-03, non-slim) →23.26.2-slim-faststart(newest, slim for a lighter pull). Comment / docker hint updated to match.TestCase.setUp(shared JDBC backend parent): throwSkipExceptioninstead of propagating a container-startup failure. Container startup (image pull + DB init) is an infrastructure concern, not a regression in the backend under test — theDriverManagerconnection and the test methods still run and fail normally, so real regressions are still caught.Effect
A flaky container start now yields
Skippedinstead of a 51-minute hang +Failures: 1+ fork timeout.