You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by pt...@apache.org on 2025/02/24 11:01:27 UTC

(ignite-3) 05/09: wip

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

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

commit 800d5753b313f1b30b36bbd4525d9db3d87956e7
Author: Pavel Tupitsyn <pt...@apache.org>
AuthorDate: Fri Feb 21 12:29:24 2025 +0200

    wip
---
 .../apache/ignite/client/handler/ClientPrimaryReplicaTracker.java    | 5 ++++-
 .../table/ClientTablePartitionPrimaryReplicasGetRequest.java         | 3 +--
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientPrimaryReplicaTracker.java b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientPrimaryReplicaTracker.java
index d0c69b0a563..321fc91e30d 100644
--- a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientPrimaryReplicaTracker.java
+++ b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/ClientPrimaryReplicaTracker.java
@@ -264,7 +264,10 @@ public class ClientPrimaryReplicaTracker {
             throw tableIdNotFoundException(tableId);
         }
 
-        return zone.partitions();
+        int partitions = zone.partitions();
+        assert partitions > 0 : "Unexpected zone partitions: " + partitions + ", tableId=" + tableId + ", zoneId=" + table.zoneId();
+
+        return partitions;
     }
 
     long maxStartTime() {
diff --git a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/table/ClientTablePartitionPrimaryReplicasGetRequest.java b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/table/ClientTablePartitionPrimaryReplicasGetRequest.java
index 3dc8333071c..ccd40de360b 100644
--- a/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/table/ClientTablePartitionPrimaryReplicasGetRequest.java
+++ b/modules/client-handler/src/main/java/org/apache/ignite/client/handler/requests/table/ClientTablePartitionPrimaryReplicasGetRequest.java
@@ -49,9 +49,8 @@ public class ClientTablePartitionPrimaryReplicasGetRequest {
         return tracker.primaryReplicasAsync(tableId, timestamp).thenAccept(primaryReplicas -> {
             assert primaryReplicas != null : "Primary replicas == null";
 
-            // TODO: Can we get 0 count here?
             List<String> nodeNames = primaryReplicas.nodeNames();
-            if (nodeNames == null) {
+            if (nodeNames == null || nodeNames.isEmpty()) {
                 // Special case: assignment is not yet available, but we return the partition count.
                 out.packInt(primaryReplicas.partitions());
                 out.packBoolean(false);