* Peter Eisentraut (peter_e@gmx.net) wrote:
> On 5/30/13 7:13 AM, Andres Freund wrote:
> > Why? The spec doesn't specify that case and that very well allows other
> > behaviour. Glibc sure does behave sensibly and zeroes the data
> > (sysdeps/posix/posix_fallocate64.c for the generic implementation) and
> > so does linux' fallocate() syscall, but that doesn't say much about
> > other implementations.
>
> glibc actually only writes one byte to every file system block, to make
> sure the block is allocated. It doesn't actually zero every byte.
That goes back to the 'sane implementation' question.. Is there a case
where that would actually be different from writing zeros for the entire
block..? Is there some OS that gives you random data for the 'hole'
when you write a byte, seek to the start of the next block and then
write another byte? That actually *would* be against what's documented
and required by spec, no?
Thanks,
Stephen