Skip to content

Navigation Menu

Sign in
Sign up

chore(test): run REST fixture's SQLite backend in WAL mode - #931

Open
kevinjqliu wants to merge 1 commit into
apache:main from
kevinjqliu:rest-fixture-sqlite-wal
Open

chore(test): run REST fixture's SQLite backend in WAL mode #931
kevinjqliu wants to merge 1 commit into
apache:main from
kevinjqliu:rest-fixture-sqlite-wal

Conversation

@kevinjqliu

@kevinjqliu kevinjqliu commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Part of apache/iceberg#18043

The REST fixture compose sets CATALOG_URI=jdbc:sqlite:file:/tmp/iceberg_rest_mode=memory, carried over from the old databricks image. That isn't an in-memory db, there's no ? so iceberg_rest_mode=memory is just part of the filename. It's a file-backed SQLite db on the default rollback journal, which only lets one connection touch the db at a time, so parallel clients can fail with SQLITE_BUSY ("database is locked").

This switches it to jdbc:sqlite:/tmp/iceberg_catalog.db?journal_mode=WAL, matching the new fixture default in apache/iceberg#18044.

🤖 Generated with Claude Code

wgtmac reacted with thumbs up emoji
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟢 Approval recommended

The change is a small, targeted docker-compose configuration update that aligns with the stated goal of reducing SQLite lock contention.

Pull request overview

Updates the Iceberg REST test fixture’s docker-compose configuration to use a file-backed SQLite catalog database in WAL mode to reduce SQLITE_BUSY lock contention when tests run parallel clients.

Changes:

  • Fixes the SQLite JDBC URL to point to an explicit file path instead of an accidentally file-backed "mode=memory" filename.
  • Enables SQLite WAL journaling via journal_mode=WAL in the JDBC URL to improve concurrent access behavior.
File summaries
File Description
src/iceberg/test/resources/iceberg-rest-fixture/docker-compose.yml Switch SQLite JDBC URL to a real file-backed DB and enable WAL mode for better parallel test reliability.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

Copilot code review Copilot
Copilot review effort, defaults to Lite
Applies to this pull request for everyone.Learn more about Copilot code review.
Copilot left review comments
@wgtmac wgtmac wgtmac approved these changes
+1 more reviewer
@zhjwpku zhjwpku zhjwpku approved these changes
Reviewers whose approvals may not affect merge requirements

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /