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

ibessonov 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 5f492e901c IGNITE-21677 Fix NPE in ActiveActorTest (#3359)
5f492e901c is described below

commit 5f492e901c19287baae4ab3b3ff1f3ccb35fa2f9
Author: Roman Puchkovskiy <[email protected]>
AuthorDate: Wed Mar 6 11:01:18 2024 +0400

    IGNITE-21677 Fix NPE in ActiveActorTest (#3359)
---
 .../src/main/java/org/apache/ignite/configuration/RootKey.java        | 2 ++
 .../org/apache/ignite/internal/placementdriver/ActiveActorTest.java   | 2 ++
 .../apache/ignite/internal/placementdriver/AssignmentsTracker.java    | 4 ++++
 3 files changed, 8 insertions(+)

diff --git 
a/modules/configuration-api/src/main/java/org/apache/ignite/configuration/RootKey.java
 
b/modules/configuration-api/src/main/java/org/apache/ignite/configuration/RootKey.java
index 2d009a5976..c079c6b02c 100644
--- 
a/modules/configuration-api/src/main/java/org/apache/ignite/configuration/RootKey.java
+++ 
b/modules/configuration-api/src/main/java/org/apache/ignite/configuration/RootKey.java
@@ -56,6 +56,8 @@ public class RootKey<T extends ConfigurationTree<VIEWT, ?>, 
VIEWT> {
         this.rootName = rootAnnotation.rootName();
         this.storageType = rootAnnotation.type();
 
+        assert rootName != null;
+
         ConfigurationExtension extension = 
schemaClass.getAnnotation(ConfigurationExtension.class);
         internal = extension != null && extension.internal();
     }
diff --git 
a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/ActiveActorTest.java
 
b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/ActiveActorTest.java
index 0522f21fd8..8b8eb6751e 100644
--- 
a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/ActiveActorTest.java
+++ 
b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/ActiveActorTest.java
@@ -45,6 +45,7 @@ import org.apache.ignite.internal.raft.Peer;
 import org.apache.ignite.internal.raft.PeersAndLearners;
 import 
org.apache.ignite.internal.raft.client.AbstractTopologyAwareGroupServiceTest;
 import 
org.apache.ignite.internal.raft.client.TopologyAwareRaftGroupServiceFactory;
+import org.apache.ignite.internal.util.Cursor;
 import org.apache.ignite.raft.jraft.rpc.impl.RaftGroupEventsClientListener;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -70,6 +71,7 @@ public class ActiveActorTest extends 
AbstractTopologyAwareGroupServiceTest {
         when(msm.recoveryFinishedFuture()).thenReturn(completedFuture(0L));
         when(msm.invoke(any(), any(Operation.class), 
any(Operation.class))).thenReturn(trueCompletedFuture());
         when(msm.getLocally(any(), anyLong())).then(invocation -> 
emptyMetastoreEntry());
+        when(msm.getLocally(any(), any(), anyLong())).then(invocation -> 
Cursor.fromIterable(List.of()));
     }
 
     @AfterEach
diff --git 
a/modules/placement-driver/src/main/java/org/apache/ignite/internal/placementdriver/AssignmentsTracker.java
 
b/modules/placement-driver/src/main/java/org/apache/ignite/internal/placementdriver/AssignmentsTracker.java
index 7c9192a719..9783715fab 100644
--- 
a/modules/placement-driver/src/main/java/org/apache/ignite/internal/placementdriver/AssignmentsTracker.java
+++ 
b/modules/placement-driver/src/main/java/org/apache/ignite/internal/placementdriver/AssignmentsTracker.java
@@ -102,6 +102,10 @@ public class AssignmentsTracker {
                     groupAssignments.put(grpId, assignments);
                 }
             }
+        }).whenComplete((res, ex) -> {
+            if (ex != null) {
+                LOG.error("Cannot do recovery", ex);
+            }
         });
 
         LOG.info("Assignment cache initialized for placement driver 
[groupAssignments={}]", groupAssignments);

Reply via email to