mirror of
https://github.com/rclone/rclone.git
synced 2024-11-07 17:14:44 +01:00
operations: fix spurious "--checksum is in use but the source and destination have no hashes in common"
Before this change rclone would emit the message --checksum is in use but the source and destination have no hashes in common; falling back to --size-only When the source or destination hash was missing as well as when the source and destination had no hashes in common. This first case is very confusing for users when the source and destination do have a hash in common. This change fixes that and makes sure the error message is not emitted on missing hashes even when there is a hash in common. See: https://forum.rclone.org/t/source-and-destination-have-no-hashes-in-common-for-unencrypted-drive-to-local-sync/19531
This commit is contained in:
parent
db4bbf9521
commit
20b00db390
@ -181,9 +181,12 @@ func equal(ctx context.Context, src fs.ObjectInfo, dst fs.Object, opt equalOpt)
|
||||
return false
|
||||
}
|
||||
if ht == hash.None {
|
||||
checksumWarning.Do(func() {
|
||||
fs.Logf(dst.Fs(), "--checksum is in use but the source and destination have no hashes in common; falling back to --size-only")
|
||||
})
|
||||
common := src.Fs().Hashes().Overlap(dst.Fs().Hashes())
|
||||
if common.Count() == 0 {
|
||||
checksumWarning.Do(func() {
|
||||
fs.Logf(dst.Fs(), "--checksum is in use but the source and destination have no hashes in common; falling back to --size-only")
|
||||
})
|
||||
}
|
||||
fs.Debugf(src, "Size of src and dst objects identical")
|
||||
} else {
|
||||
fs.Debugf(src, "Size and %v of src and dst objects identical", ht)
|
||||
|
Loading…
Reference in New Issue
Block a user