From 2dd3e3b6eec4fb36a840b9abc22b135f435c11d4 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Tue, 17 Mar 2026 20:50:44 -0700 Subject: [PATCH] Include server ID in maintenance mode error matching Go's format Go returns "volume server %s is in maintenance mode" with the store ID. Rust was returning a generic "maintenance mode" message. --- seaweed-volume/src/server/volume_server.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/seaweed-volume/src/server/volume_server.rs b/seaweed-volume/src/server/volume_server.rs index 5a01f412e..8cdf1c74d 100644 --- a/seaweed-volume/src/server/volume_server.rs +++ b/seaweed-volume/src/server/volume_server.rs @@ -107,7 +107,11 @@ impl VolumeServerState { /// Check if the server is in maintenance mode; return gRPC error if so. pub fn check_maintenance(&self) -> Result<(), tonic::Status> { if self.maintenance.load(Ordering::Relaxed) { - return Err(tonic::Status::unavailable("maintenance mode")); + let id = self.store.read().unwrap().id.clone(); + return Err(tonic::Status::unavailable(format!( + "volume server {} is in maintenance mode", + id + ))); } Ok(()) }