[delphizip] Re: Problem or limit of Delphi Zip component

  • From: Eric.Engler@xxxxxxxxxxxxxx
  • To: delphizip@xxxxxxxxxxxxx
  • Date: Mon, 4 Mar 2002 09:59:35 -0500

It's unlikely Delphi Zip can handle files over 4 gig, and I doubt if we can
handle 2 gig.
I need to test to see what our upper limit is, but it might be under 1 gig.
 
You have to understand that Delphi Zip, and the zip file format in general,
was not 
designed for archiving today's huge disk drives!
 
The original limit was 4096 total files and there was no specified upper
limit on file size
because most computer users had drives much smaller than 1 gig in size - in
fact most
power users had drives under 100 Meg back when the zip file format was
created!
 
We removed the limit of 4096 files, but it's still not wise to go too far
with this format.
 
I considered making a real hard disk backup format back when I created
Delphi Zip.
I was working with a custom filesystem for writing large numbers of image
files onto
WORM drives under unix. 
 
If anyone is interested in supporting really large files the objective is to
break the files
into smaller pieces and zip the pieces. You would need a special type of
directory
that could understand how to store pieces of compressed files. You also have
to support
multiple backup volumes, and the first (or last) volume has to contain a
compreshensive
directory for the whole set (not a technical requirement but it simplifies a
user's life).
This way you could let the user select a file he wants to restore and you
could then
tell him which volume(s) to insert.  You have to handle files that straddle
accross 2
or more volumes, and you should be able to restore at least some files if
one volume 
in the set gets lost or damaged. This last requirement is normally handled
by having
local directory entires in addition to the one comprehensive directory.
 
The zip format supports multiple volumes on floppy disks but there's some
serious
enhances it would need to do a good job with real large volumes.
 
You also need to be able to "lock out" bad sections of a volume, and you
should 
allow files to grow in size after they've been added to the backup set. This
is normally
done by having pointers with each block of storage that point to the next
block for
the given file. If you want to append new data onto a file stored on disk 2
you could just
update the pointer so the new data could be stored on disk 5 for example.
 
Another requirement is to support Write-Once media formats. When you do this
you 
can't go back and update anything - you always need to write new data at the
end of 
the whole set. This sounds hard but it's not so bad - you just need to keep
checking
for new blocks that pertain to the same file. The format I worked with also
allowed
multiple versions of the same file and when you restore the file you have to
make
sure you restore the right version. 
 
I hope you can understand the complexities of this subject. I can certainly
create this
type of format but not anytime soon unless it is a paid project!  
 
Eric

-----Original Message-----
From: LYCJ [mailto:lycj@xxxxxxxxx]
Sent: Sunday, March 03, 2002 11:52 AM
To: delphizip@xxxxxxxxxxxxx
Subject: [delphizip] Re: Problem or limit of Delphi Zip component



Greetings

I heard one of my user told me that it doesnt work to archive with that
size, too. Is the 4gb limit of zip file limit apply on the zip file size or
the uncompressed size? Pkware released some specification of the next zip
format (which support > 4gb), will delphi zip support this?

Thanks a lot! 


Regards
Joseph Leung 


  Robbiati Luigi <lrobbiati@xxxxxxx> wrote: 


Hi,
I make any tests with this very good component and don't found
problem except a test with a very big file to compress.

1) The file to compress is about ~ 1.6Gb. (1.600.000.000 Bytes)
2) I used for the test the program DEMO1 for Cbuilder (the Cbuider
version used is 5.0 + service pack 1)
but the same result I achieved with the freeware program QuickZip
(ver 2.15)
3) for this test libraries version (ZIlDLL.dll and UnzipDll.dll) is
1.60.

4) Both the program ( DEMO1 and QuickZip) build the compress file but
both, put a message "Invalid Zip file".

Question: There are any limitations on file size to compress?
Possible Bug?

Thanks on advanced for any kind of answer

Luigi Robbiati







  _____  

Do You Yahoo!?
Yahoo! Sports - Sign up for Fantasy
<http://baseball.fantasysports.yahoo.com/> Baseball

Other related posts: