Increase the default value of citus.node_connection_timeout

The previous default was 5 seconds, and we change it to 30 seconds.
The main motivation for this is that for busy clusters, 5 seconds
can be too aggressive. Especially with connection throttling, the servers
might be kept busy for a really long time, and users may see the
connection errors more frequently.

We've done some sanity checks, for really quick queries (like
`SELECT count(*) from table`), 30 seconds is a decent value even
if users execute 300 distributed queries on the coordinator. We've
verified this on Hyperscale(Citus).
pull/3797/head
Onder Kalaci 2020-04-24 14:23:29 +02:00
parent 30a0a955d1
commit bc54c5125f
2 changed files with 2 additions and 2 deletions

View File

@ -41,7 +41,7 @@
#include "utils/memutils.h" #include "utils/memutils.h"
int NodeConnectionTimeout = 5000; int NodeConnectionTimeout = 30000;
int MaxCachedConnectionsPerWorker = 1; int MaxCachedConnectionsPerWorker = 1;
HTAB *ConnectionHash = NULL; HTAB *ConnectionHash = NULL;

View File

@ -450,7 +450,7 @@ RegisterCitusConfigVariables(void)
gettext_noop("Sets the maximum duration to connect to worker nodes."), gettext_noop("Sets the maximum duration to connect to worker nodes."),
NULL, NULL,
&NodeConnectionTimeout, &NodeConnectionTimeout,
5 * MS_PER_SECOND, 10 * MS, MS_PER_HOUR, 30 * MS_PER_SECOND, 10 * MS, MS_PER_HOUR,
PGC_USERSET, PGC_USERSET,
GUC_UNIT_MS | GUC_STANDARD, GUC_UNIT_MS | GUC_STANDARD,
NULL, NULL, NULL); NULL, NULL, NULL);