Robocopy skips files with multithreading switch set to /MT:32
Some time ago I reported an error Robocopy logged when it tried to copy a directory where the primary group was not set.
In the same project we encountered another problem: If we use Robocopy with the /MT:32 switch (use multithreading with a maximum of 32 threads), the problem occurs that some files and directories are not copied. These were often zero byte files, but also standard image files such as JPEGs and entire directories. The skipped files and directories had no special features, we checked them in Explorer and also with PowerShell and Get-ACL.
Unfortunately, the skipped files and directories are also not logged, no error message appears in the log file.
If we then tried to copy one of the skipped directories with the same Robocopy call (limited to the directory), then it works. A strange behavior that looks like a bug.
After repeating the Robocopy call without the /MT switch, everything worked as expected.
We noticed the problem because we compared the source directory with the target directory after the Robocopy copy process with Beyond Compare (an excellent program).
Beyond Compare can not only synchronize directories but also directories. However, the transfer of NTFS permissions must be explicitly activated.
The source system was a NetApp system, it could have something to do with the observed behavior.