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


##########
accord-core/src/main/java/accord/coordinate/CheckOn.java:
##########
@@ -206,8 +208,9 @@ public Void apply(SafeCommandStore safeStore)
                         break;
 
                 case PreAccepted:
-                    if (!safeStore.ranges().at(txnId.epoch()).isEmpty())
-                        Commands.preaccept(safeStore, txnId, partialTxn, 
maxRoute, progressKey);
+                    // only preaccept if we coordinate the transaction
+                    if (untilLocalEpoch <= txnId.epoch() || 
safeStore.ranges().coordinates(txnId).intersects(maxRoute))

Review Comment:
   we can Accept commands that aren't owned by us for either PreAccept OR 
Execute, and in these cases we may know of a transaction. Also, we may learn of 
a transaction that we adopt a dependency on (and need to see the execution of) 
but also never actually intersects with us for coordination or execution. I 
think this case might be able to happen simply for transactions we don't 
coordinate but do execute, though (maybe not). Plus no doubt other weird things 
I'm not thinking of.



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