Thread: Default client_connection_check_interval to 10s on supported systems

Default client_connection_check_interval to 10s on supported systems

From
"Tristan Partin"
Date:
Hi,

I am proposing that the default value of
client_connection_check_interval be moved to a non-zero value on
systems where it is supported. I think it would be a nice quality of
life improvement. I have run into a problem where this would have been
useful before with regard to pgbench not currently handling SIGINT
corrently[0]. I basically picked 10s out of thin air and am happy to
change it to what others feel would be more appropriate. This doesn't
need to be a check that happens often because it should just be a
backstop for unusual scenarios or poorly programmed clients.

The original thread where Thomas committed these changes seemed to
indicate no performance impact[1]. The only reason that I can think of
this being turned off by default is that it isn't available on all
systems that Postgres supports. When this was committed however, the
only system that seemed to support EPOLLRDHUP was Linux. Seems like in
recent years this story has changed given the description of the
parameter.

> This option relies on kernel events exposed by Linux, macOS, illumos and
> the BSD family of operating systems, and is not currently available on
> other systems.

[0]: https://www.postgresql.org/message-id/CSSWBAX56CVY.291H6ZNNHK7EO@c3po
[1]: https://www.postgresql.org/message-id/CA+hUKG++KitzNUOxW2-koB1pKWD2cyUqA9vLj5bf0g_i7L1M0w@mail.gmail.com

--
Tristan Partin
Neon (https://neon.tech)

Attachment
"Tristan Partin" <tristan@neon.tech> writes:
> I am proposing that the default value of
> client_connection_check_interval be moved to a non-zero value on
> systems where it is supported. I think it would be a nice quality of
> life improvement.

I doubt that we need this, and I *really* doubt that it's appropriate
to use a timeout as short as 10s.

One reason not to try to enable it by default is exactly that the
default behavior would then be platform-dependent.  That's a
documentation problem we could do without.

            regards, tom lane



Re: Default client_connection_check_interval to 10s on supported systems

From
"Tristan Partin"
Date:
On Fri Jun 16, 2023 at 5:10 PM CDT, Tom Lane wrote:
> "Tristan Partin" <tristan@neon.tech> writes:
> > I am proposing that the default value of
> > client_connection_check_interval be moved to a non-zero value on
> > systems where it is supported. I think it would be a nice quality of
> > life improvement.
>
> I doubt that we need this, and I *really* doubt that it's appropriate
> to use a timeout as short as 10s.

Sure. Like I said, 10s is just a number pulled from thin air. The
original patches on the mailing list had this as low as 1s.

> One reason not to try to enable it by default is exactly that the
> default behavior would then be platform-dependent.  That's a
> documentation problem we could do without.

Totally fine with me if this is the reason for rejection. Just wanted to
put it out there for discussion since I don't think the original thread
covered the default value very much.

--
Tristan Partin
Neon (https://neon.tech)