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@xxxxxxxxxxxxx] Sent: Monday, March 20, 2006 2:16 PM To: Chris Cc: Rushabh Doshi; pgsql-general@xxxxxxxxxxxxxx Subject: Re: [GENERAL] db sever seems to be dropping connections Chris <dmagick@xxxxxxxxx> 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