diff --git a/pkg/operations/move.go b/pkg/operations/move.go index 4c361cf..6bbdd5c 100644 --- a/pkg/operations/move.go +++ b/pkg/operations/move.go @@ -16,6 +16,11 @@ import ( ) func (o *Operations) Move(from string, to string) error { + // Ignore no-op move operation + if from == to { + return nil + } + o.diskOperationLock.Lock() defer o.diskOperationLock.Unlock() diff --git a/pkg/recovery/index.go b/pkg/recovery/index.go index 6cdcf5b..404b227 100644 --- a/pkg/recovery/index.go +++ b/pkg/recovery/index.go @@ -298,7 +298,7 @@ func indexHeader( case records.STFSRecordActionUpdate: moveAfterEdits := false oldName := hdr.Name - if _, ok := hdr.PAXRecords[records.STFSRecordReplacesName]; ok { + if _, ok := hdr.PAXRecords[records.STFSRecordReplacesName]; ok && oldName != hdr.Name { moveAfterEdits = true oldName = hdr.PAXRecords[records.STFSRecordReplacesName] }