Hi, Thanks very much for this KIP. I think it has promise and plan to spend the time required in the discussion. However, it seems to me that it's premature to start voting.
EoS support in Kafka is a very complicated area. I know how to make share groups and transactions work together. While this KIP is heading in the right direction, it is lacking a lot of vital details and there has not yet been proper engagement from the community to validate it. Personally, I have not had the bandwidth to get properly involved, especially given the rapidly approaching deadline for AK 4.4. I would expect to see a specification for the work in the KIP including: * RPC schemas for new and changed Kafka protocol APIs * Schemas for any changes to the records on the internal topics * Sequence diagrams for the RPC flows which explain all of the interactions, including recovery paths * Java interface changes * Metrics * Enablement and rollout plan KIP-932 is a huge document because it contains all of these things. This KIP needs to be a similar level of detail. It's going to be quite a large KIP. I can help progress it, but only when I actually have significant time to dedicate to it. Thanks, Andrew On 2026/05/26 18:18:16 Shekhar Prasad Rajak via dev wrote: > Hi all, > > Following the discussion thread [1], I'd like to start a vote on > KIP-1289: Support Transactional Acknowledgments for Share Groups. > > KIP wiki: > KIP-1289 Support Transactional Acknowledgments for Share Groups - Apache > Kafka - Apache Software Foundation > > > > TL;DR > KIP-1289 adds the share-group equivalent of `sendOffsetsToTransaction`, > enabling exactly-once semantics for share-group-based read-process-write > pipelines. The proposal introduces: > > - A new producer API: > `producer.sendShareAcknowledgementsToTransaction(acks, shareGroupMetadata)` > - A new RPC: `TxnShareAcknowledgeRequest` > - A new record state: `TX_PENDING` in the share-group state machine > - Broker-side staging via per-partition 2PC, finalized by the existing > WriteTxnMarkers fanout > > The design follows the same protocol-version-aware (TV1/TV2 - KIP-890 + > KIP-939) and > producer-fencing patterns as the existing `sendOffsetsToTransaction` > flow, so it inherits all of TV2's latency improvements automatically. > > > A working proof-of-concept branch demonstrates the end-to-end flow, > > https://github.com/apache/kafka/pull/22357 > > The polished PR will follow once voting concludes. > > > > Thanks, > Shekhar Rajak > > [1] https://lists.apache.org/thread/mn1fn8t01n1mzn0tmh528mbpmqllbo31 > > >
