From 799def70dcc1152a04c9f3a5f1b09a1fb4ab18e1 Mon Sep 17 00:00:00 2001 From: nexy7574 Date: Thu, 9 Oct 2025 02:14:19 +0100 Subject: [PATCH] feat: Produce even more informative errors when saving media fails --- src/service/media/mod.rs | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/service/media/mod.rs b/src/service/media/mod.rs index d053ba54..b52fd320 100644 --- a/src/service/media/mod.rs +++ b/src/service/media/mod.rs @@ -90,17 +90,22 @@ impl Service { file: &[u8], ) -> Result<()> { // Width, Height = 0 if it's not a thumbnail - let key = self.db.create_file_metadata( - mxc, - user, - &Dim::default(), - content_disposition, - content_type, - )?; + let key = self + .db + .create_file_metadata(mxc, user, &Dim::default(), content_disposition, content_type) + .map_err(|e| { + err!(Database(error!("Failed to create media metadata for MXC {mxc}: {e}"))) + })?; //TODO: Dangling metadata in database if creation fails - let mut f = self.create_media_file(&key).await?; - f.write_all(file).await?; + let mut f = self.create_media_file(&key).await.map_err(|e| { + err!(Database(error!( + "Failed to create media file for MXC {mxc} at key {key:?}: {e}" + ))) + })?; + f.write_all(file).await.map_err(|e| { + err!(Database(error!("Failed to write media file for MXC {mxc} at key {key:?}: {e}"))) + })?; Ok(()) }