Re: db sever seems to be dropping connections

From: "Rushabh Doshi" <rdoshi(at)vmware(dot)com>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "Chris" <dmagick(at)gmail(dot)com>
Cc: <pgsql-general(at)postgresql(dot)org>
Subject: Re: db sever seems to be dropping connections
Date: 2006-03-21 21:39:55
Message-ID: 428B5EAB52D41B48BFE2D7D21C522D2B7C97EF@PA-EXCH01.vmware.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-interfaces

Tom,

This is my problem. I have a connection to the database using DB->connect.
Apparently, this connection sits idle for around an hour or so because of my
application, and after that it has to do something. So I check that if the
handle is still a valid one or not. If it's not, then re-establish the
connection and use that handle. This works fine. However, when the time comes
to destroy all the handles, the first handle (stale) seems to be throwing
warning/error messages on exit.

DBI handle: DBI::db=HASH(0x907045c) # this is the latest handle
result of disconnect: 1
DBI handle: DBI::db=HASH(0x9480bdc) # this is the stale handle
DBD::Pg::db disconnect failed: rollback failed at *** line 241.
result of disconnect:
disconnect failed for DBI::db=HASH(0x9480bdc): DBD::Pg::db disconnect
failed: rollback failed at *** line 241.

I've used evals in the DESTROY to avoid these messages. Still this keeps
happening. I've tried using connect_cached but to no effect.

Thanks,
--Rushabh Doshi

-----Original Message-----
From: Tom Lane [mailto:tgl(at)sss(dot)pgh(dot)pa(dot)us]
Sent: Monday, March 20, 2006 2:16 PM
To: Chris
Cc: Rushabh Doshi; pgsql-general(at)postgresql(dot)org
Subject: Re: [GENERAL] db sever seems to be dropping connections

Chris <dmagick(at)gmail(dot)com> writes:
> Rushabh Doshi wrote:
>> I'm facing an issue with PostgreSQL .. The server seems to drop the
>> connection to my script after a couple of hours (sometimes, not always).

> Sounds more like a network issue.

Yeah --- in particular, it sounds like a connection timeout imposed by a
router or firewall. A lot of NAT-capable routers will drop idle TCP
connections after a certain period of inactivity (typically an hour or so ...
if you're lucky, the router will let you adjust the timeout).
There is no connection timeout built into Postgres itself, so you should be
looking for network-related limitations.

regards, tom lane

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Kevin Murphy 2006-03-21 21:58:01 index scan backward plan question
Previous Message Tyler MacDonald 2006-03-21 21:28:07 W3C XML Schema -> PostgreSQL?

Browse pgsql-interfaces by date

  From Date Subject
Next Message Vivek Khera 2006-03-22 16:46:38 Re: db sever seems to be dropping connections
Previous Message Mark Morgan Lloyd 2006-03-21 14:56:14 Re: using libpq with the free Borland compiler or DEV-cpp