On Fri, Dec 23, 2016 at 3:02 AM, Andres Freund <and...@anarazel.de> wrote:
> Not quite IIRC: that doesn't deal with file size increase.  All this would be 
> easier if hardlinks wouldn't exist IIUC. It's basically a question whether 
> dentry, inode or contents need to be synced.   Yes, it sucks.

I did more monitoring of the code... Looking at unlogged tables and
empty() routines of access methods, isn't there a risk as well for
unlogged tables? mdimmedsync() does not fsync() the parent directory
either! It seems to me that we want to fsync() the parent folder in
this code path especially and not just at checkpoint as this assumes
that it does not care about shared buffers. We could do that at
checkpoint as well, actually, by looping through all the tablespaces
and fsync the database directories.

Robert, as the former author of unlogged tables and Andres, as you
have done a lot of work on durability, could you share your opinion on
the matter? Of course opinions of others are welcome!

Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:

Reply via email to