Thread: pgsql: Sync unlogged relations to disk after they have been reset.

pgsql: Sync unlogged relations to disk after they have been reset.

From
Andres Freund
Date:
Sync unlogged relations to disk after they have been reset.

Unlogged relations are only reset when performing a unclean
restart. That means they have to be synced to disk during clean
shutdowns. During normal processing that's achieved by registering a
buffer's file to be fsynced at the next checkpoint when flushed. But
ResetUnloggedRelations() doesn't go through the buffer manager, so
nothing will force reset relations to disk before the next shutdown
checkpoint.

So just make ResetUnloggedRelations() fsync the newly created main
forks to disk.

Discussion: 20140912112246.GA4984@alap3.anarazel.de

Backpatch to 9.1 where unlogged tables were introduced.

Abhijit Menon-Sen and Andres Freund

Branch
------
REL9_2_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/ea8b3833ef064afacd8b8087e26744200f593b9b

Modified Files
--------------
src/backend/storage/file/reinit.c |   47 +++++++++++++++++++++++++++++++++++++
1 file changed, 47 insertions(+)