From a543e7081f72a31004573d8ca5c958904d72efe1 Mon Sep 17 00:00:00 2001 From: Joonas Koivunen Date: Fri, 5 May 2023 00:54:19 +0300 Subject: [PATCH] refactor: InnerDeleteTimelineError does not need to be Error --- pageserver/src/tenant.rs | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/pageserver/src/tenant.rs b/pageserver/src/tenant.rs index 4269489787..c48392c637 100644 --- a/pageserver/src/tenant.rs +++ b/pageserver/src/tenant.rs @@ -449,7 +449,7 @@ pub enum DeleteTimelineError { #[error("Cannot delete timeline which has child timelines")] HasChildren, #[cfg(feature = "testing")] - #[cfg_attr(feature = "testing", error("failpoint {0}"))] + #[cfg_attr(feature = "testing", error("failpoint: {0}"))] Failpoint(&'static str), #[error("stop upload queue")] StopUploadQueue, @@ -461,23 +461,25 @@ pub enum DeleteTimelineError { InternalFailure, } -#[derive(Debug, thiserror::Error)] +#[derive(Debug)] pub enum InnerDeleteTimelineError { // FIXME: this should be fixed by init order (either empty or from remote) - #[error("stop upload queue: {0:#}")] - StopUploadQueue(#[from] remote_timeline_client::StopError), + StopUploadQueue(remote_timeline_client::StopError), #[cfg(feature = "testing")] - #[cfg_attr(feature = "testing", error("failpoint {0}"))] Failpoint(&'static str), // FIXME: should this really fail the delete, probably not? // #[error("directory remove failed: {0:#}")] // TimelineDirectoryRemoveFailed(std::io::Error), - #[error("failed to upload a tombstoned index_part.json")] UploadFailed, - #[error("grew children while the layer files were deleted")] ChildAppearedAfterRemoveDir, } +impl From for InnerDeleteTimelineError { + fn from(e: remote_timeline_client::StopError) -> Self { + InnerDeleteTimelineError::StopUploadQueue(e) + } +} + impl InnerDeleteTimelineError { fn is_permanent(&self) -> bool { use InnerDeleteTimelineError::*;