On 3/2/07, Wayne Davison <[EMAIL PROTECTED]> wrote:
Make the auto-generated protect filters use the perishable flag so that they don't stop a vanished directory from being removed.
1. I don't think the --backup rule should be perishable. If I delete an entire directory from the source, I would expect the receiver to back up the files inside and not discard the backups just because I deleted the whole directory. 2. The filters added in setup_protocol in compat.c don't seem to be taking effect on local rsyncs. See this run of CVS rsync to which I added some debugging output: [EMAIL PROTECTED] backup]$ ~/rsync/rsync/rsync -in -vv -a --backup --del src/ dest/ Parsed rule Pp *~ <-- setup_protocol am_sender is 1, filter_list.head is 8878ac8 sending incremental file list testing is_excluded . testing is_excluded dir am_sender is 1, filter_list.head is 0 <-- I assume the sender elided the protect rule. testing is_excluded dir/foo am_sender is 1, filter_list.head is 0 delta-transmission disabled for local transfer or --whole-file .d ./ testing is_excluded dir am_sender is 0, filter_list.head is 0 <-- ** Receiving side doesn't have the rule! .d dir/ testing is_excluded dir/foo am_sender is 0, filter_list.head is 0 testing is_excluded dir/foo~ am_sender is 0, filter_list.head is 0 *deleting dir/foo~ <-- And consequently the receiver deletes the backup file. .f dir/foo total: matches=0 hash_hits=0 false_alarms=0 data=0 sent 94 bytes received 22 bytes 232.00 bytes/sec total size is 4 speedup is 0.03 I think this is because setup_protocol runs after the receiving side is forked off, so it is too late for the receiving side to inherit the filters. Matt -- To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html
