Skip to content

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

Merged
kevinjqliu merged 1 commit into
apache:mainfrom
kevinjqliu:rest-fixture-sqlite-wal
Sep 10, 2026
Merged

chore(test): run REST fixture's SQLite backend in WAL mode#931
kevinjqliu merged 1 commit into
apache:mainfrom
kevinjqliu:rest-fixture-sqlite-wal

Conversation

@kevinjqliu

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

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.

@kevinjqliu
kevinjqliu merged commit c136a1f into apache:main Sep 10, 2026
18 checks passed
@kevinjqliu
kevinjqliu deleted the rest-fixture-sqlite-wal branch September 10, 2026 15:25
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.

4 participants