Ts'o: Delayed allocation and the zero-length file problem
Posted Mar 16, 2009 10:46 UTC (Mon) by
forthy (guest, #1525)
In reply to:
Ts'o: Delayed allocation and the zero-length file problem by njs
Parent article:
Ts'o: Delayed allocation and the zero-length file problem
I'm curious, too. I thought btrfs did it right, by being COW-logging
of data&metadata and having data=ordered mandatory, with all the
explication in the FAQ that make complete sense (correct checksums in the
metadata also mean correct data). Now Chris Mason tells us he didn't? Ok,
this will be fixed in 2.6.30, and for now, we all don't expect that btrfs
is perfect. We expect bugs to be fixed; and that's going on well.
IMHO a robust file system should preserve data operation ordering, so
that a file system after a crash follows the same consistency semantics
as during operation (and during operation, POSIX is clear about
consistency). Delaying metadata updates until all data is committed to
disk at the update points should actually speed things up, not slow them
down, since there is an opportunity to coalesce several metadata updates
into single writes without seeks (delayed inode allocation e.g. can
allocate all new inodes into a single consecutive block, delayed
directory name allocation all new names into consecutive data, as
well).
(
Log in to post comments)