pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Craig Ringer <ringerc@ringerc.id.au>
To: Richard Shaw <richard@aggress.net>
Cc: pgsql-performance@postgresql.org
Subject: Re: Rather large LA
Date: Mon, 05 Sep 2011 19:16:45 +0800
Message-ID: <4E64AF9D.3060601@ringerc.id.au> (raw)
In-Reply-To: <0894B018-542F-45B6-9A2E-A84DEA99AE0A@aggress.net>
References: <F757E48F-2B4F-496D-951B-B04ED98F8FD6@aggress.net>
	<4E64A94E.7000803@ringerc.id.au>
	<0894B018-542F-45B6-9A2E-A84DEA99AE0A@aggress.net>

On 5/09/2011 6:55 PM, Richard Shaw wrote:
> Hi Craig,
>
> Apologies, I should have made that clearer, I am using PgBouncer 1.4.1 in front of Postgres and included the config at the bottom of my original mail
>
Ah, I see. The point still stands: your hardware can *not* efficiently 
do work for 1000 concurrent backend workers. Reduce the maximum number 
of workers by setting a lower cap on the pool size and a lower 
max_connections. This won't work (you'll run out of pooler connections) 
unless you also set PgBouncer to transaction pooling mode instead of the 
default session pooling mode, which you're currently using. It is 
*important* to read the documentation on this before doing it, as there 
are implications for apps that use extra-transactional features like 
HOLD cursors and advisory locks.

See: http://pgbouncer.projects.postgresql.org/doc/usage.html

It may also be necessary to set PgBouncer to block (wait) rather than 
report an error when there is no pooled connection available to start a 
new transaction on. I'm not sure what PgBouncer's default behavior for 
that is and didn't see anything immediately clear in the pgbouncer(5) 
ini file man page.

--
Craig Ringer



view thread (22+ messages)  latest in thread

Message-ID: <4E64AF9D.3060601@ringerc.id.au>
Permalink:  ../4E64AF9D.3060601@ringerc.id.au/
Also on:    postgresql.org/message-id/4E64AF9D.3060601@ringerc.id.au

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-performance@postgresql.org
  Cc: ringerc@ringerc.id.au, richard@aggress.net
  Subject: Re: Rather large LA
  In-Reply-To: <4E64AF9D.3060601@ringerc.id.au>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox