| From: | Bruce Momjian <bruce(at)momjian(dot)us> |
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
| Cc: | "Jim C(dot) Nasby" <jim(at)nasby(dot)net>, ITAGAKI Takahiro <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: Load distributed checkpoint |
| Date: | 2006-12-28 20:55:56 |
| Message-ID: | 200612282055.kBSKtuH06281@momjian.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers pgsql-patches |
Tom Lane wrote:
> Bruce Momjian <bruce(at)momjian(dot)us> writes:
> > Jim C. Nasby wrote:
> >> What about the mmap/msync(?)/munmap idea someone mentioned?
>
> > I see that as similar to using O_DIRECT during checkpoint, which had
> > poor performance.
>
> That's a complete nonstarter on portability grounds, even if msync gave
> us the desired semantics, which it doesn't. It's no better than fsync
> for our purposes.
>
> To my mind the problem with fsync is not that it gives us too little
> control but that it gives too much: we have to specify a particular
> order of writing out files. What we'd really like is a version of
> sync(2) that tells us when it's done but doesn't constrain the I/O
> scheduler's choices at all. Unfortunately there's no such API ...
Yea, we used to use sync() but that did all files, not just the
PostgreSQL ones.
--
Bruce Momjian bruce(at)momjian(dot)us
EnterpriseDB http://www.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Stephen Frost | 2006-12-28 20:56:48 | Re: TODO: GNU TLS |
| Previous Message | Bruce Momjian | 2006-12-28 20:44:07 | Re: TODO: Add a GUC to control whether BEGIN inside |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Stefan Kaltenbrunner | 2006-12-28 21:02:22 | Re: Recent SIGSEGV failures in buildfarm HEAD |
| Previous Message | Bruce Momjian | 2006-12-28 20:33:52 | Re: [BUGS] BUG #2846: inconsistent and confusing |