From a31429aae5aa6c8271ec3dee663d70a67f64e60d Mon Sep 17 00:00:00 2001 From: Jelte Fennema Date: Tue, 24 Aug 2021 10:48:40 +0200 Subject: [PATCH] Allow configuring tcp_user_timeout using citus.node_conn_info (#5203) `tcp_user_timeout` is the awesome relatively unknown big brother of the TCP keepalive related options. Instead of depending on keepalives being sent, this determines that a socket is dead by waiting at most N seconds for an ack of data that it has sent. It's exposed in libpq starting from PG12. --- src/backend/distributed/shared_library_init.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/backend/distributed/shared_library_init.c b/src/backend/distributed/shared_library_init.c index 9d2f9113e..33b3b4304 100644 --- a/src/backend/distributed/shared_library_init.c +++ b/src/backend/distributed/shared_library_init.c @@ -1896,6 +1896,7 @@ NodeConninfoGucCheckHook(char **newval, void **extra, GucSource source) "sslcrl", "sslmode", "sslrootcert" + "tcp_user_timeout", }; char *errorMsg = NULL; bool conninfoValid = CheckConninfo(*newval, allowedConninfoKeywords,