datalake_agent: service framework (Java)
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
Direzione di ricerca
Start in contrib/datalake_agent after verifying the B0 dependency, then run the planned Maven verification and review the in-process gRPC and Unix-socket test coverage. Done means the two-phase startup, transport security, version handshake, interceptors, configuration mapping, credential scrubbing, UNIMPLEMENTED business RPCs, catalog default, RAT headers, and stated CI acceptance checks all pass.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Part of #2008. Letters (A, B0–B7, C, D, E) are the PRs listed there; this is B1.
Scope
contrib/datalake_agent: JDK 17, Maven, Guice, Netty gRPC. No Iceberg in it yet.
- Two-phase startup: bind and serve health first, build the injector and flip to SERVING second.
- Transport: Unix socket by default with configured permissions; TCP only with TLS and a 0600 bearer-token file (current plus rotation-grace token).
- Interceptors: request context, exception → status with
BusinessErrorCode(no stack trace leaves the process), version handshake refusing an old client and naming both versions. - HOCON config for process concerns only; everything about a table travels in the request. One request mapper turns the fdw's options into Iceberg property maps.
- Credential scrubbing in logs; opt-in metrics.
- Every business RPC answers UNIMPLEMENTED naming the RPC. Catalog management present, off by default.
- In-process gRPC tests, a Unix-socket test, negative TLS/token tests; CI runs
mvn -B verify; RAT headers. The PostgreSQL build does not need Java.
Out of scope
Iceberg operations and catalogs (B3+), the proxy bgworker, installing the jar through make install.
Depends on
B0.
Acceptance
- Cold start to SERVING under 1.5 s in CI; health answers on the socket.
- Old client refused naming both versions; TCP without TLS refuses to start; bad token is UNAUTHENTICATED; business RPCs are UNIMPLEMENTED naming the RPC.
- A fake key in config and request never appears in DEBUG logs (asserted by test).
mvn -B verifyand RAT green in CI.
- Lingua principale
- C
- Stelle
- 1.4k
- Fork
- 248
- Merge medio
- 4g 10h
- PR unite (30g)
- 40
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/cloudberry
-
type: Bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
apache/cloudberry#1885 · 2 reazioni ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
apache/cloudberry#1825 ·
-
type: Bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 65/100
apache/cloudberry#2048 · 1 reazione ·
-
type: Bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 40/100
apache/cloudberry#2047 ·
-
type: Bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
apache/cloudberry#2046 · 1 commento ·
Tutte le issue di apache/cloudberry
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
bradcypert/plum#53 ·
-
Component: GLib
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Status: Opened
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
nextbsd/nextbsd-userland#285 ·