denis-chudov commented on code in PR #4425:
URL: https://github.com/apache/ignite-3/pull/4425#discussion_r1767061013


##########
modules/replicator/src/main/java/org/apache/ignite/internal/replicator/ReplicaManager.java:
##########
@@ -609,17 +608,14 @@ private CompletableFuture<HybridTimestamp> 
stopLeaseProlongation(
                         .thenCompose(unused -> {
                             NetworkMessage response = futs.stream()
                                     .map(CompletableFuture::join)
-                                    .filter(Objects::nonNull)
+                                    .filter(resp -> resp instanceof 
StopLeaseProlongationMessageResponse
+                                            && 
((StopLeaseProlongationMessageResponse) resp).deniedLeaseExpirationTime() != 
null)

Review Comment:
   We send StopLeaseProlongationMessage on every node of placement driver 
group, so there should be all nulls or just one non-null, possible outcomes:
   - it wasn't successfully handled anywhere (lease updater thread made 
successful ms.invoke, and SLPM handlers failed to do ms.invoke)
   - it was successfully handled on one node of PD group, in this case we get 
one non-null
   - it was successfully handled on some node, but message handling was delayed 
on some other node and it already got lease update from MS where this lease was 
denied, in this case it also returns null (slightly other case than failed 
ms.invoke but same outcome)



-- 
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: notifications-unsubscr...@ignite.apache.org

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

Reply via email to