The one thing I can see is that perhaps part of what is being sync'ed is on a read-only filesystem, while portions of the underlying tree are not. For example, it is common to mount the root file system read-only, while areas such as /var are read-write.
On the flip side, there is also the problem where the top portions of a tree being rsync'ed would be in a read-write area, and areas under it would potentially be in a read-only partition. I have seen this a number of times, where developers would have multiple areas mounted under their home directories onto a build server. On the performance improvements... I am sure that there are some which can be made... always is, always will be. About the best I can see in this would be perhaps test and set/clear a flag every time one directory is traversed. This likely could be done by looking at the st_dev member of the stat structure, IIRC. - Doug Quoting [EMAIL PROTECTED] ([EMAIL PROTECTED]): > I think your product is awesome, but I am experiencing an unexpected > behaviour. > > $ rsync -avviPH /Users/alan/Desktop/rsync_test\ Folder/ > [EMAIL PROTECTED]::Downloads > > opening tcp connection to slug port 873 > sending daemon args: --server -vvlHogDtpre30.16i "--log-format=%i" -- > partial . Downloads > sending incremental file list > .d..t..g... ./ > rsync: failed to write xattr user.rsync.%stat for "/." (in > Downloads): Read-only file system (30) > rsync: failed to set times on "/." (in Downloads): Read-only file > system (30) > <f.st..g... .DS_Store > 6148 100% 4.76MB/s 0:00:00 (xfer#1, to-check=12/14) > cd+++++++++ RSYNC_TEST/ > rsync: recv_generator: mkdir "/RSYNC_TEST" (in Downloads) failed: > Read-only file system (30) > *** Skipping any contents from this failed directory *** > rsync: mkstemp "/..DS_Store.iiOfRf" (in Downloads) failed: Read-only > file system (30) > total: matches=6 hash_hits=8 false_alarms=0 data=1948 > > sent 2414 bytes received 144 bytes 1705.33 bytes/sec > total size is 146404 speedup is 57.23 > rsync error: some files could not be transferred (code 23) at main.c > (1058) [sender=3.0.0pre8] > > The destination file system is Read Only, but RSYNC takes the time > and looks as if the transfer is happening, but of course it is not. > I would like RSYNC to terminate as soon as it knows its destination > is Read only. > > The transfer is from a Mac OSX to Debian Linux HFSPlus file system. > > OSX > rsync version 3.0.0pre8 protocol version 30.PR16 > Capabilities: > 64-bit files, 32-bit inums, 32-bit timestamps, 64-bit long ints, > socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace, > append, ACLs, xattrs, iconv, file-flags > > Linux > rsync version 3.0.0pre8 protocol version 30.PR16 > Capabilities: > 64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints, > socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace, > append, ACLs, xattrs, iconv > > Thanks > > > -- > To unsubscribe or change options: > https://lists.samba.org/mailman/listinfo/rsync > Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html -- Douglas Wade Needham - KA8ZRT UN*X Consultant & UW/BSD kernel programmer Email: cinnion @ ka8zrt . com http://www.ka8zrt.com Disclaimer: My opinions are my own. Since I don't want them, why should my employer, or anybody else for that matter! -- To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html
