From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Alfred Perlstein <bright(at)wintelcom(dot)net> |
Cc: | Xu Yifeng <jamexu(at)telekbird(dot)com(dot)cn>, "Mikheev, Vadim" <vmikheev(at)SECTORBASE(dot)COM>, Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>, Peter Eisentraut <peter_e(at)gmx(dot)net>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Re[4]: Allowing WAL fsync to be done via O_SYNC |
Date: | 2001-03-16 16:03:21 |
Message-ID: | 24833.984758601@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Alfred Perlstein <bright(at)wintelcom(dot)net> writes:
>> couldn't the syncer process cache opened files? is there any problem I
>> didn't consider ?
> 1) IPC latency, the amount of time it takes to call fsync will
> increase by at least two context switches.
> 2) a working set (number of files needed to be fsync'd) that
> is larger than the amount of files you wish to keep open.
These days we're really only interested in fsync'ing the current WAL
log file, so working set doesn't seem like a problem anymore. However
context-switch latency is likely to be a big problem. One thing we'd
definitely need before considering this is to replace the existing
spinlock mechanism with something more efficient.
Vadim has designed the WAL stuff in such a way that a separate
writer/syncer process would be easy to add; in fact it's almost that way
already, in that any backend can write or sync data that's been added
to the queue by any other backend. The question is whether it'd
actually buy anything to have another process. Good stuff to experiment
with for 7.2.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Jan Wieck | 2001-03-16 16:12:47 | Re: Performance monitor signal handler |
Previous Message | Tom Lane | 2001-03-16 15:55:53 | Re: ["Stephen C. Tweedie" <sct@redhat.com>] Re: O_DSYNC flag for open |