Peter Geoghegan <peter.geoghegan86@gmail.com> writes:
> I use the dblink contrib module to do so. I loop through some records,
> form a connection string from those records, and do this:
> PERFORM dblink_connect(conn_str);
> ....
> Making many successive calls to this function of mine eventually
> exhausts the connection limit of my remote DBs (although I think that
> the default connection limit is something like 5 or 10, and it takes
> more calls than that). I understood from the dblink docs that calling
> this particular overload of dblink_connect wouldn't do so, because
> each subsequent call to it disconnects the last, because an "unnamed
> connection is opened, replacing any existing unnamed connection".
What PG version is this? 8.4 has a connection leak in some cases:
http://archives.postgresql.org/pgsql-committers/2009-09/msg00125.php
This fix hasn't made any released version yet, but you could apply the
source patch shown there.
regards, tom lane