Message237960
When running tarfile.extract through multiple threads, the archive reading pointer is not protected from simultaneous seeks and causes various convoluted bugs:
<some code>
self.archive_object.extract(member, extraction_path)
File "/usr/lib/python3.4/tarfile.py", line 2019, in extract
set_attrs=set_attrs)
File "/usr/lib/python3.4/tarfile.py", line 2088, in _extract_member
self.makefile(tarinfo, targetpath)
File "/usr/lib/python3.4/tarfile.py", line 2127, in makefile
source.seek(tarinfo.offset_data)
File "/usr/lib/python3.4/gzip.py", line 573, in seek
self.read(1024)
File "/usr/lib/python3.4/gzip.py", line 365, in read
if not self._read(readsize):
File "/usr/lib/python3.4/gzip.py", line 449, in _read
self._read_eof()
File "/usr/lib/python3.4/gzip.py", line 485, in _read_eof
hex(self.crc)))
OSError: CRC check failed 0x1036a2e1 != 0x0 |
|
Date |
User |
Action |
Args |
2015-03-12 16:40:01 | sgnn7 | set | recipients:
+ sgnn7 |
2015-03-12 16:40:01 | sgnn7 | set | messageid: <1426178401.83.0.913984210908.issue23649@psf.upfronthosting.co.za> |
2015-03-12 16:40:01 | sgnn7 | link | issue23649 messages |
2015-03-12 16:40:01 | sgnn7 | create | |
|