mjsax commented on code in PR #14600:
URL: https://github.com/apache/kafka/pull/14600#discussion_r1367568404


##########
docs/streams/upgrade-guide.html:
##########
@@ -133,6 +133,15 @@ <h3 class="anchor-heading"><a id="streams_notable_changes" 
class="anchor-link"><
         More details about the new config 
<code>StreamsConfig#TOPOLOGY_OPTIMIZATION</code> can be found in <a 
href="https://cwiki.apache.org/confluence/display/KAFKA/KIP-295%3A+Add+Streams+Configuration+Allowing+for+Optional+Topology+Optimization";>KIP-295</a>.
     </p>
 
+    <h3><a id="streams_api_changes_370" 
href="#streams_api_changes_370">Streams API changes in 3.7.0</a></h3>
+    <p>
+        IQv2 supports a <code>RangeQuery</code> that allows to specify 
unbounded, bounded, or half-open key-ranges.
+        Now, we add reverseRange and reverseAll query for 
<code>RangeQuery</code>. The concepts of reverseRange and reverseAll are not 
tied to any specific method or class.
+        Rather, they represent functionalities we wish to achieve. To achieve 
the functionalities of reverseRange and reverseAll, we can introduce a method 
named <code>withDescendingKeys()</code> for reversed queries.
+        Utilizing these, the query results are ordered based on the serialized 
byte[] of the keys, not the 'logical' key order.
+        <a 
href="https://cwiki.apache.org/confluence/display/KAFKA/KIP-985%3A+Add+reverseRange+and+reverseAll+query+over+kv-store+in+IQv2";>KIP-985</a>
+    </p>

Review Comment:
   I think we can simplify the paragraph (we try to be brief):
   ```
   IQv2 supports <code>RangeQuery</code> that allows to specify unbounded, 
bounded, or half-open key-ranges, which return data in ascending 
(byte[]-lexicographical) order (per partition).
   <a 
href="https://cwiki.apache.org/confluence/display/KAFKA/KIP-985%3A+Add+reverseRange+and+reverseAll+query+over+kv-store+in+IQv2";>KIP-985</a>
 extends this functionality by adding <code>.withDescendingKeys()<code> to 
allow user to receive data in descending order.
   ```



##########
streams/src/main/java/org/apache/kafka/streams/state/ReadOnlyKeyValueStore.java:
##########
@@ -48,13 +48,13 @@ public interface ReadOnlyKeyValueStore<K, V> {
      * Get an iterator over a given range of keys. This iterator must be 
closed after use.
      * The returned iterator must be safe from {@link 
java.util.ConcurrentModificationException}s
      * and must not return null values.
-     * Order is not guaranteed as bytes lexicographical ordering might not 
represent key order.
+     * Order based on the serialized byte[] of the keys, not the 'logical' key 
order.

Review Comment:
   `Order [is] based`



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to