Hi,
I've discovered a bug in rsync which leads to increased CPU usage and slower transfers in many situations.
When syncing with compression (-z), certain file types should not be compressed during the transfer because they are already compressed. The file types which are not to be compressed can be seen in the man page section --skip-compress.
Unfortunately skipping the default file types doesn't work and all transferred data is being compressed during the transfer. This is true for all versions since 3.1.0.
Steps to Reproduce: 1. run 'rm -f Z ; rsync -azv alpha:z.gz Z'
Actual results, transferred data was compressed during the transfer: sent 43 bytes received 63,873 bytes 25,566.40 bytes/sec total size is 628,952 speedup is 9.84
Expected results: No compression should happen for .gz file.
Additional info: Note that the source file 'z.gz' was an ascii text file to show clearly that compression took place.
Please the following BZ for more info: https://bugzilla.samba.org/show_bug.cgi?id=14323 https://bugzilla.redhat.com/show_bug.cgi?id=1816528
I tried to locate the bug in the code but failed. That said I'm not a C developer and therefore need some help from someone who understands C better than me. Any help is much appreciated!
Thanks and kind regards, Simon