You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by mj...@apache.org on 2020/09/22 01:41:53 UTC

[kafka] branch trunk updated: KAFKA-10459: Document IQ APIs where order does not hold between stores (#9251)

This is an automated email from the ASF dual-hosted git repository.

mjsax pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/kafka.git


The following commit(s) were added to refs/heads/trunk by this push:
     new 822b9c9  KAFKA-10459: Document IQ APIs where order does not hold between stores (#9251)
822b9c9 is described below

commit 822b9c9866b5c327ad058f8812ddc1d632a72888
Author: Luke Chen <43...@users.noreply.github.com>
AuthorDate: Tue Sep 22 09:41:02 2020 +0800

    KAFKA-10459: Document IQ APIs where order does not hold between stores (#9251)
    
    Reviewer: Matthias J. Sax <ma...@confluent.io>
---
 .../java/org/apache/kafka/streams/state/ReadOnlyWindowStore.java     | 5 +++++
 1 file changed, 5 insertions(+)

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 71a31f7..586ab93 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
@@ -25,6 +25,11 @@ import java.time.Instant;
  * A window store that only supports read operations.
  * Implementations should be thread-safe as concurrent reads and writes are expected.
  *
+ * <p>Note: The current implementation of either forward or backward fetches on range-key-range-time does not
+ * obey the ordering when there are multiple local stores hosted on that instance. For example,
+ * if there are two stores from two tasks hosting keys {1,3} and {2,4}, then a range query of key [1,4]
+ * would return in the order of [1,3,2,4] but not [1,2,3,4] since it is just looping over the stores only.
+ *
  * @param <K> Type of keys
  * @param <V> Type of values
  */