From: | Alfred Perlstein <bright(at)wintelcom(dot)net> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>, Don Baccus <dhogaza(at)pacifier(dot)com>, Vadim Mikheev <vmikheev(at)sectorbase(dot)com>, Tatsuo Ishii <t-ishii(at)sra(dot)co(dot)jp>, peter_e(at)gmx(dot)net, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: RE: [COMMITTERS] pgsql/src/backend/access/transam ( xact.c xlog.c) |
Date: | 2000-11-16 21:36:30 |
Message-ID: | 20001116133630.N830@fw.wintelcom.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
* Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> [001116 13:31] wrote:
> Alfred Perlstein <bright(at)wintelcom(dot)net> writes:
> > It might make more sense to keep a private copy of the last time
> > the file was modified per-backend by that particular backend and
> > a timestamp of the last fsync shared globally so one can forgo the
> > fsync if "it hasn't been dirtied by me since the last fsync"
> > This would provide a rendevous point for the fsync call although
> > cost more as one would need to periodically call gettimeofday to
> > set the modified by me timestamp as well as the post-fsync shared
> > timestamp.
>
> That's the hard way to do it. We just need to keep track of the
> endpoint of the log as of the last fsync. You need to fsync (after
> returning from sleep()) iff your commit record position > fsync
> endpoint. No need to ask the kernel for time-of-day.
Well that breaks when you move to a overwriting storage manager,
however if you use oid instead that optimization would survive
the change to a overwriting storage manager. ?
-Alfred
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2000-11-16 21:53:43 | Re: RE: [COMMITTERS] pgsql/src/backend/access/transam ( xact.c xlog.c) |
Previous Message | Mikheev, Vadim | 2000-11-16 21:31:54 | RE: RE: [COMMITTERS] pgsql/src/backend/access/transam ( xact.c xlog.c) |