add a custom response for full storage

This commit is contained in:
neri 2022-04-30 21:29:41 +02:00
parent becfefb070
commit eddbeec7ef
1 changed files with 14 additions and 4 deletions

View File

@ -173,10 +173,20 @@ async fn write_to_file(
))); )));
} }
} }
file.write_all(&chunk).await.map_err(|write_err| { file.write_all(&chunk)
log::error!("could not write file {:?}", write_err); .await
error::ErrorInternalServerError("could not write file") .map_err(|write_err| match write_err.kind() {
})?; std::io::ErrorKind::StorageFull => {
log::warn!("storage is full {:?}", write_err);
error::ErrorServiceUnavailable(
"storage is full, you will need to wait for some files to expire",
)
}
_ => {
log::error!("could not write file {:?}", write_err);
error::ErrorInternalServerError("could not write file")
}
})?;
} }
Ok(written_bytes) Ok(written_bytes)
} }