Consider main thread manages allocating blocks of space within a file, and worker threads that write into those blocks in parallel (using lseek) and report back to the main thread the size of the block. This would result in inflated file size. The question is whether gzip will read past 'holes' in the file.