Skip to content

Comments

feat(playground): add SQL catalog support#2122

Open
Shekharrajak wants to merge 5 commits intoapache:mainfrom
Shekharrajak:feat/playground-sql-catalog
Open

feat(playground): add SQL catalog support#2122
Shekharrajak wants to merge 5 commits intoapache:mainfrom
Shekharrajak:feat/playground-sql-catalog

Conversation

@Shekharrajak
Copy link
Contributor

Which issue does this PR close?

What changes are included in this PR?

Added SqlCatalogBuilder

Are these changes tested?

unit tests
and local testing :

 cat ~/.icebergrc 

  # SQLite (file-based - persistent)
  [[catalogs]]
  name = "local"
  type = "sql"
  [catalogs.config]
  uri = "sqlite:/tmp/iceberg-catalog.db"
  warehouse = "/tmp/iceberg-warehouse"

  Other database examples:

  # PostgreSQL
  [[catalogs]]
  name = "pg_catalog"
  type = "sql"
  [catalogs.config]
  uri = "postgresql://user:pass@localhost:5432/iceberg"
  warehouse = "s3://my-bucket/warehouse"

  # MySQL
  [[catalogs]]
  name = "mysql_catalog"
  type = "sql"
  [catalogs.config]
  uri = "mysql://user:pass@localhost:3306/iceberg"
  warehouse = "/data/warehouse"


# run playground : 

$ ./target/release/iceberg-playground

to build the release : 

cargo build -p iceberg-playground --release

create db : sqlite3 /tmp/iceberg-catalog.db "SELECT 1;" 

create config : 

  cat > ~/.icebergrc << 'EOF'
  [[catalogs]]
  name = "local"
  type = "sql"
  [catalogs.config]
  uri = "sqlite:/tmp/iceberg-catalog.db"
  warehouse = "/tmp/iceberg-warehouse"
  EOF

Run in playground: 

./target/release/iceberg-playground

Screenshot 2026-02-07 at 1 01 32 PM

@Shekharrajak
Copy link
Contributor Author

We can merge this first #2121 and I will resolve conflicts for this code changes.

@Shekharrajak Shekharrajak force-pushed the feat/playground-sql-catalog branch from 2a8e793 to 1b54f32 Compare February 16, 2026 19:03
Shekharrajak and others added 4 commits February 17, 2026 10:09
Combines SQL catalog support (from feature branch) with memory catalog
support (from upstream main). Both catalog types are now supported:
- rest
- sql
- memory
- Add missing closing delimiters )); and } for unsupported catalog type error
- Remove duplicate `use super::*;` statement in tests module
@Shekharrajak
Copy link
Contributor Author

cc @blackmwk @liurenjie1024
CI checks are looking good.
This implementation will help in completing EPIC #1155

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.

Support sql catalog in playground

1 participant