[
https://issues.apache.org/jira/browse/KAFKA-10298?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Matthias J. Sax reassigned KAFKA-10298:
---------------------------------------
Assignee: (was: John Roesler)
> Replace Windows with a proper interface
> ---------------------------------------
>
> Key: KAFKA-10298
> URL: https://issues.apache.org/jira/browse/KAFKA-10298
> Project: Kafka
> Issue Type: Improvement
> Components: streams
> Reporter: John Roesler
> Priority: Major
>
> See POC: [https://github.com/apache/kafka/pull/9031]
>
> Presently, windowed aggregations in KafkaStreams fall into two categories:
> * Windows
> ** TimeWindows
> ** UnlimitedWindows
> ** JoinWindows
> * SessionWindows
> Unfortunately, Windows is an abstract class instead of an interface, and it
> forces some fields onto its implementations. This has led to a number of
> problems over the years, but so far we have been able to live with them.
> However, as we consider adding new implementations to this side of the
> hierarchy, the damage will spread. See KIP-450, for example.
> We should take the opportunity now to correct the issue by introducing an
> interface and deprecating Windows itself. Then, we can implement new features
> cleanly and maybe remove Windows in the 3.0 release.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)