Enable SO_KEEPALIVE
This hopefully prevents unnecessary TCP timeouts.
This commit is contained in:
@ -950,11 +950,15 @@ bool configure_network_socket(int so, int type)
|
|||||||
{
|
{
|
||||||
int one = 1;
|
int one = 1;
|
||||||
|
|
||||||
if (type != AF_UNIX && setsockopt(so, IPPROTO_TCP, TCP_NODELAY, &one, sizeof(one)) != 0)
|
if (type != AF_UNIX)
|
||||||
{
|
{
|
||||||
MXS_ERROR("Failed to set socket option: %d, %s.", errno, mxs_strerror(errno));
|
if (setsockopt(so, IPPROTO_TCP, TCP_NODELAY, &one, sizeof(one)) != 0
|
||||||
mxb_assert(!true);
|
|| setsockopt(so, SOL_SOCKET, SO_KEEPALIVE, &one, sizeof(one)) != 0)
|
||||||
return false;
|
{
|
||||||
|
MXS_ERROR("Failed to set socket option: %d, %s.", errno, mxs_strerror(errno));
|
||||||
|
mxb_assert(!true);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return setnonblocking(so) == 0;
|
return setnonblocking(so) == 0;
|
||||||
|
Reference in New Issue
Block a user