My name is Chris, HI!

        I'm working on a backup application... and i'm using your Archive::Tar perl 
module (version .22). 
        My question to you is, how can i "flush" the in memory archive after it has 
reached a certain condition...say like a certain size.

        My problem is this...I'm trying to tar an unknown sized directory (with sub 
directories and sub sub directories, ect) and it can be 
                anywhere from under one megabyte to almost a GIG! But i don't exactly 
have that much RAM (memory) if that even matters and after only 
                5 seconds or so when processing a directory that is about 250 megs 
perl already is taking up HUGE!!!! amounts of CPU resources (99%)... though 
                strangely it's seems to only taking up about 3-5% of available memory. 
(i have only 64 installed) ?? Why ?? I guess i'm not understanding how 
                the module handles the tar in memory. I'm getting the cpu and memory 
stats by watching the unix 'top' application.

        I've tried to flush the tar object by calling the following when the 'buffer' 
reaches a certain size:
                $tar->write('foo.tar', 0); 
                $tar->remove(($tar->list_files())); 
                ...then start adding the remaining files to the emptied $tar object 
(and flush again if the buffer exceeds the max size again)
        
        Which makes everything go REALLY fast... as i want... BUT it actually removes 
the contents of the $tar file, not just from memory.. That doesn't make sense to
        me because the write() method (i thought) wrote what was in memory to the file 
specified.... So as i see it my 'flush' above would first update 
        the tar file with the contents in memory, then remove the files in memory, 
then add the new files to memory and if need be flush again.

        Should i flush the 'buffer' into mulitple spanning archives and combine them 
at the end of the whole process? Do you have any ideas?
        

        Thanks a bundle!
                -Chris

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to