Re: Idle session timeout? - Mailing list pgsql-general

From Sean Murphy
Subject Re: Idle session timeout?
Date
Msg-id 4640E4B0.3030204@equipoint.com
Whole thread Raw
In response to Re: Idle session timeout?  (Scott Marlowe <smarlowe@g2switchworks.com>)
Responses Re: Idle session timeout?
List pgsql-general
Scott Marlowe wrote:
> On Tue, 2007-05-08 at 12:19, Sean Murphy wrote:
>> Tom Lane wrote:
>>> Sean Murphy <Sean.Murphy@equipoint.com> writes:
>>>> I'm WAY out of my depth here, but my impression, based on the
>>>> circumstances, is that there is some sort of an idle session timeout
>>>> kicking in (most likely on the client side) and dropping the connection.
>>> There's no such timeout in the Postgres server, for sure.  I would
>>> actually bet that your problem is in some router between the client and
>>> the server.  In particular, routers that do NAT address mapping
>>> typically have a timeout after which they will forget the mapping for an
>>> idle connection.  If you've got one of those, see if it'll let you
>>> change the timeout.
>>>
>>> If you can't do that, you might think about teaching your client-side
>>> code to send dummy queries every so often.
>>>
>>>             regards, tom lane
>>>
>> I've already maxed out the connection timeout at the firewall... and
>> I've been using dummy queries every five minutes, but it just feels like
>> a crutch to do so.
>
> Have you looked into tcp keepalive settings?
>
> net.ipv4.tcp_keepalive_intvl = 75
> net.ipv4.tcp_keepalive_probes = 9
> net.ipv4.tcp_keepalive_time = 500
>
> Not sure if those settings will help with an NAT router or not but it's
> worth a try. Pgsql 8.2 can set those for you.
>

I may be celebrating prematurely, but resetting the tcp_keepalive
parameters seems to have done the trick - I left a pgAdmin connection
that *always* drops after inactivity up while I went to lunch and it was
still alive when I got back.

Is there a way to alter the tcp_keepalive settings on an app-by-app
basis rather than for the whole system?


Thanks!

pgsql-general by date:

Previous
From: Steve Atkins
Date:
Subject: Pulling data from a filesystem level backup
Next
From: "Porell, Chris"
Date:
Subject: Re: log shipping/DB recovery with PostgreSQL 7.4