From edc657a3ad72c9e5c8dca30fb7a42ff8c79a4bb4 Mon Sep 17 00:00:00 2001 From: Cody Littley <56973212+cody-littley@users.noreply.github.com> Date: Wed, 22 Nov 2023 16:29:45 -0600 Subject: [PATCH] Catch UncheckedIOException during PCES file copy. (#10083) Signed-off-by: Cody Littley --- .../preconsensus/BestEffortPreconsensusEventFileCopy.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/platform-sdk/swirlds-platform-core/src/main/java/com/swirlds/platform/event/preconsensus/BestEffortPreconsensusEventFileCopy.java b/platform-sdk/swirlds-platform-core/src/main/java/com/swirlds/platform/event/preconsensus/BestEffortPreconsensusEventFileCopy.java index e9a4c835be11..96e7f558e73e 100644 --- a/platform-sdk/swirlds-platform-core/src/main/java/com/swirlds/platform/event/preconsensus/BestEffortPreconsensusEventFileCopy.java +++ b/platform-sdk/swirlds-platform-core/src/main/java/com/swirlds/platform/event/preconsensus/BestEffortPreconsensusEventFileCopy.java @@ -24,6 +24,7 @@ import com.swirlds.common.system.NodeId; import edu.umd.cs.findbugs.annotations.NonNull; import java.io.IOException; +import java.io.UncheckedIOException; import java.nio.file.Files; import java.nio.file.Path; import java.util.ArrayList; @@ -92,7 +93,9 @@ public static void copyPreconsensusEventStreamFilesRetryOnFailure( platformContext, selfId, temporaryDirectory, minimumGenerationNonAncient)); return; - } catch (final IOException e) { + } catch (final IOException | UncheckedIOException e) { + // Note: Files.walk() sometimes throws an UncheckedIOException (?!!), so we have to catch both. + if (triesRemaining > 0) { logger.warn(STATE_TO_DISK.getMarker(), "Unable to copy PCES files. Retrying."); } else {