Skip to content

Increase OceanBase CE startup timeout to 5 minutes - #12114

Merged
kiview merged 1 commit into
mainfrom
oceanbase-startup-wait
Oct 17, 2026
Merged

kiview merged 1 commit into
mainfrom
oceanbase-startup-wait

Conversation

@kiview

@kiview kiview commented Oct 17, 2026 •

Copy link
Copy Markdown
Member

OceanBaseCEContainer waits for boot success! with the default 60s startup timeout. On GitHub runners, boot takes ~55–60s, so the module's tests fail intermittently with Timed out waiting for log output matching '.*boot success!.*'. The main CI run on 2026-10-05 failed 7 of 10 attempts; the passing ones took 57.6s and 60.3s.

The log message is the right readiness signal: the image's start.sh only prints it after the tenant accepts SQL connections and init SQL has run. Boot is just slow. This PR raises the wait strategy's startup timeout to 5 minutes, following the image README ("The bootstrap procedure may take up to five minutes"). The MINI and NORMAL modes are slower than SLIM, which the tests use.

User-visible change: a container that hangs during boot now fails after 5 minutes instead of 60s. Failed boots still fail fast because the container exits (EXIT_WHILE_ERROR defaults to true). The timeout can still be overridden via withStartupTimeout(...).

Local cold boots (SLIM mode, Docker Desktop) took 42–44s to boot success!. A SELECT 1 succeeded ~0.7s earlier, so an extra SQL readiness check would add nothing.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Bug Fixes
    • OceanBase containers now allow up to five minutes for the database to report successful startup before timing out.

Boot to "boot success!" takes ~55-60s on GitHub runners, so the default
60s timeout made tests flaky. The image README notes bootstrap may take
up to five minutes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kiview
kiview requested a review from a team as a code owner October 17, 2026 18:50
@coderabbitai

coderabbitai Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 3e703da8-6bd1-4b14-b905-4526a6ad64a3
📥 Commits

Reviewing files that changed from the base of the PR and between f829405 and 615b686.

📒 Files selected for processing: 1
  • modules/oceanbase/src/main/java/org/testcontainers/oceanbase/OceanBaseCEContainer.java

Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 4 remain after this review.

📝 Walkthrough

The OceanBase container’s log-based readiness strategy now has a five-minute startup timeout. It still waits for one boot success! message.

Changes: OceanBase container startup

Layer / File(s) Summary
Configure readiness timeout
modules/oceanbase/src/main/java/org/testcontainers/oceanbase/OceanBaseCEContainer.java
The log-based readiness strategy now has a five-minute startup timeout. It still waits for one boot success! message.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~5 minutes

Change: Bug fix

Suggested reviewers: whhe

Merge Risk: ⚪ Minimal · up to 615b6

The longer startup allowance addresses the reported slow boots while preserving the existing readiness check. No actionable merge-blocking risk is established by the supplied review context.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 1 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
Title check Passed The title clearly and concisely describes the main change: increasing the OceanBase CE startup timeout to five minutes.
Description check Passed The description explains the intermittent timeout, identifies the readiness signal, gives the rationale for the five-minute timeout, describes failure behavior, and notes override support.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
  • Fix all pre-merge checks with AI
✨ Finishing Touches: 💡 1
📝 Generate docstrings: 💡
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@kiview
kiview merged commit 1848434 into main Oct 17, 2026
78 checks passed
@kiview
kiview deleted the oceanbase-startup-wait branch October 17, 2026 18:56
@kiview kiview added this to the next milestone Oct 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant