From dea6cd00399655b6b34545d059005160902bea9e Mon Sep 17 00:00:00 2001
From: Quentin Dufour <quentin@deuxfleurs.fr>
Date: Wed, 27 Dec 2023 16:38:27 +0100
Subject: debug implementation

---
 src/storage/garage.rs | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/src/storage/garage.rs b/src/storage/garage.rs
index d08585f..00b0214 100644
--- a/src/storage/garage.rs
+++ b/src/storage/garage.rs
@@ -38,13 +38,18 @@ impl IBuilder for GarageBuilder {
             "aerogramme",
         );
 
-        let s3_config = aws_config::from_env()
+        let sdk_config = aws_config::from_env()
             .region(aws_config::Region::new(self.conf.region.clone()))
             .credentials_provider(s3_creds)
             .endpoint_url(self.conf.s3_endpoint.clone())
             .load()
             .await;
-        let s3_client = aws_sdk_s3::Client::new(&s3_config);
+
+        let s3_config = aws_sdk_s3::config::Builder::from(&sdk_config)
+            .force_path_style(true)
+            .build();
+
+        let s3_client = aws_sdk_s3::Client::from_conf(s3_config);
 
         let k2v_config = k2v_client::K2vClientConfig {
             endpoint: self.conf.k2v_endpoint.clone(),
@@ -152,6 +157,15 @@ impl IStore for GarageStore {
                     .read_item(&row_ref.uid.shard, &row_ref.uid.sort)
                     .await
                 {
+                    Err(k2v_client::Error::NotFound) => {
+                        tracing::debug!(
+                            "K2V item not found  shard={}, sort={}, bucket={}",
+                            row_ref.uid.shard,
+                            row_ref.uid.sort,
+                            self.bucket,
+                        );
+                        return Err(StorageError::NotFound);
+                    }
                     Err(e) => {
                         tracing::error!(
                             "K2V read item shard={}, sort={}, bucket={} failed: {}",
-- 
cgit v1.2.3