Performing the verification for Focal: First, reproducing the bug with the current version:
# apt policy rsync rsync: Installed: 3.1.3-8 Candidate: 3.1.3-8 Version table: *** 3.1.3-8 500 500 http://archive.ubuntu.com/ubuntu focal/main amd64 Packages 100 /var/lib/dpkg/status # mkdir -p a/1 b/1; echo "/1/2/3" > list # rsync --dry-run --stats -Pav --delete-missing-args --files-from=list a b building file list ... 0 files... file has vanished: "/root/a/1/2" 2 files to consider ABORTING due to invalid path from sender: 1/2/3 rsync error: protocol incompatibility (code 2) at generator.c(1278) [generator=3.1.3] Next, updating the package to the version available in -proposed, clearing the directory, and making sure that the bug is fixed: # apt policy rsync rsync: Installed: 3.1.3-8ubuntu0.1 Candidate: 3.1.3-8ubuntu0.1 Version table: *** 3.1.3-8ubuntu0.1 500 500 http://archive.ubuntu.com/ubuntu focal-proposed/main amd64 Packages 100 /var/lib/dpkg/status 3.1.3-8 500 500 http://archive.ubuntu.com/ubuntu focal/main amd64 Packages # mkdir -p a/1 b/1; echo "/1/2/3" > list # rsync --dry-run --stats -Pav --delete-missing-args --files-from=list a b building file list ... 0 files... file has vanished: "/root/a/1/2" 2 files to consider WARNING: parent dir is absent in the file list: 1/2 Number of files: 2 (reg: 1, dir: 1) Number of created files: 0 Number of deleted files: 0 Number of regular files transferred: 0 Total file size: 0 bytes Total transferred file size: 0 bytes Literal data: 0 bytes Matched data: 0 bytes File list size: 0 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 59 Total bytes received: 68 sent 59 bytes received 68 bytes 254.00 bytes/sec total size is 0 speedup is 0.00 (DRY RUN) rsync warning: some files vanished before they could be transferred (code 24) at main.c(1207) [sender=3.1.3] As shown above, there is no longer a crash due to missing parent folders. Therefore, the bug has been fixed for focal and verification is complete. ** Tags removed: verification-needed-focal ** Tags added: verification-done-focal -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to rsync in Ubuntu. https://bugs.launchpad.net/bugs/1896251 Title: rsync --delete-missing-args fails with "error: protocol incompatibility" Status in rsync package in Ubuntu: Fix Released Status in rsync source package in Xenial: Won't Fix Status in rsync source package in Bionic: Fix Committed Status in rsync source package in Focal: Fix Committed Bug description: [Impact] Rsync crashes when using --delete-missing-args on a file with a missing parent folder. Backporting this fix will allow users to delete missing source args when some files in the list have missing parent folders without interruption. This is fixed by patching in an upstream commit that allows files with missing parent folders to be handled without aborting. [Test Plan] # lxc launch images:ubuntu/focal builder # lxc exec builder bash # apt update # apt dist-upgrade # apt install -y rsync # mkdir -p a/1 b/1; echo "/1/2/3" > list # rsync --dry-run --stats -Pav --delete-missing-args --files-from=list a b * This should crash with exit code 2 after printing the following: building file list ... 0 files... file has vanished: "/root/a/1/2" 2 files to consider ABORTING due to invalid path from sender: 1/2/3 rsync error: protocol incompatibility (code 2) at generator.c(1278) [generator=3.1.3] [Where problems could occur] Since the remove operation will now continue when files in the list have missing parent folders, other errors and warnings with different behaviors could arise instead. A warning that may arise the most often in these situations is the following: warning: some files vanished before they could be transferred (code 24) at main.c(1207) [sender=3.1.3] This appears at the end of the above test case with the new code. The behavior is expected, but it may cause regressions due to changes in the output of certain use cases. [Original Description] Running rsync --delete-missing-args --files-from=... fails with error message like ABORTING due to invalid path from sender: dir1/dir2/dir3 rsync error: protocol incompatibility (code 2) at generator.c(1271) [generator=3.1.2] if the listed directories are trying to delete full subtree of files. According to https://bugzilla.samba.org/show_bug.cgi?id=12569 this has been fixed in version 3.2.2. See also: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=863334 Could you update the rsync package or backport the fix? ProblemType: Bug DistroRelease: Ubuntu 18.04 Package: rsync 3.1.2-2.1ubuntu1.1 ProcVersionSignature: Ubuntu 5.4.0-47.51~18.04.1-lowlatency 5.4.55 Uname: Linux 5.4.0-47-lowlatency x86_64 ApportVersion: 2.20.9-0ubuntu7.17 Architecture: amd64 CurrentDesktop: MATE Date: Fri Sep 18 18:27:53 2020 EcryptfsInUse: Yes InstallationDate: Installed on 2019-01-05 (621 days ago) InstallationMedia: Ubuntu 18.04.1 LTS "Bionic Beaver" - Release amd64 (20180725) SourcePackage: rsync UpgradeStatus: No upgrade log present (probably fresh install) To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/rsync/+bug/1896251/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp