Heikki Linnakangas wrote:
> The Linux fsync man page says:
>
> "It does not necessarily ensure that the entry in the directory
> containing the file has also reached disk. For that an explicit fsync on
> the file descriptor of the directory is also needed."
>
> AFAIK, we don't care about it at the moment. The actual behaviour
> depends on the filesystem, reiserfs and other journaling filesystems
> probably don't need the explicit fsync on the parent directory, but at
> least ext2 does.
>
> I've experimented with a user-mode-linux installation, crashing it at
> specific points. It seems that on ext2, it's possible to get the
> database in non-consistent state.
Have you experimented with mounting the filesystem with the dirsync
option ('-o dirsync') or marking the log directory as synchronous with
'chattr +D'? (no, it's not a real fix, just another data point..)
-O