Hao Hao has posted comments on this change. ( http://gerrit.cloudera.org:8080/9526 )
Change subject: A new Jepsen checker for READ_YOUR_WRITES scan mode ...................................................................... Patch Set 10: (16 comments) http://gerrit.cloudera.org:8080/#/c/9526/8/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj File java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj: http://gerrit.cloudera.org:8080/#/c/9526/8/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@59 PS8, Line 59: > same Done http://gerrit.cloudera.org:8080/#/c/9526/8/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@59 PS8, Line 59: lude [test]) > why doesn't the shorthand used in the imports work ([clojure.core.reducers Updated it in the latest patch. http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj File java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj: http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@25 PS9, Line 25: follow > follows Done http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@25 PS9, Line 25: valid > valid: Done http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@36 PS9, Line 36: invalid( > invalid: Done http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@38 PS9, Line 38: ;; [{:type :invoke, :f :add, :value 1, :process 0} : ;; {:type :ok, :f :add, :value 1, :process 0} : ;; {:type :invoke, :f :add, :value 2, :process 0} : ;; {:type :ok, :f :add, :value 2, :process 0} : ;; {:type :invoke, :f :count, :value nil, :process 0} : ;; {:type :ok, :f :count, :value 2, :process 0} : ;; {:type :invoke, :f :count, :value nil, :process 1} : ;; {:type :ok, :f :count, :value 2, :process 1} : ;; {:type :invoke, :f :add, :value 13, :process 1} : ;: {:type :ok, :f :add, :value 13, :process 1} : ;; {:type :invoke, :f :add, :value 22, :process 0} : ;; {:type :ok, :f :add, :value 22, :process 0} : ;; {:type :invoke, :f :count, :value nil, :process 0} : ;; {:type :ok, :f :count, :value 2, :process 0} : ;; {:type :invoke, :f :add, :value 250, :process 1} : ;; {:type :ok, :f :add, :value 250, :process 1}] : ;; > why? what's the anomaly that the checker is flagging? Because this history broke the first validation that 'the total row count of a shared table is greater than or equal to the count of successful writes performed by that client'. In L51, process 0 has successfully inserted 3 rows but only 2 rows have been read. I will add more comment for it. http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@72 PS9, Line 72: ;; The add operation to be performed by the processes. : (defn add-op [] (->> (range) : (map (partial array-map : :type :invoke : :f :add > Since you're talking about valid and invalid histories before this doesn't Done http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@77 PS9, Line 77: > docs: "The add operation to be performed by the processes" Done http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@82 PS9, Line 82: (defn count-by-set > docs: "The count operation to be performed by the processes" Done http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@85 PS9, Line 85: > you mean "and" right? The input could be either a set of :add ops or a :count op. So I put 'or' here. http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@86 PS9, Line 86: > same Same as above. http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@101 PS9, Line 101: > operations, making sure that: Done http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@103 PS9, Line 103: > sucessful Done http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@104 PS9, Line 104: kv > goes Done http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@163 PS9, Line 163: > rows of the table Done http://gerrit.cloudera.org:8080/#/c/9526/9/java/kudu-jepsen/src/main/clojure/jepsen/kudu/sets.clj@191 PS9, Line 191: > counts Done -- To view, visit http://gerrit.cloudera.org:8080/9526 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I92d5c0e3b91af58576eb6cd408d922ec7c0fef6c Gerrit-Change-Number: 9526 Gerrit-PatchSet: 10 Gerrit-Owner: Hao Hao <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: David Ribeiro Alves <[email protected]> Gerrit-Reviewer: Hao Hao <[email protected]> Gerrit-Reviewer: Kudu Jenkins Gerrit-Comment-Date: Tue, 08 May 2018 01:11:36 +0000 Gerrit-HasComments: Yes
