Hello Mikalai-san.
> From: MikalaiKeida@ibagroup.eu <MikalaiKeida@ibagroup.eu>
> The main idea of my comment was to avoid handling logical errors ( "client-side
> timeout") in advance to the detection of network problems!!!!
> Therefore, I suggested setting "client-side timeout" greater of equal to the
> TCP_USER_TIMEOUT or note about it in the documentation.
I have caught up with your intension. You have a point! Thank you.
> I'm afraid to be mistaken but I think that when network is alive it means that OS
> does not hang.
> I think that it is a responsibility of the OS kernel to manage network connections.
> Keep_alive mechanism checks a network state by exchanging data between
> client's and server's OS kernels. I think the same procedure is used in
> TCP_USER_TIMEOUT mechanism. So, when keep_alive and
> TCP_USER_TIMEOUT say that network works correct, it means that kernels of
> client and server do not hang. On the other hand it does not guarantee that
> PostgreSQL server is not hang. "client-side timeout" should handle this problem
> when network problem was not detected.
Thank you for your kind explain.
Best regards,
---------------------
Ryohei Nagaura