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

alexey pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git


The following commit(s) were added to refs/heads/master by this push:
     new 320ba72  [docs] add info on READ_YOUR_WRITES scan mode
320ba72 is described below

commit 320ba7282d171b07b8ddd03749a264d95a6649ec
Author: Alexey Serbin <[email protected]>
AuthorDate: Thu Jan 20 11:18:56 2022 -0800

    [docs] add info on READ_YOUR_WRITES scan mode
    
    Change-Id: Idccc6557d3f7dfc5640f932e460cbf7242044b51
    Reviewed-on: http://gerrit.cloudera.org:8080/18164
    Tested-by: Kudu Jenkins
    Reviewed-by: Andrew Wong <[email protected]>
---
 docs/transaction_semantics.adoc | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/docs/transaction_semantics.adoc b/docs/transaction_semantics.adoc
index 2af48a0..ff9ee70 100644
--- a/docs/transaction_semantics.adoc
+++ b/docs/transaction_semantics.adoc
@@ -240,6 +240,22 @@ will eventually allow Kudu to have full 
`strict-serializable` semantics for read
 and writes. This is still a work in progress and some anomalies are still 
possible
 (see <<known_issues>>). Only scans in this mode can be fault-tolerant.
 
+`READ_YOUR_WRITES`:: This read mode relies on the state of a Kudu client to
+issue subsequent scan requests. When issuing a scan request in this read mode,
+a Kudu client provides the latest timestamp it observed so far. The server
+selects a timestamp higher than the timestamp provided by the client, that is
+also guaranteed to have all prior write operations committed and applied to
+the data. That translates into read-your-writes and read-your-reads behavior
+which is useful in scenarios where subsequent scan requests should contain the
+data the client has seen so far while reading and writing during its current
+session. link:https://issues.apache.org/jira/browse/KUDU-1704[KUDU-1704] could
+provide more details and references, if necessary. To summarize, this read mode
+
+- ensures read-your-writes and read-your-reads session guarantees
+- minimizes the latency caused by waiting for outstanding write operations
+  at the server side to complete
+- doesn't guarantee linearizability
+
 Selecting between read modes requires balancing the trade-offs and making a 
choice
 that fits your workload. For instance, a reporting application that needs to
 scan the entire database might need to perform careful accounting operations, 
so that

Reply via email to