Pavel Pereslegin created IGNITE-25167: -----------------------------------------
Summary: Catalog compaction should ignore NodeStoppingException. Key: IGNITE-25167 URL: https://issues.apache.org/jira/browse/IGNITE-25167 Project: Ignite Issue Type: Improvement Components: sql Reporter: Pavel Pereslegin Currently if compaction iteration fails due to local node shutdown CatalogCompactionRunner logs useless warning. {noformat} [2025-04-16T15:50:51,269][WARN ][%ibiont_n_3344%catalog-compaction-0][CatalogCompactionRunner] Catalog compaction iteration has failed [lwm=HybridTimestamp [physical=2025-04-16 12:40:51:260 +0000, logical=0, composite=114347688018575360]]. java.util.concurrent.CompletionException: java.util.concurrent.CompletionException: Failed to propagate minimum required tx time to replicas. at org.apache.ignite.internal.catalog.compaction.CatalogCompactionRunner.lambda$startCompaction$4(CatalogCompactionRunner.java:336) ~[main/:?] at java.base/java.util.concurrent.CompletableFuture.uniExceptionally(CompletableFuture.java:986) ~[?:?] at java.base/java.util.concurrent.CompletableFuture.uniExceptionallyStage(CompletableFuture.java:1004) ~[?:?] at java.base/java.util.concurrent.CompletableFuture.exceptionally(CompletableFuture.java:2313) ~[?:?] at org.apache.ignite.internal.catalog.compaction.CatalogCompactionRunner.lambda$startCompaction$5(CatalogCompactionRunner.java:331) ~[main/:?] at java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1072) ~[?:?] at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506) [?:?] at java.base/java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:610) [?:?] at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:649) [?:?] at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:478) [?:?] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.base/java.lang.Thread.run(Thread.java:829) [?:?] Caused by: java.util.concurrent.CompletionException: Failed to propagate minimum required tx time to replicas. at org.apache.ignite.internal.catalog.compaction.CatalogCompactionRunner.lambda$startCompaction$2(CatalogCompactionRunner.java:325) ~[main/:?] at java.base/java.util.concurrent.CompletableFuture.uniExceptionally(CompletableFuture.java:986) ~[?:?] at java.base/java.util.concurrent.CompletableFuture.uniExceptionallyStage(CompletableFuture.java:1004) ~[?:?] at java.base/java.util.concurrent.CompletableFuture.exceptionally(CompletableFuture.java:2313) ~[?:?] at org.apache.ignite.internal.catalog.compaction.CatalogCompactionRunner.lambda$startCompaction$5(CatalogCompactionRunner.java:324) ~[main/:?] ... 8 more Caused by: java.util.concurrent.CompletionException: org.apache.ignite.internal.lang.NodeStoppingException: IGN-CMN-1 TraceId:e6deb954-37f6-4b6a-a5f2-b38a13096fd7 Operation has been cancelled (node is stopping). at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331) ~[?:?] at java.base/java.util.concurrent.CompletableFuture.andTree(CompletableFuture.java:1452) ~[?:?] at java.base/java.util.concurrent.CompletableFuture.allOf(CompletableFuture.java:2343) ~[?:?] at org.apache.ignite.internal.util.CompletableFutures.allOf(CompletableFutures.java:112) ~[main/:?] at org.apache.ignite.internal.catalog.compaction.CatalogCompactionRunner.propagateTimeToNodes(CatalogCompactionRunner.java:415) ~[main/:?] at org.apache.ignite.internal.catalog.compaction.CatalogCompactionRunner.lambda$startCompaction$5(CatalogCompactionRunner.java:323) ~[main/:?] ... 8 more Caused by: org.apache.ignite.internal.lang.NodeStoppingException: Operation has been cancelled (node is stopping). at org.apache.ignite.internal.network.DefaultMessagingService.send0(DefaultMessagingService.java:255) ~[main/:?] at org.apache.ignite.internal.network.DefaultMessagingService.send(DefaultMessagingService.java:192) ~[main/:?] at org.apache.ignite.internal.network.MessagingService.send(MessagingService.java:53) ~[main/:?] at org.apache.ignite.internal.catalog.compaction.CatalogCompactionRunner.propagateTimeToNodes(CatalogCompactionRunner.java:412) ~[main/:?] at org.apache.ignite.internal.catalog.compaction.CatalogCompactionRunner.lambda$startCompaction$5(CatalogCompactionRunner.java:323) ~[main/:?] ... 8 more {noformat} It looks like it's better to ignore the NodeStoppingException and not log a warning in such cases. -- This message was sent by Atlassian Jira (v8.20.10#820010)