Skip Menu |

This queue is for tickets about the Archive-Extract CPAN distribution.

Report information
The Basics
Id: 27991
Status: resolved
Priority: 0/
Queue: Archive-Extract

People
Owner: Nobody in particular
Requestors: BorisZentner
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: (no value)
Fixed in: (no value)



Subject: Archive::Extract and very large tar.gz files
Hi, I'm unable to use Archive::Extract with very large tar.gz > 100MB files. It works only if I use local $Archive::Extract::PREFER_BIN =1; I hoped, that ### only tell it it's compressed if it's a .tgz, as we give it a file ### handle if it's a .tbz - unless( $tar->read( $fh_to_read, ( $self->is_tgz ? 1 : 0 ) ) ) { + unless( $tar->read( $fh_to_read, ( $self->is_tgz ? 1 : 0 ), { extract => 1} ) ) { help, but that didnt work either. Is there a way to use A::E and A::T with very large files? -- Boris
On Thu Jul 05 13:04:32 2007, BORISZ wrote: Show quoted text
> Hi, > I'm unable to use Archive::Extract with very large tar.gz > 100MB > files. It works only if I use > > local $Archive::Extract::PREFER_BIN =1; > > I hoped, that > > ### only tell it it's compressed if it's a .tgz, as we give it a > file > ### handle if it's a .tbz > - unless( $tar->read( $fh_to_read, ( $self->is_tgz ? 1 : 0 ) ) ) { > + unless( $tar->read( $fh_to_read, ( $self->is_tgz ? 1 : 0 ), { > extract => 1} ) ) { > > help, but that didnt work either. Is there a way to use A::E and A::T > with very large files?
The above patch won't work as we need the A::T API to tell us more about the files after they have been extracted. I'm sorry to report it's far from trivial to add the support you're looking for using A::T. Since this may be a common pitfall, i've added an entry in the CAVEATS section pointing people to the use of $PREFER_BIN when dealing wiht large archives and memory issues. Thanks for reporting, Jos