Re: Anyone interested in improving postgresql scaling?

From: Kris Kennaway <kris(at)obsecurity(dot)org>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Kris Kennaway <kris(at)obsecurity(dot)org>, Mark Kirkwood <markir(at)paradise(dot)net(dot)nz>, current(at)FreeBSD(dot)org, performance(at)FreeBSD(dot)org, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Anyone interested in improving postgresql scaling?
Date: 2007-04-10 22:28:31
Message-ID: 20070410222831.GA75767@xor.obsecurity.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Apr 10, 2007 at 06:26:37PM -0400, Tom Lane wrote:
> Kris Kennaway <kris(at)obsecurity(dot)org> writes:
> > On Tue, Apr 10, 2007 at 05:36:17PM -0400, Tom Lane wrote:
> >> Anyway I'd be interested to know what the test case is, and which PG
> >> version you were testing.
>
> > I used 8.2 (and some older version when I first noticed it a year ago)
> > and either sysbench or supersmack will show it - presumably anything
> > that makes simultaneous queries. Just instrument sleepq_broadcast()
> > to e.g. log a KTR event when it wakes more than 1 process and you'll
> > see it happening.
>
> Sorry, I'm not much of a BSD kernel hacker ... but sleepq_broadcast
> seems a rather generic name. Is that called *only* from semop?

It's part of how wakeup() is implemented.

> I'm wondering if you are seeing simultaneous wakeup from some other
> cause --- sleep timeout being the obvious possibility. We are aware
> of behaviors (search the PG lists for "context swap storm") where a
> number of backends will all fail to get a spinlock and do short usleep
> or select-timeout waits. In this situation they'd all wake up at the
> next scheduler clock tick ...

Nope, it's not this.

Kris

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2007-04-10 22:33:38 Re: [mux@FreeBSD.org: Re: Anyone interested in improving postgresql scaling?]
Previous Message Tom Lane 2007-04-10 22:26:37 Re: Anyone interested in improving postgresql scaling?