Skip Menu |

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

Report information
The Basics
Id: 66046
Status: resolved
Priority: 0/
Queue: Archive-Builder

People
Owner: Nobody in particular
Requestors: tskrainar [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 1.14
Fixed in: (no value)



In Archive::Builder::Archive::_tar(), due to the way Archive::Tar::write() is called (no arguments, meaning return the result as a string) a doubling of the amount of memory in use occurs. When working with input data which results in a large output file (large number and/or size of files), this can result in an out-of-memory condition, especially with 32-bit Perls. I would like to suggest adding a call to Archive::Tar's clear() method, which will allow the Archive::Tar object's data to be garbage collected, as such: # at end of Archive::Builder::Archive, _tar() method: # Get the output my $string = $Archive->write; # free up some memory $Archive->clear; $string ? \$string : undef; }
Changed as requests, and releases as 1.15. I also took the opportunity to upgrade Module::Install and remove a dependency