bug-gzip
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#21270: gzip huge filesize problem


From: Mark Adler
Subject: bug#21270: gzip huge filesize problem
Date: Sun, 16 Aug 2015 00:58:19 -0700

Alexander,

Thank you for your report.  This is a well-known limitation of the gzip format. 
 The -l function makes use of the uncompressed length stored in the last four 
bytes of a gzip stream.  Therein lies the rub, since four bytes can represent 
no more than 4 GB - 1.

There is another problem with that approach, in that a valid gzip file may 
consist of a series of concatenated gzip streams, in which case -l will report 
only on the last one.  In that case, even if the entire stream decompresses to 
less than 4 GB, the result will still be incorrect.

The only reliable way to determine the uncompressed size of a gzip file is to 
decompress the entire file (which can be done without storing the result).  
This in fact is what "pigz -lt file.gz" does.  It will correctly report the 
uncompressed length, but takes much longer than "gzip -l".

-l remains useful however in most cases, so it remains a gzip and pigz option.

Mark


> On Aug 15, 2015, at 2:42 PM, Alexander Kleinsorge <address@hidden> wrote:
> 
> Hi Gzip team,
> 
> I compressed a 500 GB file (raw hdd image) using gzip 1.6 under Ubuntu 14.10 
> (64 bit). uncompressing the file gives a file with 500 gb (checked).
> But "gzip -l" shows bad (small) uncompressed_size and bad ratio (-5167%).
> 
> Below you can see some details, but I think it is a general bug.
> Thanks for help, Alexander
> 
> 
> gzip -l asus.gz
> compressed        uncompressed  ratio uncompressed_name     99630975185       
>    1891655680 -5166.9% asus
> 
> gzip --version
> gzip 1.6
> 
> Linux myname 3.16.0-43-generic #58-Ubuntu SMP Fri Jun 19 11:04:02 UTC 2015 
> x86_64 x86_64 x86_64 GNU/Linux
> 
> the 2 files (compressed 93gb + uncompressed 500gb)
> 
> -rwxrwx--- 1 root plugdev 99630975185 Aug 15 21:39 asus.gz
> -rwxrwx--- 1 root plugdev 500107862016 Aug 14 09:00 sdc.raw
> -rwxrwx--- 1 root plugdev 93G Aug 15 21:39 asus.gz
> -rwxrwx--- 1 root plugdev 466G Aug 14 09:00 sdc.raw
> 
> 
> 
> 






reply via email to

[Prev in Thread] Current Thread [Next in Thread]