datalake_fdw: the agent engine client (meta/engine_agent)
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 25/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 活発
調査の方向性
Start with src/meta/engine_agent/ and the B0 dependency, then review the conformance suite described in the issue against the stub and B1. Verify the client, generated stubs, GUC, cancellation and deadline handling, handshake, error detail, and EXPLAIN ANALYZE metrics. Done means the listed acceptance cases pass, exports stay limited, and both gated and ungated Arrow builds work.
索引モデルが issue の本文から書いたものです。
説明
Part of #2008. Letters (A, B0–B7, C, D, E) are the PRs listed there; this is B2.
Scope
src/meta/engine_agent/: the first real IcebergMetaEngine, default in place of the stub (the stub stays for tests).
- C dispatch over a C++ gRPC layer behind the
DlErrCodeABI: no exception or longjmp crosses it; agent error detail lands indl_error_set. - Stubs generated at build time from B0 (
protocplus the gRPC C++ plugin); grpc++ detected under--enable-datalake-fdw. - A GUC for the agent address: Unix socket by default, TCP with a token file when set.
- Deadline, cancel polling and a wait event while a call is in flight; handshake on first call; RPC count and time in
EXPLAIN ANALYZE. - Conformance suite: the same scenarios against the stub and against B1. Against B1 it proves the plumbing (handshake, cancel, deadline, agent down, error detail); B3 and B4 turn it fully green.
- CI job: build the B1 jar, start it on a socket, run the suite.
Out of scope
Builtin engine (B4), the proxy.
Depends on
B0; tested against B1.
Acceptance
- Agent down: clear error within the deadline, transaction rolls back, nothing hangs.
- Cancel mid-call returns promptly with no leaked channel.
- Version mismatch refused naming both versions.
nm -Dexports only PostgreSQL entry points (no grpc++/protobuf); builds with and without the gate; Arrow 9 and 17.
- 主要言語
- 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
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
bradcypert/plum#53 ·
-
Component: GLib
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
Status: Opened
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
nextbsd/nextbsd-userland#285 ·