From: | Magnus Hagander <magnus(at)hagander(dot)net> |
---|---|
To: | daveg <daveg(at)sonic(dot)net> |
Cc: | Andrew Chernow <ac(at)esilo(dot)com>, Tollef Fog Heen <tollef(dot)fog(dot)heen(at)collabora(dot)co(dot)uk>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: TCP keepalive support for libpq |
Date: | 2010-02-11 09:18:46 |
Message-ID: | 9837222c1002110118l52efc322x68d9349697301721@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
2010/2/10 daveg <daveg(at)sonic(dot)net>:
> On Tue, Feb 09, 2010 at 09:34:10AM -0500, Andrew Chernow wrote:
>> Tollef Fog Heen wrote:
>> >(please Cc me on replies, I am not subscribed)
>> >
>> >Hi,
>> >
>> >libpq currently does not use TCP keepalives. This is a problem in our
>> >case where we have some clients waiting for notifies and then the
>> >connection is dropped on the server side. The client never gets the FIN
>> >and thinks the connection is up. The attached patch unconditionally
>> >adds keepalives. I chose unconditionally as this is what the server
>> >does. We didn't need the ability to tune the timeouts, but that could
>> >be added with reasonable ease.
>>
>> ISTM that the default behavior should be keep alives disabled, as it is
>> now, and those wanting it can just set it in their apps:
>>
>> setsockopt(PQsocket(conn), SOL_SOCKET, SO_KEEPALIVE, ...)
>
> I disagree. I have clients who have problems with leftover client connections
> due to server host failures. They do not write apps in C. For a non-default
> change to be effective we would need to have all the client drivers, eg JDBC,
> psycopg, DBD-DBI, and the apps like psql make changes to turn it on. Adding
> this option as a non-default will not really help.
Yes, that's definitely the use-case. PQsocket() will work fine for C apps only.
But it should work fine as an option, no? As long as you can specify
it on the connection string - I don't think there are any interfaces
that won't take a connection string?
--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/
From | Date | Subject | |
---|---|---|---|
Next Message | Simon Riggs | 2010-02-11 10:10:32 | Re: [COMMITTERS] pgsql: Remove old-style VACUUM FULL (which was known for a little while |
Previous Message | Oleg Bartunov | 2010-02-11 08:38:01 | Re: knngist patch support |