[ https://issues.apache.org/jira/browse/IGNITE-25384?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Roman Puchkovskiy reassigned IGNITE-25384: ------------------------------------------ Assignee: Roman Puchkovskiy > StorageClosedException in Raft snapshot streaming > ------------------------------------------------- > > Key: IGNITE-25384 > URL: https://issues.apache.org/jira/browse/IGNITE-25384 > Project: Ignite > Issue Type: Bug > Reporter: Roman Puchkovskiy > Assignee: Roman Puchkovskiy > Priority: Major > Labels: ignite-3 > Attachments: _Integration_Tests_Run_All_Other_36172.log.zip > > > There seems to be a race between sending a partition Raft snapshot (in > OutgoingSnapshot) and node stop: > > [2025-05-15T08:56:37,617][ERROR][%izdrt_tdr_20001%outgoing-snapshots-3][FailureManager] > Critical system error detected. Will be handled accordingly to configured > handler [hnd=NoOpFailureHandler [super=AbstractFailureHandler > [ignoredFailureTypes=UnmodifiableSet [SYSTEM_WORKER_BLOCKED, > SYSTEM_CRITICAL_OPERATION_TIMEOUT]]], failureCtx=CRITICAL_ERROR] > org.apache.ignite.internal.failure.StackTraceCapturingException: Something > went wrong while handling a request > at > org.apache.ignite.internal.failure.FailureManager.process(FailureManager.java:161) > ~[ignite-failure-handler-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.failure.FailureManager.process(FailureManager.java:138) > ~[ignite-failure-handler-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.partition.replicator.raft.snapshot.outgoing.OutgoingSnapshotsManager.respond(OutgoingSnapshotsManager.java:206) > ~[ignite-partition-replicator-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.partition.replicator.raft.snapshot.outgoing.OutgoingSnapshotsManager.lambda$handleMessage$2(OutgoingSnapshotsManager.java:185) > ~[ignite-partition-replicator-3.1.0-SNAPSHOT.jar:?] > at > java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863) > [?:?] > at > java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841) > [?:?] > at > java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482) > [?:?] > at > java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) > [?:?] > at > java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) > [?:?] > at java.base/java.lang.Thread.run(Thread.java:833) [?:?] > Caused by: java.util.concurrent.CompletionException: > org.apache.ignite.internal.storage.StorageClosedException: IGN-CMN-65535 > TraceId:a2515b4b-c1a3-47c5-a48c-4bbd2ebc3bd0 Storage is already closed: > [tableId=6, partitionId=0] > at > java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315) > ~[?:?] > at > java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320) > ~[?:?] > at > java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1770) > ~[?:?] > ... 3 more > Caused by: org.apache.ignite.internal.storage.StorageClosedException: Storage > is already closed: [tableId=6, partitionId=0] > at > org.apache.ignite.internal.storage.util.StorageUtils.throwExceptionDependingOnStorageState(StorageUtils.java:141) > ~[ignite-storage-api-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.storage.util.StorageUtils.throwExceptionIfStorageNotInRunnableState(StorageUtils.java:63) > ~[ignite-storage-api-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.throwExceptionIfStorageNotInRunnableState(AbstractPageMemoryMvPartitionStorage.java:801) > ~[ignite-storage-page-memory-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.storage.pagememory.mv.ScanVersionsCursor.lambda$hasNext$0(ScanVersionsCursor.java:67) > ~[ignite-storage-page-memory-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.busy(AbstractPageMemoryMvPartitionStorage.java:656) > ~[ignite-storage-page-memory-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.storage.pagememory.mv.ScanVersionsCursor.hasNext(ScanVersionsCursor.java:66) > ~[ignite-storage-page-memory-3.1.0-SNAPSHOT.jar:?] > at java.base/java.util.Iterator.forEachRemaining(Iterator.java:132) ~[?:?] > at > java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1845) > ~[?:?] > at > java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) > ~[?:?] > at > java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) > ~[?:?] > at > java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) > ~[?:?] > at > java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) > ~[?:?] > at > java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) > ~[?:?] > at > org.apache.ignite.internal.table.distributed.raft.snapshot.PartitionMvStorageAccessImpl.lambda$getAllRowVersions$0(PartitionMvStorageAccessImpl.java:126) > ~[ignite-table-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.storage.pagememory.mv.PersistentPageMemoryMvPartitionStorage.lambda$runConsistently$0(PersistentPageMemoryMvPartitionStorage.java:180) > ~[ignite-storage-page-memory-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.busy(AbstractPageMemoryMvPartitionStorage.java:656) > ~[ignite-storage-page-memory-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.storage.pagememory.mv.PersistentPageMemoryMvPartitionStorage.runConsistently(PersistentPageMemoryMvPartitionStorage.java:170) > ~[ignite-storage-page-memory-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.table.distributed.raft.snapshot.PartitionMvStorageAccessImpl.getAllRowVersions(PartitionMvStorageAccessImpl.java:122) > ~[ignite-table-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.partition.replicator.raft.snapshot.outgoing.OutgoingSnapshot.rowEntry(OutgoingSnapshot.java:404) > ~[ignite-partition-replicator-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.partition.replicator.raft.snapshot.outgoing.OutgoingSnapshot.tryProcessRowFromPartition(OutgoingSnapshot.java:385) > ~[ignite-partition-replicator-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.partition.replicator.raft.snapshot.outgoing.OutgoingSnapshot.handleSnapshotMvDataRequest(OutgoingSnapshot.java:314) > ~[ignite-partition-replicator-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.partition.replicator.raft.snapshot.outgoing.OutgoingSnapshotsManager.handleSnapshotRequestMessage(OutgoingSnapshotsManager.java:194) > ~[ignite-partition-replicator-3.1.0-SNAPSHOT.jar:?] > at > org.apache.ignite.internal.partition.replicator.raft.snapshot.outgoing.OutgoingSnapshotsManager.lambda$handleMessage$1(OutgoingSnapshotsManager.java:184) > ~[ignite-partition-replicator-3.1.0-SNAPSHOT.jar:?] > at > java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) > ~[?:?] > ... 3 more -- This message was sent by Atlassian Jira (v8.20.10#820010)