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

rpuch 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 5f4412b0872 IGNITE-25278 Ignore timeouts from metastore in stable key 
switch (#5738)
5f4412b0872 is described below

commit 5f4412b0872fa23b494d9d61cf16a8e9e4500fa4
Author: Roman Puchkovskiy <roman.puchkovs...@gmail.com>
AuthorDate: Fri May 2 17:47:40 2025 +0400

    IGNITE-25278 Ignore timeouts from metastore in stable key switch (#5738)
---
 .../rebalance/RebalanceRaftGroupEventsListener.java            | 10 ++++++++--
 .../rebalance/ZoneRebalanceRaftGroupEventsListener.java        | 10 ++++++++--
 2 files changed, 16 insertions(+), 4 deletions(-)

diff --git 
a/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/rebalance/RebalanceRaftGroupEventsListener.java
 
b/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/rebalance/RebalanceRaftGroupEventsListener.java
index ad31e580b8c..ca70ced520f 100644
--- 
a/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/rebalance/RebalanceRaftGroupEventsListener.java
+++ 
b/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/rebalance/RebalanceRaftGroupEventsListener.java
@@ -41,6 +41,7 @@ import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ScheduledExecutorService;
 import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.function.BiFunction;
 import java.util.stream.Collectors;
@@ -504,8 +505,13 @@ public class RebalanceRaftGroupEventsListener implements 
RaftGroupEventsListener
         } catch (InterruptedException | ExecutionException e) {
             // TODO: IGNITE-14693
             if (!hasCause(e, NodeStoppingException.class)) {
-                String errorMessage = String.format("Unable to commit 
partition configuration to metastore: %s", tablePartitionId);
-                failureProcessor.process(new FailureContext(e, errorMessage));
+                if (hasCause(e, TimeoutException.class)) {
+                    // TODO: 
https://issues.apache.org/jira/browse/IGNITE-25276 - handle this timeout 
properly.
+                    LOG.error("Unable to commit partition configuration to 
metastore: {}", e, tablePartitionId);
+                } else {
+                    String errorMessage = String.format("Unable to commit 
partition configuration to metastore: %s", tablePartitionId);
+                    failureProcessor.process(new FailureContext(e, 
errorMessage));
+                }
             }
         }
     }
diff --git 
a/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/rebalance/ZoneRebalanceRaftGroupEventsListener.java
 
b/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/rebalance/ZoneRebalanceRaftGroupEventsListener.java
index 69d9ea59b0f..2e30d67afb3 100644
--- 
a/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/rebalance/ZoneRebalanceRaftGroupEventsListener.java
+++ 
b/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/rebalance/ZoneRebalanceRaftGroupEventsListener.java
@@ -46,6 +46,7 @@ import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ScheduledExecutorService;
 import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.function.BiFunction;
 import java.util.stream.Collectors;
@@ -541,8 +542,13 @@ public class ZoneRebalanceRaftGroupEventsListener 
implements RaftGroupEventsList
         } catch (InterruptedException | ExecutionException e) {
             // TODO: IGNITE-14693
             if (!hasCause(e, NodeStoppingException.class)) {
-                String errorMessage = String.format("Unable to commit 
partition configuration to metastore: %s", zonePartitionId);
-                failureProcessor.process(new FailureContext(e, errorMessage));
+                if (hasCause(e, TimeoutException.class)) {
+                    // TODO: 
https://issues.apache.org/jira/browse/IGNITE-25276 - handle this timeout 
properly.
+                    LOG.error("Unable to commit partition configuration to 
metastore: {}", e, zonePartitionId);
+                } else {
+                    String errorMessage = String.format("Unable to commit 
partition configuration to metastore: %s", zonePartitionId);
+                    failureProcessor.process(new FailureContext(e, 
errorMessage));
+                }
             }
         }
     }

Reply via email to