dcapwell commented on code in PR #45:
URL: https://github.com/apache/cassandra-accord/pull/45#discussion_r1182924532


##########
.gitignore:
##########
@@ -3,3 +3,4 @@
 build/
 accord-core/build/
 accord-maelstrom/build/
+.rat-excludes.txt

Review Comment:
   I don't see this patch touching this?



##########
accord-core/src/main/java/accord/api/ConfigurationService.java:
##########
@@ -53,19 +55,67 @@
  */
 public interface ConfigurationService
 {
+    /**
+     *
+     */
+    class EpochReady
+    {
+        public static final AsyncResult<Void> DONE = 
AsyncResults.success(null);
+
+        public final long epoch;
+
+        /**
+         * The new epoch has been setup locally and the node is ready to 
process commands for it.
+         */
+        public final AsyncResult<Void> metadata;
+
+        /**
+         * The node has retrieved enough remote information to become a 
coordinator for the new epoch.
+         */
+        public final AsyncResult<Void> coordination;
+
+        /**
+         * The node has successfully replicated the underlying DataStore 
information for the new epoch, but may need
+         * to perform some additional coordination before it can execute the 
read portion of a transaction.
+         */
+        public final AsyncResult<Void> data;
+
+        /**
+         * The node has retrieved enough remote information to safely process 
reads, including replicating all
+         * necessary DataStore information, and any additional transactions 
necessary for consistency.
+         */
+        public final AsyncResult<Void> reads;

Review Comment:
   this api maybe problematic... if you are in a command store and the future 
is not completed, then your callback will run in the epoch ready publisher's 
thread... the existing topology logic I had to use `AsyncChain` and detect this 
for callers...



-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to