I think I've run into a bug in tar. I have grabbed the newest stable (1.26) version from the website and verified I can see the behavior there too.
I have a fuse file system that returns data from our archive. It reads file contents out of the remote network file system in 32mb chunks. If a request spans multiple chunks, it short returns what is available, freeing the chunk up for the next read. I see tar reading out of a file in 10240 byte chunks at a time with an initial smaller read. On the read that would return the 32m byte, I see a short read out of the file system as expected. I never see another read to the file system by tar though. Tar starts padding out the file with 0's up until the file stat size and returns a message like: NET.csv: File shrank by 45427965 bytes; padding with zeros The man page for read says that a short read is normal and expected. End of file is only handled with a 0 return. I believe in this case, tar should try to fill its remaining buffer space with another read and only enter this "File shrank" mode if that read returns 0 bytes? Thanks, Kevin
