Nenhum arquivo, quando compactado, é ZERO bytes. É mais provável que sua transferência falhe. Aqui está um exemplo, usando o menor arquivo que eu posso criar (zero bytes):
$ touch zerobytes.demonstration
$ ls -l zerobytes.demonstration
-rw-rw-r-- 1 walt walt 0 Oct 21 11:26 zerobytes.demonstration
$ gzip -9 --verbose zerobytes.demonstration
zerobytes.demonstration: 0.0% -- replaced with zerobytes.demonstration.gz
$ ls -l zerobytes.demonstration.gz
-rw-rw-r-- 1 walt walt 44 Oct 21 11:26 zerobytes.demonstration.gz
$ od -bc zerobytes.demonstration.gz
0000000 037 213 010 010 272 256 047 126 002 003 172 145 162 157 142 171
037 213 \b \b 272 256 ' V 002 003 z e r o b y
0000020 164 145 163 056 144 145 155 157 156 163 164 162 141 164 151 157
t e s . d e m o n s t r a t i o
0000040 156 000 003 000 000 000 000 000 000 000 000 000
n $ touch zerobytes.demonstration
$ ls -l zerobytes.demonstration
-rw-rw-r-- 1 walt walt 0 Oct 21 11:26 zerobytes.demonstration
$ gzip -9 --verbose zerobytes.demonstration
zerobytes.demonstration: 0.0% -- replaced with zerobytes.demonstration.gz
$ ls -l zerobytes.demonstration.gz
-rw-rw-r-- 1 walt walt 44 Oct 21 11:26 zerobytes.demonstration.gz
$ od -bc zerobytes.demonstration.gz
0000000 037 213 010 010 272 256 047 126 002 003 172 145 162 157 142 171
037 213 \b \b 272 256 ' V 002 003 z e r o b y
0000020 164 145 163 056 144 145 155 157 156 163 164 162 141 164 151 157
t e s . d e m o n s t r a t i o
0000040 156 000 003 000 000 000 000 000 000 000 000 000
n %pre% 003 %pre% %pre% %pre% %pre% %pre% %pre% %pre% %pre% %pre%
0000054
$
003 %pre% %pre% %pre% %pre% %pre% %pre% %pre% %pre% %pre%
0000054
$