connectors: define the sink delivery and recovery contract
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- kafka, rust
- Ambito
- api, distributed-systems
Direzione di ricerca
Start by reading parent tracker #4232, Kafka Connect's SinkTask contract, Iggy's source acknowledgment work in #3855, and the failure scenarios in #4237. Document the selected delivery, checkpoint, retry, lifecycle, filtering, versioning, and migration behavior, including expected outcomes for each scenario. Done means the observable contract and chosen implementation approach are recorded and can be used to judge correctness.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Parent tracker: #4232.
Agree on the behavior the runtime and sink plugins must provide before selecting the API shape. The design should make it possible to determine whether an implementation is correct from its observable behavior.
Acceptance criteria:
- Define the destination acknowledgment required for a record to count as delivered, including buffering, partial success, and uncertain outcomes.
- Specify the checkpoint rule per partition, including whether offsets identify the last completed record or the next record to process. Define duplicate behavior, the supported ownership model, and source durability and retention assumptions.
- Choose an acknowledgment mechanism that identifies the records it covers. A serialized flush barrier is acceptable if its completion proves delivery of the entire covered set.
- Define retry responsibility, failure isolation, shutdown, restart, and assignment changes. Document unsupported concurrency where necessary.
- Define intentional filtering and the treatment of unexpected pipeline failures.
- Agree on API versioning, capability checks, defaults, and migration.
- Record expected outcomes for the failure scenarios used by #4237.
Use Kafka Connect's sink contract and Iggy's existing source acknowledgment work in #3855 as references. The decision should extend the existing discussions and explain which implementation approach is selected.
- Lingua principale
- Rust
- Stelle
- 5.2k
- Fork
- 502
- Merge medio
- 3g 11h
- PR unite (30g)
- 143
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi 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/iggy
-
go good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
HTTP client treats a consumer group as a plain consumerForse già presa @mohitduhan19 l’ha presa 18 giorni fa. Apertabug rust server
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
apache/iggy#4408 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Add the fail-fast connection option to the Rust and Python quick-startsForse già presa @QIW9 l’ha presa 6 giorni fa. Apertadocs good first issue
Difficoltà 1/5 1-3 ore Idoneità per principianti 92/100
apache/iggy#4261 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
bug python sdk
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
apache/iggy#3748 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Python examples: add a sink data producerForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertagood first issue python
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 70/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
limitlessprojects/Go-Hybrid#3342 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
librespeed/speedtest-rust#52 · 1 commento ·
-
enhancement needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
bherbruck/solvecraft#11246 · 1 commento · 1 reazione ·
-
example
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
rust-lang-nursery/rust-cookbook#954 ·
I maintainer di solito rispondono entro 1 giorno