From 6fa725b755f0a48c3f63a42d53319c5aef4c6796 Mon Sep 17 00:00:00 2001 From: zzz Date: Thu, 24 Apr 2025 13:15:04 -0400 Subject: [PATCH] blockfile: Catch unchecked exceptions thrown from value deserializers Previously, we detected null results but did not catch exceptions thrown by the value deserializers, caused by database corruption, deserialization bugs, or input validation or serialization errors. This prevented the database repair code from running, rendering the remainder of the skip span inaccessible, and no entries displayed in susidns. With this change, corrupted entries that throw unchecked exceptions are removed from the skip span. --- .../metanotion/io/block/index/BSkipSpan.java | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/apps/addressbook/java/src/net/metanotion/io/block/index/BSkipSpan.java b/apps/addressbook/java/src/net/metanotion/io/block/index/BSkipSpan.java index 1fc36f634f..4ffb18c6cc 100644 --- a/apps/addressbook/java/src/net/metanotion/io/block/index/BSkipSpan.java +++ b/apps/addressbook/java/src/net/metanotion/io/block/index/BSkipSpan.java @@ -330,8 +330,21 @@ public class BSkipSpan, V> extends SkipSpan