Hide Forgot
Description of problem: RHEL doesn't have latest rsync version available (>=3.1.0). The rsync version in RHEL is "3.0.9". In RHGS, geo-replication extensively uses rsync to sync files between master volume and slave volume. Rsync version > 3.1.0 has lot of performance improvements and it could significantly benefit RHGS customers in syncing data faster. Check the improvements here: https://download.samba.org/pub/rsync/src/rsync-3.1.0-NEWS One of the use cases that we have seen where it significantly performs better is that, it provides new option "--ignore-missing-args" which ignore the errors on source like ENOENT and hence saves lot of retries in geo-replication which otherwise involved multiple retries before failure. This is a common scenarios where the workload involves lots of UNLINKS and CREATES. Version-Release number of selected component (if applicable): RHEL 7.4 How reproducible: Always Steps to Reproduce: 1. 2. 3. Actual results: Available rsync version is 3.0.9 Expected results: RHGS requires rsync version to be > 3.1.0 to perform better. Additional info:
Hi Steve Almy, Please provide pm_ack if this request is feasible to be addressed.
*** Bug 1141673 has been marked as a duplicate of this bug. ***
We will be rebasing to rsync version 3.1.2
This reintroduces a dependency on perl, which we would really like not to have for RHEL Atomic Host. I believe it's due to this change: -chmod -x support/* Which if you look at `git annotate` was introduced for a reason. commit 67362e2c3e4f363e3080a8a4f9465e8b7408225e Author: Simo Sorce <simo> AuthorDate: Fri Apr 4 21:10:36 2008 +0000 Commit: Simo Sorce <simo> CommitDate: Fri Apr 4 21:10:36 2008 +0000 Fix example executable to not generate dependencies
Hi Colin, I tried to come up with a 'cleaner' way to remove the executable permissions on the support dir but to be honest I didn't notice that this line was there due to perl dependencies. Is perl as a dependency bad on Atomic Host?
(In reply to Michal Ruprich from comment #24) > Is perl as a dependency bad on Atomic Host? Yes. We're trying to make it smaller.
Ok, I have edited the spec file and the dependency on perl is gone. There is a scratch build in brew, but I will wait with the final build until we are sure that will be the last build.
This rsync rebase looks like it breaks the Atomic Host CI jobs which use Ansible's `synchronize` module, which apparently uses `rsync --compress` by default, which now results in e.g.: ``` 09:25:51 TASK: [Fetch results] ********************************************************* 09:25:51 failed: [10.8.245.118 -> 127.0.0.1] => {"cmd": "rsync --delay-updates -F --compress --archive --rsh 'ssh -i /home/jenkins/workspace/atomic-host-jobs-treecompose-improved-sanity-test-rhelah-autobrew-next/atomic-ci-jobs/project/config/keys/ci-factory -S none -o StrictHostKeyChecking=no' --rsync-path=\"sudo rsync\" --out-format='<<CHANGED>>%i %n%L' \"root.245.118:/var/qe/\" \"/home/jenkins/workspace/atomic-host-jobs-treecompose-improved-sanity-test-rhelah-autobrew-next\"", "failed": true, "rc": 12} 09:25:51 msg: rsync: This rsync lacks old-style --compress due to its external zlib. Try -zz. 09:25:51 rsync error: syntax or usage error (code 1) at main.c(1567) [server=3.1.2] 09:25:51 rsync: connection unexpectedly closed (0 bytes received so far) [Receiver] 09:25:51 rsync error: error in rsync protocol data stream (code 12) at io.c(226) [Receiver=3.1.2] ``` I'm just going to adjust our jobs to set `compress: False` which should work around this, but I suspect our jobs aren't going to be the only things impacted by this.
Colin, what rsync package version are you using? It should be fixed with the latest rsync-3.1.2-3.el7. Could you please confirm?
The list of changes and fixes is rather huge but I will try to point out the most important changes. Keeping the needinfo as a reminder.
Hi Lenka, ok sorry about the url, I didn't realize that. The text looks really good. Thank you.
Successfully verified by Case Run #16738622 of TR#319399 (rhel-7) and Case Run #16738623 of TR#320953 (rhel-alt-7) of TC#563276 /CoreOS/rsync/Sanity/check-rsync-3-1-2-rebase [ PASS ] :: RESULT: Test output numbers in 3-digit groups and output strings of --progress option [ PASS ] :: RESULT: Test new --info option [ PASS ] :: RESULT: Test new --debug option [ PASS ] :: RESULT: Test --preallocate option [ PASS ] :: RESULT: Test --usermap --groupmap --chown options
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2018:0692