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 41450ac9408 IGNITE-27919 Do not log failure to switch WI due to node 
stop (#7634)
41450ac9408 is described below

commit 41450ac9408855963f3b0a44bcd306c188d65a58
Author: Roman Puchkovskiy <[email protected]>
AuthorDate: Thu Feb 19 20:20:57 2026 +0400

    IGNITE-27919 Do not log failure to switch WI due to node stop (#7634)
---
 .../ignite/internal/tx/impl/TransactionExpirationRegistry.java    | 4 +++-
 .../ignite/internal/tx/impl/WriteIntentSwitchProcessor.java       | 8 ++++++--
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git 
a/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/TransactionExpirationRegistry.java
 
b/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/TransactionExpirationRegistry.java
index 7f0f47aab0e..ab33cfaac2a 100644
--- 
a/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/TransactionExpirationRegistry.java
+++ 
b/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/TransactionExpirationRegistry.java
@@ -18,6 +18,7 @@
 package org.apache.ignite.internal.tx.impl;
 
 import static org.apache.ignite.internal.tx.TransactionLogUtils.formatTxInfo;
+import static org.apache.ignite.internal.util.ExceptionUtils.hasCause;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -27,6 +28,7 @@ import java.util.Set;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentSkipListMap;
 import org.apache.ignite.internal.hlc.HybridTimestamp;
+import org.apache.ignite.internal.lang.NodeStoppingException;
 import org.apache.ignite.internal.logger.IgniteLogger;
 import org.apache.ignite.internal.logger.Loggers;
 import org.apache.ignite.internal.tx.InternalTransaction;
@@ -125,7 +127,7 @@ class TransactionExpirationRegistry {
 
     private void abortTransaction(InternalTransaction tx) {
         tx.rollbackTimeoutExceededAsync().whenComplete((res, ex) -> {
-            if (ex != null) {
+            if (ex != null && !hasCause(ex, NodeStoppingException.class)) {
                 LOG.error("Transaction has aborted due to timeout {}.", ex,
                         formatTxInfo(tx.id(), volatileTxStateMetaStorage));
             }
diff --git 
a/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/WriteIntentSwitchProcessor.java
 
b/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/WriteIntentSwitchProcessor.java
index 667f3912ca2..d89d88fc469 100644
--- 
a/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/WriteIntentSwitchProcessor.java
+++ 
b/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/WriteIntentSwitchProcessor.java
@@ -18,11 +18,13 @@
 package org.apache.ignite.internal.tx.impl;
 
 import static org.apache.ignite.internal.tx.TransactionLogUtils.formatTxInfo;
+import static org.apache.ignite.internal.util.ExceptionUtils.hasCause;
 
 import java.util.UUID;
 import java.util.concurrent.CompletableFuture;
 import java.util.function.Function;
 import org.apache.ignite.internal.hlc.HybridTimestamp;
+import org.apache.ignite.internal.lang.NodeStoppingException;
 import org.apache.ignite.internal.logger.IgniteLogger;
 import org.apache.ignite.internal.logger.Loggers;
 import org.apache.ignite.internal.network.TopologyService;
@@ -108,8 +110,10 @@ public class WriteIntentSwitchProcessor {
                             return switchWriteIntentsWithRetry(commit, 
commitTimestamp, txId, partition);
                         }
 
-                        LOG.info("Failed to switch write intents for txn {}.", 
ex,
-                                formatTxInfo(txId, 
volatileTxStateMetaStorage));
+                        if (!hasCause(ex, NodeStoppingException.class)) {
+                            LOG.info("Failed to switch write intents for txn 
{}.", ex,
+                                    formatTxInfo(txId, 
volatileTxStateMetaStorage));
+                        }
 
                         return 
CompletableFuture.<WriteIntentSwitchReplicatedInfo>failedFuture(ex);
                     }

Reply via email to