Incremental recursion not working

Wayne Davison wayned at
Fri Mar 26 23:44:55 MDT 2010

On Fri, Mar 26, 2010 at 12:33 AM, Gerald Holl <gerald at> wrote:

> cmd[9]=-vvvvvvvLogtprze.iL

The presence of the 'i' in the -e.iL option that was sent means that the
client believes that incremental recurse is possible.  The server side must
be sending back a flag that indicates that it believes that it is not.  I'd
suggest looking to see if the "rsync" on the path is a script (or alias)
that tries to force extra options (such as --delay-updates or
--prune-empty-dirs) or something that strips away the -e.iL option.  You
could work around such a situation by specifying --rsync-path=/usr/bin/rsync
(or what path you need).  If none of that works, you could add some
fprintf(stderr, "...\n") statements to the set_allow_inc_recurse() routine
in compat.c to see what is triggering the allow_inc_recurse = 0 setting.
 Something like this:

       client_info = shell_cmd ? shell_cmd : "";

       fprintf(stderr, "[%s] allow_inc_recurse=%d, recurse=%d, use_qsort=%d,
delete_before=%d, delete_after=%d, delay_updates=%d, prune_empty_dirs=%d,
client_info='%s'\n", who_am_i(), allow_inc_recurse, recurse, use_qsort,
delete_before, delete_after, delay_updates, prune_empty_dirs, client_info);
/* added */

       if (!recurse || use_qsort)
               allow_inc_recurse = 0;

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the rsync mailing list