RE: Timeout parameters - Mailing list pgsql-hackers

From Jamison, Kirk
Subject RE: Timeout parameters
Date
Msg-id D09B13F772D2274BB348A310EE3027C643E268@g01jpexmbkw24
Whole thread Raw
In response to RE: Timeout parameters  (MikalaiKeida@ibagroup.eu)
List pgsql-hackers

Hi,

 

> > tcp_socket_timeout (integer)
> >
> > Terminate and restart any session that has been idle for more than
> > the specified number of milliseconds to prevent client from infinite
> > waiting for server due to dead connection. This can be used both as
> > a brute force global query timeout and detecting network problems.
> > A value of zero (the default) turns this off.


On Friday, February 22, 2019 12:01 AM (GMT+9), MikalaiKeida@ibagroup.eu

wrote:
> I am not very  familiar with the PostgreSQL source code. Nevertheless,

> the main idea of this parameter is clear for me - closing a connection

> when the PostgreSQL server does not response due to any reason. However,

> I have not found  in the discussion a reference that this parameter can

> be applied to the TCP as well as to the UNIX-domain sockets. Moreover,

> this parameter works out of communication layer. When we consider TCP

> communication, the failover is covered by keep_alive and tpc_user_timeout

> parameters.
>

> According to it, we should not use 'tcp' prefix in this parameter name,

> 'socket' sub string is not suitable too.
>
> 'timeout' is OK.
>
> This parameter works on the client side. So the word 'client' is a good

> candidate for using in this parameter name.
> This parameter affects only when we send a 'query' to the pg server.

#Shookedt. Yeah, there should be no “tcp”in that parameter, so it was

my mistake.

Regarding whether we use the “socket_timeout” or “client_query_timeout”,

why is socket not suitable?

Although I’m not arguing against client_query_timeout as it’s also

a good candidate parameter name.


> Based on it, we can build a name for this parameter 'client_query_timeout'.
>
> The suggested explanation of this parameter does not follow the aim of

> integrating this parameter:
>
> client_query_timeout
>
> Specifies the number of seconds to prevent client from infinite waiting

> for server acknowledge to the sent query due to dead connection. This

> can be used both as a force global query timeout and network problems

> detector. A value of zero (the default) turns this off.

 

Thanks for the fix. In the client side though, other parameters are specified

in milliseconds, so I used the same.

 

Regards,

Kirk Jamison

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Removing unneeded self joins
Next
From: Tom Lane
Date:
Subject: Re: boolean and bool in documentation