phase1: rsync: use --size-only instead of --checksum
authorThibaut VARÈNE <hacks@slashdirt.org>
Wed, 20 Jun 2018 15:36:02 +0000 (17:36 +0200)
committerJo-Philipp Wich <jo@mein.io>
Tue, 26 Jun 2018 20:08:18 +0000 (22:08 +0200)
commit62a01a12129999d7e201786d9392af010f43aaf9
tree5672eb6304b7b445cbbb388d3bc841a4e7542971
parent0edb49341869527f89c2b446614be6e86c7413dd
phase1: rsync: use --size-only instead of --checksum

'--checksum' puts heavy I/O and memory load on both the sender and the
receiver and dramatically reduces rsync's speedup. Furthermore, if
multiple slaves are uploading at once the receiver may become overloaded,
slowing down the whole build farm. From rsync manpage:
    Generating the checksums means that both sides will expend a lot of
    disk I/O reading all the data in the files in the transfer (and this
    is prior to any reading that will be done to transfer changed files),
    so this can slow things down significantly.
This slowdown causes timeouts for some build slaves, noticeably in the
'sourceupload' step.

'--size-only' matches files by size only. Compared to '--checksum', it is
faster, and does not aggravate the collision/error risk (if two files of
the same name and size have different checksums, we don't have a heuristic
to determine which is "correct" and which is "invalid" anyway)

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
phase1/master.cfg