Skip to content

feat: add support for apache iceberg through duckdb iceberg extension#181

Draft
dheerapat wants to merge 1 commit intocarbonfact:mainfrom
dheerapat:feat/iceberg-support
Draft

feat: add support for apache iceberg through duckdb iceberg extension#181
dheerapat wants to merge 1 commit intocarbonfact:mainfrom
dheerapat:feat/iceberg-support

Conversation

@dheerapat
Copy link
Copy Markdown
Contributor

@dheerapat dheerapat commented Apr 12, 2026

Tested using Cloudflare R2 REST catalog

Screenshot 2026-04-13 005452 Screenshot 2026-04-13 005701

Summary by cubic

Add Apache Iceberg support using the duckdb Iceberg extension and a REST catalog. You can now run LEA against Iceberg tables (tested with Cloudflare R2).

  • New Features

    • Added Warehouse.ICEBERG with IcebergClient built on duckdb’s Iceberg extension (ATTACH as iceberg_catalog).
    • Supports token or OAuth2 client credentials for REST catalogs.
    • Table ops: create-as-select, clone, delete-and-insert, and delete; lists tables, fields, and stats.
    • Serialized execution for Iceberg (max_workers=1) and catalog selection via USE iceberg_catalog.
    • Note: header statements are not supported for Iceberg scripts.
  • Migration

    • Set env vars:
      • LEA_WAREHOUSE=iceberg
      • LEA_ICEBERG_WAREHOUSE, LEA_ICEBERG_ENDPOINT
      • Auth: LEA_ICEBERG_TOKEN or LEA_ICEBERG_CLIENT_ID/LEA_ICEBERG_CLIENT_SECRET (optional LEA_ICEBERG_OAUTH2_SERVER_URI)
    • The duckdb Iceberg extension is installed and loaded automatically.

Written for commit ad75ba7. Summary will update on new commits.

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.

1 participant