<div dir="ltr"><div style="font-size:12.8px">Dear rsync-list,</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">I got following issue demonstrated by this script:</div><div style="font-size:12.8px">-----<br></div><div style="font-size:12.8px">$ mkdir -p src/a trg/a</div><div style="font-size:12.8px">$ echo "/a/b/c" > list</div><div style="font-size:12.8px">$ /usr/bin/rsync -slt --ignore-errors --force --ignore-missing-args --delete-missing-args --files-from=list src localhost:`pwd`/trg</div><div style="font-size:12.8px">file has vanished: "/home/axel/src/a/b"</div><div style="font-size:12.8px">ABORTING due to invalid path from sender: a/b/c</div><div style="font-size:12.8px">rsync error: protocol incompatibility (code 2) at generator.c(1270) [generator=3.1.2]</div><div style="font-size:12.8px">$ echo $?</div><div style="font-size:12.8px">2</div><div style="font-size:12.8px">$ /usr/local/bin/rsync --version</div><div style="font-size:12.8px">rsync  version 3.1.2  protocol version 31</div><div style="font-size:12.8px">Copyright (C) 1996-2015 by Andrew Tridgell, Wayne Davison, and others.</div><div style="font-size:12.8px">Web site: <a href="http://rsync.samba.org/" target="_blank">http://rsync.samba.org/</a></div><div style="font-size:12.8px">Capabilities:</div><div style="font-size:12.8px">    64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,</div><div style="font-size:12.8px">    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,</div><div style="font-size:12.8px">    append, no ACLs, xattrs, iconv, symtimes, prealloc</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you</div><div style="font-size:12.8px">are welcome to redistribute it under certain conditions.  See the GNU</div><div style="font-size:12.8px">General Public Licence for details.</div><div style="font-size:12.8px">-----</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">What I expected would be rather a warning about the missing directory and exitcode of 24 (partial transfer), Also I'd exepct rsync to continue beyond the entry in the list that has no directory instead of aborting here. Both happens properly if the target is local instead of ssh transfer.<br></div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">Looking at the code in generator.c this could be workarounded by providing "-r", since it's in an if (inc_recurse ... ), but then it would sync more than only files specified in the list.</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">Did I overlook an option to ignore these errors or is this something with rsync?</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">Kind regards, Axel</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">PS: Not providing the non existing path in the 'list' file is not an option, since this is actually a way the live syncing daemon Lsyncd calls rsync and as the daemon always lags behind the filesystem actions, the directory which was there a second ago, might be gone when it comes to the call of rsync.</div></div>