KIP-1328 — Dead Letter Queue Support for DSL Dropped Records
Discussion Streams
Adds ProcessingContext#writeToDlq and a DroppedRecordException so DSL operators that silently drop records — null keys or values in aggregate/count/reduce, late records past the grace period in windowed aggregations, null join keys in stream-table and foreign-key joins, null keys in toTable — route them to the KIP-1034 dead letter queue with the standard error headers, while still recording the dropped-records sensor. Those drops were only observable as a WARN log and a counter, with no way to capture the payloads for analysis or reprocessing, unlike deserialization and processing errors which already had a DLQ path.
Details
| Author | Daeho Kwon |
| Status | Discussion |
| JIRA | KAFKA-20439 |
| Wiki | View on Apache Wiki |
| Created | 2026-04-27 |
| Last Modified | 2026-04-27 |
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.