From 02d5e67698d81dad9f004a253a4d738fe705ea32 Mon Sep 17 00:00:00 2001 From: Alex Auvolat Date: Thu, 16 Apr 2026 16:33:28 +0000 Subject: [PATCH] db: avoid iterating bounded from empty slice (fix #1401) (#1408) Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1408 Co-authored-by: Alex Auvolat Co-committed-by: Alex Auvolat --- src/db/lib.rs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/db/lib.rs b/src/db/lib.rs index 3e83e0f0..bb04d6cc 100644 --- a/src/db/lib.rs +++ b/src/db/lib.rs @@ -222,9 +222,13 @@ impl Tree { } #[inline] pub fn get_gt>(&self, from: T) -> Result> { - self.range((Bound::Excluded(from), Bound::Unbounded))? - .next() - .transpose() + if from.as_ref().is_empty() { + self.iter()?.next().transpose() + } else { + self.range((Bound::Excluded(from), Bound::Unbounded))? + .next() + .transpose() + } } /// Returns the old value if there was one