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

mpochatkin 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 4265e206593 IGNITE-26159 Disable compute messages until start (#6826)
4265e206593 is described below

commit 4265e2065937aa891bfdd9812757e9c85e26dda2
Author: Vadim Pakhnushev <[email protected]>
AuthorDate: Fri Oct 24 15:58:23 2025 +0300

    IGNITE-26159 Disable compute messages until start (#6826)
---
 .../apache/ignite/internal/compute/ComputeComponentImpl.java   | 10 +++++++---
 .../ignite/internal/compute/ComputeComponentImplTest.java      |  3 ++-
 .../main/java/org/apache/ignite/internal/app/IgniteImpl.java   |  4 ++++
 3 files changed, 13 insertions(+), 4 deletions(-)

diff --git 
a/modules/compute/src/main/java/org/apache/ignite/internal/compute/ComputeComponentImpl.java
 
b/modules/compute/src/main/java/org/apache/ignite/internal/compute/ComputeComponentImpl.java
index d95b79f18b2..fae7b4871d8 100644
--- 
a/modules/compute/src/main/java/org/apache/ignite/internal/compute/ComputeComponentImpl.java
+++ 
b/modules/compute/src/main/java/org/apache/ignite/internal/compute/ComputeComponentImpl.java
@@ -303,18 +303,15 @@ public class ComputeComponentImpl implements 
ComputeComponent, SystemViewProvide
         });
     }
 
-    /** {@inheritDoc} */
     @Override
     public CompletableFuture<Void> startAsync(ComponentContext 
componentContext) {
         executor.start();
-        messaging.start(executionContext -> executeLocally(executionContext, 
null));
         executionManager.start();
         computeViewProvider.init(executionManager);
 
         return nullCompletedFuture();
     }
 
-    /** {@inheritDoc} */
     @Override
     public CompletableFuture<Void> stopAsync(ComponentContext 
componentContext) {
         if (!stopGuard.compareAndSet(false, true)) {
@@ -333,6 +330,13 @@ public class ComputeComponentImpl implements 
ComputeComponent, SystemViewProvide
         return nullCompletedFuture();
     }
 
+    /**
+     * Enables compute messages handling.
+     */
+    public void enable() {
+        messaging.start(executionContext -> executeLocally(executionContext, 
null));
+    }
+
     private JobExecutionInternal<ComputeJobDataHolder> execJob(JobContext 
context, ExecutionContext executionContext) {
         try {
             return executor.executeJob(
diff --git 
a/modules/compute/src/test/java/org/apache/ignite/internal/compute/ComputeComponentImplTest.java
 
b/modules/compute/src/test/java/org/apache/ignite/internal/compute/ComputeComponentImplTest.java
index 80cd8e1e09f..cca1eee1c61 100644
--- 
a/modules/compute/src/test/java/org/apache/ignite/internal/compute/ComputeComponentImplTest.java
+++ 
b/modules/compute/src/test/java/org/apache/ignite/internal/compute/ComputeComponentImplTest.java
@@ -147,7 +147,7 @@ class ComputeComponentImplTest extends 
BaseIgniteAbstractTest {
     @Mock
     private JobContextManager jobContextManager;
 
-    private ComputeComponent computeComponent;
+    private ComputeComponentImpl computeComponent;
 
     private final InternalClusterNode testNode = new 
ClusterNodeImpl(randomUUID(), "test", new NetworkAddress("test-host", 1));
     private final InternalClusterNode remoteNode = new ClusterNodeImpl(
@@ -189,6 +189,7 @@ class ComputeComponentImplTest extends 
BaseIgniteAbstractTest {
         );
 
         assertThat(computeComponent.startAsync(new ComponentContext()), 
willCompleteSuccessfully());
+        computeComponent.enable();
         assertThat(computeMessageHandlerRef.get(), is(notNullValue()));
     }
 
diff --git 
a/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java 
b/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java
index f318532845d..3b71d8f799f 100644
--- 
a/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java
+++ 
b/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java
@@ -1649,6 +1649,10 @@ public class IgniteImpl implements Ignite {
 
                         // Enable REST component on start complete.
                         restComponent.enable();
+
+                        // Enable compute messages handling
+                        computeComponent.enable();
+
                         // Transfer the node to the STARTED state.
                         lifecycleManager.onStartComplete();
                     } catch (NodeStoppingException e) {

Reply via email to