[arch-mirrors] [Action Required] Leftover .~tmp~ directories with rsync 3.2.0 - 3.2.3

Evangelos Foutras evangelos at foutrelis.com
Thu Jul 29 13:18:52 UTC 2021


Dear mirror admins,

Due to a bug in rsync versions 3.2.0 to 3.2.3 (inclusive), the use of
--delay-updates can leave behind .~tmp~ directories containing updated
files that never make it out of the temporary location. [1] This issue
has led to outdated repo databases and lastupdate files in the past.

Last year, the syncrepo-template.sh script (linked from the wiki [2])
was updated to remove any existing .~tmp~ directories before calling
rsync. This workaround is needed if you use rsync 3.2.0 - 3.2.3.
Arch's rsync 3.2.3-4 package has been patched for this problem so the
workaround is not required for mirrors running on Arch.

The syncrepo-template.sh script was just updated again to replace
--delete-after with --delete-delay (as a performance optimization) and
to stop using a temporary directory for file transfers. The exact
commits (with accompanying commit messages) can be found at [3]
(ignore the first and last commit which are specific to Arch's infra).

To avoid having mirrors with stale repositories because of the .~tmp~
issue, please rebase your syncrepo script to match the latest version
of the template obtained through the link in the wiki. If you don't
use rsync 3.2.0 - 3.2.3 (or use Arch's patched version), feel free to
comment out the .~tmp~ workaround.

Cheers,
Arch DevOps

[1] https://github.com/WayneD/rsync/issues/192
[2] https://wiki.archlinux.org/title/DeveloperWiki:NewMirrors
[3] https://gitlab.archlinux.org/archlinux/infrastructure/-/merge_requests/471/commits


More information about the arch-mirrors mailing list