Re: Keepalives win32 - Mailing list pgsql-hackers

From Magnus Hagander
Subject Re: Keepalives win32
Date
Msg-id AANLkTinnC9aoBJq9fdAcNZ_NcDLlvMbPvyoF5SxfanlX@mail.gmail.com
Whole thread Raw
In response to Re: Keepalives win32  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Keepalives win32  (Magnus Hagander <magnus@hagander.net>)
List pgsql-hackers
On Mon, Jun 28, 2010 at 21:03, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Magnus Hagander <magnus@hagander.net> writes:
>> On Mon, Jun 28, 2010 at 20:45, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>>> I vote for #2.  It's the least inconsistent --- we don't pay attention
>>> to the registry for much of anything else, do we?
>
>> Directly, no? Indirectly, we do. For every other TCP parameter
>> (because the registry controls what we'll get as the default when we
>> "just use things")
>
> Not if we make the code use the RFC values as the defaults.  I'm
> envisioning the GUC assign hooks doing something like
>
> #ifdef WIN32
>        if (newval == 0)
>                newval = RFC-specified-default;
> #endif

Right. (I've only looked at the libpq side so far)

Also, we could avoid caling it *at all* if neither one of those
parameters is set. That'll take a bit more code (using the
unix-codepath of setsockopt() to enable keepalives at all), but it
shouldn't amount to many lines..


> so that the main GUC logic can still think that zero means "use the
> default".  We're just redefining where the default comes from.

Yeah.


> This would be a change from previous behavior, but so what?
> Implementing any functionality at all here is a change from previous
> behavior on Windows.  I don't have the slightest problem with saying
> "as of 9.0, set these values via postgresql.conf, not the registry".

Works for me.

-- Magnus HaganderMe: http://www.hagander.net/Work: http://www.redpill-linpro.com/


pgsql-hackers by date:

Previous
From: Magnus Hagander
Date:
Subject: Re: Keepalives win32
Next
From: Tom Lane
Date:
Subject: Re: hstore ==> and deprecate =>