[kafka] Handle basic Produce requests independently of storage
- Dominant language
- Java
- Stars
- 2.1k
- Forks
- 625
- Avg merge
- 3d 14h
- Merged PRs (30d)
- 97
Description
### Purpose
Part of #4185. PR05 of the Kafka compatibility sequence.
Implement non-idempotent Produce v3-v11 with a narrow backend contract. Validate acknowledgements, topic/partition identities and record batches; isolate invalid partitions, preserve response order and copy record data independently of the network buffer.
### Acceptance criteria
- [ ] Valid requests preserve records, headers, listener context, acks and timeout.
- [ ] Invalid batches and topics do not suppress valid partitions in the same request.
- [ ] Transactional/idempotent/control batches and duplicate partition entries are rejected.
- [ ] acks=0 emits no response and releases the request buffer on success and failure.
- [ ] Production ApiVersions continues to expose only the existing capabilities until append is integrated.
### Dependencies
PR04 Metadata (#4261 / #4266).
### Scope boundary
No row conversion, gateway append or production Produce registration.
### Implementation
Draft PR #4284: https://github.com/apache/fluss/pull/4284
Java 11 validation: 69 unit tests and 2 integration tests passed at `936fd3f39e9e6fe595ed6bf8e30f0e2b5185ffe3`. Review and merge remain pending.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing draft PR #4284 and the Metadata dependency in #4261/#4266, then inspect the stated Java 11 validation results. Done means the acceptance criteria hold for Produce v3-v11 while storage conversion, gateway append, and production registration remain out of scope.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, kafka
- Domain
- backend, stream-processing
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100