aboutsummaryrefslogtreecommitdiffstats
path: root/gitolfs3-server/src
diff options
context:
space:
mode:
authorRutger Broekhoff2026-02-20 18:17:35 +0100
committerRutger Broekhoff2026-02-20 18:17:35 +0100
commitb7e25baf29b210006c64e4fafe8523e0711e6f34 (patch)
treef6650fbe6d23dd1b14f057ec702003feda32e403 /gitolfs3-server/src
parenta7f2caf3de1a4b6f66a02037005424c365063b25 (diff)
downloadgitolfs3-b7e25baf29b210006c64e4fafe8523e0711e6f34.tar.gz
gitolfs3-b7e25baf29b210006c64e4fafe8523e0711e6f34.zip
Log more useful stuff when possible
Diffstat (limited to 'gitolfs3-server/src')
-rw-r--r--gitolfs3-server/src/handler.rs18
1 files changed, 17 insertions, 1 deletions
diff --git a/gitolfs3-server/src/handler.rs b/gitolfs3-server/src/handler.rs
index c5d4a61..ee52a31 100644
--- a/gitolfs3-server/src/handler.rs
+++ b/gitolfs3-server/src/handler.rs
@@ -42,7 +42,7 @@ enum ObjectStatus {
42impl AppState { 42impl AppState {
43 async fn check_object(&self, repo: &str, obj: &BatchRequestObject) -> Result<ObjectStatus, ()> { 43 async fn check_object(&self, repo: &str, obj: &BatchRequestObject) -> Result<ObjectStatus, ()> {
44 let (oid0, oid1) = (HexByte(obj.oid[0]), HexByte(obj.oid[1])); 44 let (oid0, oid1) = (HexByte(obj.oid[0]), HexByte(obj.oid[1]));
45 let full_path = format!("{repo}/lfs/objects/{}/{}/{}", oid0, oid1, obj.oid); 45 let full_path = format!("{repo}/lfs/objects/{oid0}/{oid1}/{}", obj.oid);
46 46
47 let result = match self 47 let result = match self
48 .s3_client 48 .s3_client
@@ -57,6 +57,14 @@ impl AppState {
57 Err(SdkError::ServiceError(e)) if e.err().is_not_found() => { 57 Err(SdkError::ServiceError(e)) if e.err().is_not_found() => {
58 return Ok(ObjectStatus::DoesNotExist); 58 return Ok(ObjectStatus::DoesNotExist);
59 } 59 }
60 Err(SdkError::ServiceError(e)) => {
61 println!(
62 "Failed to HeadObject (repo {repo}, OID {}): {}",
63 e.err(),
64 obj.oid
65 );
66 return Err(());
67 }
60 Err(e) => { 68 Err(e) => {
61 println!("Failed to HeadObject (repo {repo}, OID {}): {e}", obj.oid); 69 println!("Failed to HeadObject (repo {repo}, OID {}): {e}", obj.oid);
62 return Err(()); 70 return Err(());
@@ -270,6 +278,14 @@ pub async fn handle_obj_download(
270 .await 278 .await
271 { 279 {
272 Ok(result) => result, 280 Ok(result) => result,
281 Err(SdkError::ServiceError(e)) => {
282 println!("Failed to GetObject (repo {repo}, OID {oid}): {}", e.err());
283 return (
284 http::StatusCode::INTERNAL_SERVER_ERROR,
285 "Failed to query object information",
286 )
287 .into_response();
288 },
273 Err(e) => { 289 Err(e) => {
274 println!("Failed to GetObject (repo {repo}, OID {oid}): {e}"); 290 println!("Failed to GetObject (repo {repo}, OID {oid}): {e}");
275 return ( 291 return (