Skip to content

fix(ci): isolate Java Sled behavior fixtures - #8450

Merged
Xuanwo merged 1 commit into
mainfrom
xuanwo/ci-java-sled-fixtures
Nov 1, 2026
Merged

Xuanwo merged 1 commit into
mainfrom
xuanwo/ci-java-sled-fixtures

Conversation

@Xuanwo

@Xuanwo Xuanwo commented Nov 1, 2026

Copy link
Copy Markdown
Member

Which issue does this PR close?

Related to #8421's Java/Sled CI failure.

Rationale for this change

The Java behavior extension creates a new Sled operator for each test class but randomizes only the logical key root. Every class still opens the same physical database directory. Two class initializations in the linked job failed with WouldBlock while acquiring the lock on sled/db.

What changes are included in this PR?

  • Use the per-initialization UUID for a Sled datadir subdirectory under the configured parent. OPENDAL_DISABLE_RANDOM_ROOT=true preserves the configured root and datadir.
  • Add a Sled regression that keeps two fixtures open and writes and reads distinct bytes through both operators. The regression is disabled for other services and when random-root isolation is explicitly disabled.

Validation on nier with the real embedded Sled database:

  • The same regression on main df3e3aa6 fails during initialization with the observed database-lock error.
  • The fixed full Java/Sled behavior suite reports 56 tests, zero failures or errors, and 36 skips. The new regression executes and passes.
  • Native compilation and Java Spotless checks pass.

Are there any user-facing changes?

No. This changes Java behavior-test setup only.

Breaking changes

AI Usage Statement

  • Harness: Codex. Model: gpt-6.1-sol. Effort: max. Role: Implemented the fixture change and regression, analyzed CI logs, and prepared validation and this PR.
  • Harness: Codex. Model: group/deepseek. Effort: max. Role: Independently reviewed the source and real Sled validation on nier. The original CI lock holder remains unknown; the regression reproduces the collision with two live fixtures.

@Xuanwo
Xuanwo requested a review from tisonkun as a code owner November 1, 2026 01:45
@github-actions github-actions Bot added bindings/java releases-note/fix The PR fixes a bug or has a title that begins with "fix" size:M This PR changes 30-99 lines, ignoring generated files. labels Nov 1, 2026

@PsiACE PsiACE left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hugs from bub

@Xuanwo
Xuanwo merged commit 10d8ca4 into main Nov 1, 2026
98 checks passed
@Xuanwo
Xuanwo deleted the xuanwo/ci-java-sled-fixtures branch November 1, 2026 03:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bindings/java releases-note/fix The PR fixes a bug or has a title that begins with "fix" size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants