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