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


##########
accord-core/src/main/java/accord/coordinate/CoordinatePreAccept.java:
##########
@@ -142,7 +142,7 @@ void onNewEpochTopologyMismatch(TopologyMismatch mismatch)
         proposeInvalidate(node, node.uniqueTimestamp(Ballot::fromValues), 
txnId, route.homeKey(), (outcome, failure) -> {
             if (failure != null)
                 mismatch.addSuppressed(failure);
-            setFailure(mismatch);
+            callback.accept(null, mismatch);

Review Comment:
   > but the CoordinatePreAccept phase is logically done by this point and 
ownership is passed to the notAccept / acceptInvalidate phase.
   
   "logically" or is `isDone` already set to `true`?  Based off the current 
logic when `isDone` is set to `true` we also notify the callback.  So is this 
block of code trying to double notify the callback?
   
   > "It is a callback ... that occurs after isDone is already set."
   
   This implies to me we are trying to double notify the callback; is this 
correct?  Can we document this behavior?  Can we also keep the `eventListener` 
logic?



-- 
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: pr-unsubscr...@cassandra.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: pr-unsubscr...@cassandra.apache.org
For additional commands, e-mail: pr-h...@cassandra.apache.org

Reply via email to