Page 1 of 1

Mac API copyfile Function

Posted: Tue Jun 21, 2022 12:31 am
by rearward
Backing up a folder on the internal disk to a folder on an external USB disk.
Both internal and external disks are APFS formatted.

Profile Settings
Verify copied files enabled

When I enable Use Mac API copyfile function under more tab execution time with verification enabled decreases to half.

I assume that Syncovery does not read the file back from RIGHT to verify but relies on macOS.

Is macOS API as reliable as reading the file back?

Re: Mac API copyfile Function

Posted: Tue Jun 21, 2022 8:42 am
by tobias
Hello,

the file verification is independent from the copy function. With the option "Verify copied files", files are verified byte-for-byte by Syncovery even after using the Mac API copyfile function.

So the speed difference is something else. Different copy functions may perform differently.

Re: Mac API copyfile Function

Posted: Tue Jun 21, 2022 12:34 pm
by rearward
Hi tobias,

Thank you very much for your quick reply.

After your reply I created a test setup and found out that there is no speed difference.
Sorry, I should have this before the post.

As far as I understand macOS offers the Mac API copyfile function and it has been added to Syncovery as an option.

Could you enlighten us with your expertise about this option?
Should it be stay disabled (or enabled) all the time?
In what situations would you suggest to switch it?

Re: Mac API copyfile Function

Posted: Tue Jun 21, 2022 2:07 pm
by tobias
Hello,
the macOS copyfile function is sometimes more compatible with some storages. There have been (rare) incidences of error messages in the log files when not using it. Other than that, the functionality should be exactly the same.

However if you use Block Level Copying or compression/encryption, or uploading to a server using an Internet Protocol, then the macOS copyfile function checkmark does not have any effect.

Re: Mac API copyfile Function

Posted: Tue Jun 21, 2022 2:30 pm
by rearward
Thank you very much.

From now on I will enable it as default and watch for error messages in the log files.