Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Briefly list any new interfaces that will be introduced as part of this proposal or any existing interfaces that will be removed or changed. The purpose of this section is to concisely call out the public contract that will come along with this feature.

A public interface is any change to the following:

...

Binary log format

...

The network protocol and api behavior

...

Any class in the public packages under clientsConfiguration, especially client configuration

  • org/apache/kafka/common/serialization

  • org/apache/kafka/common

  • org/apache/kafka/common/errors

  • org/apache/kafka/clients/producer

  • org/apache/kafka/clients/consumer (eventually, once stable)

...

Monitoring

...

Command line tools and arguments

Add kafka.streams.kstream.SlidingWindows and # APIs

Code Block
languagejava
firstline1
/**
 * The fixed-size sliding window specifications used for aggregations.
 * <p>
 * The semantics of sliding aggregation windows are: Compute the aggregate total for the unique current window, from
 * the current stream time to T1 (size) milliseconds before. Both the lower and upper time interval bounds are inclusive.
 *
 * Thus, the specified {@link TimeWindow} is not aligned to the epoch, but to record timestamps.
 * Aligned to the epoch means, that the first window starts at timestamp zero.
 * <p>
 * For time semantics, see {@link TimestampExtractor}.
 *
 * @see TimeWindows
 * @see SessionWindows
 * @see UnlimitedWindows
 * @see JoinWindows
 * @see KGroupedStream#windowedBy(Windows)
 * @see TimestampExtractor
 */

public final class SlidingWindows extends Windows<TimeWindow> {
	 /** The retention period. */
    private final long maintainDurationMs;

    /** The size of the windows in milliseconds. */
    public final long sizeMs;

    /** The grace period in milliseconds. */
    private final long graceMs;

	public static SlidingWindows of(final Duration size) throws IllegalArgumentException{
    }


}

...


Proposed Changes

Describe the new thing you want to do in appropriate detail. This may be fairly extensive and have large subsections of its own. Or it may be a few sentences. Use judgement based on the scope of the change.

...