[Tracking] datalake_fdw: Iceberg data path and the metadata agent
@MisterRaindrop がすでに取り組んでいます。
2026年9月16日 から。
評価
この issue はまだ評価されていません。
説明
Everything between the DDL skeleton (#1842) and a lake table that can be written and read from SQL. Design: #1683. This issue is the execution view.
Landed: #1842, the skeleton (AM, catalog/volume FDWs, stub engine, DDL guards); #1951, the Parquet format layer (Arrow, field ids, tracked memory pool, type rules).
Twelve PRs, three waves
wave 1 wave 2 wave 3
A S3 storage ────────────────────────────────────────┐
B0 proto ─┬► B1 agent framework ─┬► B3 Iceberg ops ─► B4 Builtin ─┼► C write ─┬► E merge-on-read + DML
└► B2 engine client ───┘ ├► B5 Polaris ├► D read ──┘
├► B6 Hive Metastore
└► B7 Hadoop
C and D need A, B2 and B4; with the Builtin catalog they run in CI against MinIO and the agent alone. B5–B7 need B3 and run alongside C and D.
- A #2009 Storage I/O over object storage (S3) — first
- B0 #2010 The gRPC contract: proto files
- B1 #2011 datalake_agent: service framework (Java)
- B2 #2012 datalake_fdw: the agent engine client
- B3 #2013 datalake_agent: Iceberg operations by metadata location
- B4 #2014 datalake_fdw: Builtin catalog
- B5 #2015 datalake_agent: Polaris (REST) catalog
- B6 #2016 datalake_agent: Hive Metastore catalog
- B7 #2017 datalake_agent: Hadoop (filesystem) catalog
- C #2018 Write path: INSERT to data files and a committed snapshot
- D #2019 Read path: planned fragments, CustomScan, projection and pruning
- E #2020 Merge-on-read and DML
Attached to the PR they belong with: #1988 NUMERIC (C), #1990 timestamp units (C), #1989 name mapping (D). Later, blocking nothing: the optional datalake_proxy bgworker (#1683 §5.4).
Rules
- PRs target
mainand are squash-merged; the description is the commit message (#1951 layout). - Every PR leaves both components shippable: an unfinished path refuses with a clear error. The agent answers UNIMPLEMENTED for RPCs it does not carry yet, as the stub engine does.
- The proto files and the shared headers (
format/format.h,meta/iceberg_meta_engine.h,common/*.h) change only in their own small PR. - Nothing generated is committed; protoc runs at build time on both sides.
- At most two PRs in review at once; the next stays a draft.
- Each PR brings its tests: a smoke category on the C side,
mvn -B verifyon the Java side, a CI job for any service it needs. - Milestone
datalake_fdw: Iceberg read/write MVP, labeldatalake.
Out of scope: the FDW raw-file path (#1683 §2.3), the CI build image (devops repo), HDFS storage, execution-engine work.
- 主要言語
- C
- スター
- 1.4k
- フォーク
- 248
- 平均マージ
- 4日 10時間
- マージ済み PR(30日)
- 40
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
apache/cloudberry のほかの issue
-
type: Bug
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
apache/cloudberry#1885 · リアクション 2 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
apache/cloudberry#1825 ·
-
type: Bug
難易度 3/5 1〜2日 初心者へのやさしさ 65/100
apache/cloudberry#2048 · リアクション 1 件 ·
-
type: Bug
難易度 4/5 3〜5日 初心者へのやさしさ 40/100
apache/cloudberry#2047 ·
-
type: Bug
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
apache/cloudberry#2046 · コメント 1 件 ·
apache/cloudberry の issue をすべて見る
似ている issue
-
task
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
vsanthanam/JBird#429 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
bug documentation
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
es-ude/OnDeviceTraining#459 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
bilelmoussaoui/gobject-linter#199 · コメント 1 件 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
bradcypert/plum#53 ·