rpuch commented on code in PR #2820:
URL: https://github.com/apache/ignite-3/pull/2820#discussion_r1390932001


##########
modules/table/src/main/java/org/apache/ignite/internal/table/distributed/replicator/PartitionReplicaListener.java:
##########
@@ -2420,34 +2490,40 @@ private CompletableFuture<CompletableFuture<?>> 
applyUpdateCommand(
             );
 
             if (!cmd.full()) {
-                CompletableFuture<UUID> fut = 
applyCmdWithExceptionHandling(cmd).thenApply(res -> {
+                // TODO: https://issues.apache.org/jira/browse/IGNITE-20124 
Temporary code below
+                synchronized (safeTime) {
+                    storageUpdateHandler.handleUpdate(

Review Comment:
   Replication is async anyway (it returns a future which we don't wait). For 
!1PC, before your fix it was (schematically):
   
   ```
   var future = replicateCommand(cmd);
   applyLocally(cmd);
   return future;
   ```
   
   Now it is
   
   ```
   applyLocally(cmd);
   var future = replicateCommand(cmd);
   return future;
   ```
   It seems that we did not wait for replication in the previous version of the 
code as well. But the order has changed. Why? :)



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

Reply via email to