A
Anurag
Hi,
I am trying to use tarfile module to list contents of a 'gz' file but
it seems to hang for large files and CPU usage goes 100%.
though 'tar -tvf' on same file list contents in couple of secs.
Here is a test script which can show the problem; I am using python
Python 2.4.3
------------
import tarfile
bigFilePath = "/tmp/bigFile"
bigFileTGZ = "/tmp/big.tar.gz"
# create a big file
print "Creating big file...",bigFilePath
f = open(bigFilePath,"w")
for i in xrange(100):
f.write("anurag"*1024*1024)
f.close()
#create a tarfile from big file
print "pack to...",bigFileTGZ
tar = tarfile.open(bigFileTGZ, "w:gz")
tar.add(bigFilePath,"bigFile")
tar.close()
print "unpack...",bigFileTGZ
# now try to list contents of tar
tar = tarfile.open(bigFileTGZ, "r")
tar.list() #hangs
I am trying to use tarfile module to list contents of a 'gz' file but
it seems to hang for large files and CPU usage goes 100%.
though 'tar -tvf' on same file list contents in couple of secs.
Here is a test script which can show the problem; I am using python
Python 2.4.3
------------
import tarfile
bigFilePath = "/tmp/bigFile"
bigFileTGZ = "/tmp/big.tar.gz"
# create a big file
print "Creating big file...",bigFilePath
f = open(bigFilePath,"w")
for i in xrange(100):
f.write("anurag"*1024*1024)
f.close()
#create a tarfile from big file
print "pack to...",bigFileTGZ
tar = tarfile.open(bigFileTGZ, "w:gz")
tar.add(bigFilePath,"bigFile")
tar.close()
print "unpack...",bigFileTGZ
# now try to list contents of tar
tar = tarfile.open(bigFileTGZ, "r")
tar.list() #hangs