Bug 5455 - destination files with resource forks now have current mtime
Summary: destination files with resource forks now have current mtime
Alias: None
Product: rsync
Classification: Unclassified
Component: core (show other bugs)
Version: 3.0.2
Hardware: x86 Mac OS X
: P3 normal (vote)
Target Milestone: ---
Assignee: Wayne Davison
QA Contact: Rsync QA Contact
Depends on:
Reported: 2008-05-09 14:37 UTC by Dave Welsh
Modified: 2008-07-28 20:13 UTC (History)
0 users

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Dave Welsh 2008-05-09 14:37:54 UTC
Suppose LaCie Disk B is already a proper backup of LaCie Disk A

rsync -aE /Volumes/LaCie\ Disk\ A/ /Volumes/LaCie\ Disk\ B

No files will be copied since B is already the same as A, but any files with resource forks will now have their last-modified times changed to the current time on the destination disk.

Now running the same command again will cause rsync to recopy those files due to the differing last-modified times. This will cause the last-modified times to revert to what they were before.

The result is that every other time you run the command, any files with resource forks will be recopied, even though they haven't changed.

I noticed this because I have some 50GB files with resource forks that never change (raw video files).

The filesystems on both drives read as "Mac OS Extended". The filesystem for the computer reads as "Mac OS Extended (Journaled)". The OS is Mac OS X 10.5.2
Comment 1 Wayne Davison 2008-05-10 10:28:00 UTC
Is your rsync patched or stock?  If patched, which patches are applied?
Comment 2 Wayne Davison 2008-05-10 10:31:38 UTC
One other question:  have you modified the meaning of -E (using a popt alias)?  Because -E in 3.0.2 doesn't mean what it means in an Apple-modified rsync (a stock rsync uses -AX instead).
Comment 3 Dave Welsh 2008-05-10 16:05:18 UTC
Sorry you are right. The problem is with Apple's rsync.

I thought that make install would overwrite Apple's rsync with the new one. I even checked with rsync -h, but I must have seen the directory name and thought it was the version number.