From: | Simon Riggs <simon(at)2ndQuadrant(dot)com> |
---|---|
To: | Fujii Masao <masao(dot)fujii(at)gmail(dot)com> |
Cc: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Synch Rep v5 |
Date: | 2009-01-10 13:42:20 |
Message-ID: | 1231594940.18005.673.camel@ebony.2ndQuadrant |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Sat, 2009-01-10 at 19:16 +0900, Fujii Masao wrote:
> On Thu, Dec 18, 2008 at 9:55 AM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
> >> 4. sleeping
> >> http://archives.postgresql.org/pgsql-hackers/2008-12/msg00438.php
> >>
> >> I'm looking for the better idea. How should we resolve that problem?
> >> Only reduce the timeout of pq_wait to 100ms? Get rid of
> >> SA_RESTART only during pq_wait as follows?
> >>
> >> remove SA_RESTART
> >> pq_wait()
> >> add SA_RESTART
> >
> > Not sure, will consider. Ask others as well.
>
> I've not got an idea yet. Now (v5), I only reduce the timeout of
> pq_wait to 100ms. Is this sufficient? Do you have any good idea?
To be honest I didn't follow that part of the discussion.
My preferred approach, mentioned earlier in the summer, was to use a
mechanism very similar to LWlocks. A proc queue with semaphores. Minimum
delay, no need for signals. The process doing the wakeup can walk up the
queue until it finds somebody whose wait-for-LSN is higher than has just
been sent/written. Doing it this way also gives us group commit when
synch rep is not enabled.
--
Simon Riggs www.2ndQuadrant.com
PostgreSQL Training, Services and Support
From | Date | Subject | |
---|---|---|---|
Next Message | Hiroshi Saito | 2009-01-10 16:04:18 | Re: Re: [COMMITTERS] pgsql: Explicitly bind gettext() to the UTF8 locale when in use. |
Previous Message | Simon Riggs | 2009-01-10 13:36:13 | Re: Synch Rep v5 |