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

Reply via email to