KIP-825 — introduce a new API to control when aggregated results are produced
Accepted Kafka 3.2 Streams
Adds an EmitStrategy API to TimeWindowedKStream and SessionWindowedKStream with ON_WINDOW_CLOSE (emit only the final result when the window closes) and ON_WINDOW_UPDATE (current behavior: emit for every record). The existing suppress(Suppressed.untilWindowCloses()) approach uses a redundant in-memory buffer with its own changelog topic, adding CPU, memory, disk, and operational overhead to achieve what is logically a windowing-level concern.
Details
| Author | Hao Li |
| Status | Accepted |
| Kafka Version | 3.2 |
| JIRA | KAFKA-13785 |
| Wiki | View on Apache Wiki |
| Created | 2022-03-11 |
| Last Modified | 2022-11-16 |
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.