[#1450] engine: Return shard-level error if object is expired on inhume

Since we have errors defined on the shard-level, it looks strage that we
check an error againt the shard-level error `ErrLockObjectRemoval`, but
then return the metabase-level error. Let's return the same shard-level
error instead.

Since we have errors defined on the shard-level

Signed-off-by: Aleksey Savchuk <a.savchuk@yadro.com>
This commit is contained in:
Aleksey Savchuk 2024-12-02 15:15:50 +03:00
parent 47dfd8840c
commit 748edd1999
Signed by: a-savchuk
GPG key ID: 70C0A7FF6F9C4639

View file

@ -169,7 +169,7 @@ func (e *StorageEngine) inhumeAddr(ctx context.Context, addr oid.Address, prm sh
retErr = new(apistatus.ObjectLocked) retErr = new(apistatus.ObjectLocked)
return true return true
case errors.Is(err, shard.ErrLockObjectRemoval): case errors.Is(err, shard.ErrLockObjectRemoval):
retErr = meta.ErrLockObjectRemoval retErr = shard.ErrLockObjectRemoval
return true return true
case errors.Is(err, shard.ErrReadOnlyMode) || errors.Is(err, shard.ErrDegradedMode): case errors.Is(err, shard.ErrReadOnlyMode) || errors.Is(err, shard.ErrDegradedMode):
retErr = err retErr = err