This is an automated email from the ASF dual-hosted git repository.

apkhmv pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
     new 92127e5d87 IGNITE-22995 Fix compute broadcast hanging test (#4237)
92127e5d87 is described below

commit 92127e5d87d3ca009ecc17da59a2482720d8fada
Author: Aleksandr Pakhomov <[email protected]>
AuthorDate: Fri Aug 16 15:22:24 2024 +0300

    IGNITE-22995 Fix compute broadcast hanging test (#4237)
    
    * IGNITE-22995 Fix compute broadcast hanging test
    
    The reason why this test can hang is that when we execute broadcast
    job in the embedded mode on the same node that has been used as an
    entry point to the job call (for example, call job from node 1 and
    on node 1,2) -- then we failed to detect local node because of the
    wrong usage of ClientNode.equals method.
---
 .../java/org/apache/ignite/internal/compute/ComputeJobFailover.java     | 2 +-
 .../main/java/org/apache/ignite/internal/compute/IgniteComputeImpl.java | 2 +-
 .../org/apache/ignite/internal/compute/messaging/ComputeMessaging.java  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/modules/compute/src/main/java/org/apache/ignite/internal/compute/ComputeJobFailover.java
 
b/modules/compute/src/main/java/org/apache/ignite/internal/compute/ComputeJobFailover.java
index 7246401cac..502fd7a646 100644
--- 
a/modules/compute/src/main/java/org/apache/ignite/internal/compute/ComputeJobFailover.java
+++ 
b/modules/compute/src/main/java/org/apache/ignite/internal/compute/ComputeJobFailover.java
@@ -136,7 +136,7 @@ class ComputeJobFailover<R> {
     }
 
     private JobExecution<R> launchJobOn(ClusterNode runningWorkerNode) {
-        if (runningWorkerNode.equals(topologyService.localMember())) {
+        if (runningWorkerNode.id().equals(topologyService.localMember().id())) 
{
             return computeComponent.executeLocally(
                     jobContext.executionOptions(), jobContext.units(), 
jobContext.jobClassName(), jobContext.arg()
             );
diff --git 
a/modules/compute/src/main/java/org/apache/ignite/internal/compute/IgniteComputeImpl.java
 
b/modules/compute/src/main/java/org/apache/ignite/internal/compute/IgniteComputeImpl.java
index b552337d21..5ca872ebc7 100644
--- 
a/modules/compute/src/main/java/org/apache/ignite/internal/compute/IgniteComputeImpl.java
+++ 
b/modules/compute/src/main/java/org/apache/ignite/internal/compute/IgniteComputeImpl.java
@@ -276,7 +276,7 @@ public class IgniteComputeImpl implements 
IgniteComputeInternal, StreamerReceive
     }
 
     private boolean isLocal(ClusterNode targetNode) {
-        return targetNode.equals(topologyService.localMember());
+        return targetNode.id().equals(topologyService.localMember().id());
     }
 
     @Override
diff --git 
a/modules/compute/src/main/java/org/apache/ignite/internal/compute/messaging/ComputeMessaging.java
 
b/modules/compute/src/main/java/org/apache/ignite/internal/compute/messaging/ComputeMessaging.java
index 6093f966da..0c7468d698 100644
--- 
a/modules/compute/src/main/java/org/apache/ignite/internal/compute/messaging/ComputeMessaging.java
+++ 
b/modules/compute/src/main/java/org/apache/ignite/internal/compute/messaging/ComputeMessaging.java
@@ -457,7 +457,7 @@ public class ComputeMessaging {
         ClusterNode localMember = topologyService.localMember();
         CompletableFuture<?>[] futures = topologyService.allMembers()
                 .stream()
-                .filter(node -> !node.equals(localMember))
+                .filter(node -> !node.id().equals(localMember.id()))
                 .map(node -> request.apply(node)
                         .thenAccept(response -> {
                             if (response != null) {

Reply via email to