From 9e386184d48d10c4706dba520ea26c5c462bdbe7 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Mon, 16 Mar 2026 23:43:17 -0700 Subject: [PATCH] Match Go VolumeUnmount: idempotent success when volume not found --- seaweed-volume/src/server/grpc_server.rs | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/seaweed-volume/src/server/grpc_server.rs b/seaweed-volume/src/server/grpc_server.rs index 532e2ba00..96b602bb4 100644 --- a/seaweed-volume/src/server/grpc_server.rs +++ b/seaweed-volume/src/server/grpc_server.rs @@ -631,12 +631,8 @@ impl VolumeServer for VolumeGrpcService { ) -> Result, Status> { let vid = VolumeId(request.into_inner().volume_id); let mut store = self.state.store.write().unwrap(); - if !store.unmount_volume(vid) { - return Err(Status::not_found(format!( - "volume {} not found", - vid - ))); - } + // Go returns nil when volume is not found (idempotent unmount) + store.unmount_volume(vid); Ok(Response::new(volume_server_pb::VolumeUnmountResponse {})) }