Skip to content

Commit 9af030c

Browse files
author
DvirDukhan
committed
added cluster node timeout config
1 parent 3986ff9 commit 9af030c

File tree

3 files changed

+14
-3
lines changed

3 files changed

+14
-3
lines changed

RLTest/env.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@ class Defaults:
127127
use_unix = False
128128
randomize_ports = False
129129
oss_password = None
130+
cluster_node_timeout = None
130131

131132
def getKwargs(self):
132133
kwargs = {
@@ -165,7 +166,7 @@ def __init__(self, testName=None, testDescription=None, module=None,
165166
moduleArgs=None, env=None, useSlaves=None, shardsCount=None, decodeResponses=None,
166167
useAof=None, useRdbPreamble=None, forceTcp=False, useTLS=False, tlsCertFile=None, tlsKeyFile=None,
167168
tlsCaCertFile=None, logDir=None, redisBinaryPath=None, dmcBinaryPath=None,
168-
redisEnterpriseBinaryPath=None, noDefaultModuleArgs=False):
169+
redisEnterpriseBinaryPath=None, noDefaultModuleArgs=False, clusterNodeTimeout = None):
169170

170171
self.testName = testName if testName else '%s.%s' % (inspect.getmodule(inspect.currentframe().f_back).__name__, inspect.currentframe().f_back.f_code.co_name)
171172
self.testName = self.testName.replace(' ', '_')
@@ -196,6 +197,7 @@ def __init__(self, testName=None, testDescription=None, module=None,
196197
self.redisBinaryPath = expandBinary(redisBinaryPath) if redisBinaryPath else Defaults.binary
197198
self.dmcBinaryPath = expandBinary(dmcBinaryPath) if dmcBinaryPath else Defaults.proxy_binary
198199
self.redisEnterpriseBinaryPath = expandBinary(redisEnterpriseBinaryPath) if redisEnterpriseBinaryPath else Defaults.re_binary
200+
self.clusterNodeTimeout = clusterNodeTimeout if clusterNodeTimeout else Defaults.cluster_node_timeout
199201

200202
self.assertionFailedSummary = []
201203

@@ -291,6 +293,7 @@ def getEnvKwargs(self):
291293
'tlsCertFile': self.tlsCertFile,
292294
'tlsKeyFile': self.tlsKeyFile,
293295
'tlsCaCertFile': self.tlsCaCertFile,
296+
'clusterNodeTimeout': self.clusterNodeTimeout
294297
}
295298
return kwargs
296299

RLTest/redis_std.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class StandardEnv(object):
2121
def __init__(self, redisBinaryPath, port=6379, modulePath=None, moduleArgs=None, outputFilesFormat=None,
2222
dbDirPath=None, useSlaves=False, serverId=1, password=None, libPath=None, clusterEnabled=False, decodeResponses=False,
2323
useAof=False, useRdbPreamble=True, debugger=None, noCatch=False, unix=False, verbose=False, useTLS=False, tlsCertFile=None,
24-
tlsKeyFile=None, tlsCaCertFile=None):
24+
tlsKeyFile=None, tlsCaCertFile=None, clusterNodeTimeout = None):
2525
self.uuid = uuid.uuid4().hex
2626
self.redisBinaryPath = os.path.expanduser(redisBinaryPath) if redisBinaryPath.startswith(
2727
'~/') else redisBinaryPath
@@ -52,6 +52,7 @@ def __init__(self, redisBinaryPath, port=6379, modulePath=None, moduleArgs=None,
5252
self.tlsCertFile = tlsCertFile
5353
self.tlsKeyFile = tlsKeyFile
5454
self.tlsCaCertFile = tlsCaCertFile
55+
self.clusterNondeTimeout = clusterNodeTimeout
5556

5657
if port > 0:
5758
self.port = port
@@ -184,7 +185,7 @@ def createCmdArgs(self, role):
184185
if self.clusterEnabled and role is not SLAVE:
185186
# creating .cluster.conf in /tmp as lock fails on NFS
186187
cmdArgs += ['--cluster-enabled', 'yes', '--cluster-config-file', '/tmp/' + self._getFileName(role, '.cluster.conf'),
187-
'--cluster-node-timeout', '5000']
188+
'--cluster-node-timeout', '5000' if self.clusterNodeTimeout is None else str(self.clusterNodeTimeout)]
188189
if self.useTLS:
189190
cmdArgs += ['--tls-cluster', 'yes']
190191
if self.useAof:

tests/unit/test_redis_std.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -386,4 +386,11 @@ def test_get_connection_by_key(self):
386386
key = 'x{%i}' % i
387387
con = std_env.getConnectionByKey(key, "set")
388388
assert(con.set(key, "1"))
389+
std_env.stopEnv()
390+
391+
def test_cluster_node_timeout(self):
392+
std_env = StandardEnv(redisBinaryPath=REDIS_BINARY, outputFilesFormat='%s-test', dbDirPath=self.test_dir, clusterNodeTimeout=60000)
393+
std_env.startEnv()
394+
con = std_env.getConnection()
395+
assert(con.execute_command("CONFIG", "GET", "cluster-node-timeout"), "60000")
389396
std_env.stopEnv()

0 commit comments

Comments
 (0)