Repository: kafka Updated Branches: refs/heads/0.10.2 8e35721ce -> 7028384bf
MINOR: Clarify ReadOnlyWindowStore's time range behaviour Highlight that the range in `fetch` is inclusive of both `timeFrom` and `timeTo` Author: Damian Guy <[email protected]> Reviewers: Michael G. Noll <[email protected]>, Matthias J. Sax <[email protected]>, Ismael Juma <[email protected]> Closes #2811 from dguy/minor-window-fetch-java-doc (cherry picked from commit b611cfa5c0f4941a491781424afd9b699bdb894e) Signed-off-by: Ismael Juma <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/kafka/repo Commit: http://git-wip-us.apache.org/repos/asf/kafka/commit/7028384b Tree: http://git-wip-us.apache.org/repos/asf/kafka/tree/7028384b Diff: http://git-wip-us.apache.org/repos/asf/kafka/diff/7028384b Branch: refs/heads/0.10.2 Commit: 7028384bfb4c8d761c15bc11e2156278249e721a Parents: 8e35721 Author: Damian Guy <[email protected]> Authored: Thu Apr 6 14:44:40 2017 +0100 Committer: Ismael Juma <[email protected]> Committed: Thu Apr 6 14:45:10 2017 +0100 ---------------------------------------------------------------------- .../streams/state/ReadOnlyWindowStore.java | 21 +++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kafka/blob/7028384b/streams/src/main/java/org/apache/kafka/streams/state/ReadOnlyWindowStore.java ---------------------------------------------------------------------- diff --git a/streams/src/main/java/org/apache/kafka/streams/state/ReadOnlyWindowStore.java b/streams/src/main/java/org/apache/kafka/streams/state/ReadOnlyWindowStore.java index 80da9e8..4f9b78a 100644 --- a/streams/src/main/java/org/apache/kafka/streams/state/ReadOnlyWindowStore.java +++ b/streams/src/main/java/org/apache/kafka/streams/state/ReadOnlyWindowStore.java @@ -30,7 +30,26 @@ public interface ReadOnlyWindowStore<K, V> { /** * Get all the key-value pairs with the given key and the time range from all * the existing windows. - * + * <p> + * The time range is inclusive and applies to the starting timestamp of the window. + * For example, if we have the following windows: + * <p> + * <pre> + * +-------------------------------+ + * | key | start time | end time | + * +-------+------------+----------+ + * | A | 10 | 20 | + * +-------+------------+----------+ + * | A | 15 | 25 | + * +-------+------------+----------+ + * | A | 20 | 30 | + * +-------+------------+----------+ + * | A | 25 | 35 | + * +-------------------------------- + * </pre> + * And we call {@code store.fetch("A", 10, 20)} then the results will contain the first + * three windows from the table above, i.e., all those where 10 <= start time <= 20. + * * @return an iterator over key-value pairs {@code <timestamp, value>} * @throws InvalidStateStoreException if the store is not initialized */
