Hi Hannes,

Thanks for the KIP. This seems to be a gap worth closing: SQL's OVER (...
ROWS/RANGE BETWEEN ...) and Flink's over-aggregation have no DSL equivalent
in Kafka Streams, and ksqlDB doesn't offer it either.


I have a few higher-level comments and questions before getting into the
details.


AS1: Flink (which the KIP cites) supports only the backward PRECEDING ...
CURRENT ROW frame for streaming OVER aggregation and intentionally omits
FOLLOWING. Should we also drop it?


AS2: CloseableIterator: there is already
org.apache.kafka.common.utils.internals.CloseableIterator, and the Streams
store iterators (KeyValueIterator, WindowStoreIterator) are already
Closeable with close(). Could Range.fetch reuse an existing iterator type
rather than introducing a new public CloseableIterator with the same simple
name? If a Record-typed closeable iterator is genuinely needed, use a
non-colliding name and include a note explaining why the existing types
don't fit.



Thanks
-Alieh



On Wed, May 27, 2026 at 9:32 PM Hannes Buseyne <[email protected]>
wrote:

> Hi all,
>
> I'd like to start a discussion on KIP-1352, which proposes adding range
> aggregations to the Kafka Streams DSL.
> The current windowing API is limited to fixed time intervals and
> incremental aggregations. This KIP introduces a Range abstraction that
> allows users to define flexible record-centric ranges (by event time or
> event count) and perform non-incremental aggregations over them, emitting
> results as a KStream.
>
> KIP page:
>
> https://urldefense.com/v3/__https://cwiki.apache.org/confluence/display/KAFKA/KIP-1352*3A*Ranges*and*Range*Aggregations*in*the*Kafka*Streams*DSL__;JSsrKysrKysrKw!!Ayb5sqE7!t3zDQWQ6gAYrqYo_o-3JJJRSzDii-j5WOdFXRCB8ZhQ2PhfqcjA8z2XDW7rdkU0TYFMDBWtV_oNOKlTAayuvdsKvug$
>
> Looking forward to your feedback
> Hannes Buseyne
>

Reply via email to