
On Sat, 21 Apr 2012, Craig Sanders wrote:
On Wed, Apr 11, 2012 at 11:08:41AM +1000, Tim Connors wrote:
As long as the file is either the new or the old version, and not zeroed out because of braindead filesystem behaviour,
you've made this claim a few times about XFS. sometimes naming XFS explicitly, and sometimes not as here.
i suspect it's because you don't know or don't understand how XFS works.
tl;dr version: XFS does not zero sectors due to brain-dead filesystem behaviour.
Not taking rename() as being an implicit barrier is braindead. ext4 fixed that. I don't believe XFS has for idealogical reasons. Instead of putting a small workaround that causes bugger-all impact on performance in kernel code, they insist that decades of userspace should change its behaviour instead. ...
AFAIK, this situation can only occur today if you override the defaults and force an xfs filesystem to be mounted without barriers. If you do this, you are asking for trouble and have no legitimate cause for complaint.
more to the point, ext3/4 will have exactly the same problem in the same situation (hard crash, no write barriers). I'm unsure of whether they bother to zero the sectors or if they just give you whatever data happened to be in the sectors. hopefully the former.
Except that ext3 on old defaults didn't write metadata out of order with data. -- Tim Connors