Sync vs. fsync during checkpoint

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: PostgreSQL-development <pgsql-hackers(at)postgreSQL(dot)org>, PostgreSQL Win32 port list <pgsql-hackers-win32(at)postgreSQL(dot)org>
Subject: Sync vs. fsync during checkpoint
Date: 2004-01-30 17:01:37
Message-ID: 200401301701.i0UH1bZ08600@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-hackers-win32

As some know, win32 doesn't have sync, and some are concerned that sync
isn't reliable enough during checkpoint anyway.

The trick is to somehow record all files modified since the last
checkpoint, and open/fsync/close each one. My idea is to stat() each
file in each directory and compare the modify time to determine if the
file has been modified since the last checkpoint. I can't think of an
easier way to efficiently collect all modified files. In this case, we
let the file system keep track of it for us.

However, on XP, I just tested if files that are kept open have their
modification times modified, and it seems they don't. If I do:

while :
echo test
sleep 5
done > x

I see the file size grow every 5 seconds, but I don't see the
modification time change. Can someone confirm this?

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Scott Lamb 2004-01-30 17:10:49 Re: Mixing threaded and non-threaded
Previous Message Korea PostgreSQL Users' Group 2004-01-30 16:25:32 Re: v7.4.1 text_position() patch

Browse pgsql-hackers-win32 by date

  From Date Subject
Next Message Tom Lane 2004-01-30 17:13:55 Re: [pgsql-hackers-win32] Sync vs. fsync during checkpoint
Previous Message Jason Tishler 2004-01-30 16:47:05 Re: Additional items for Win32 TODO list?