From d8452eee062bf500ea1efb0f6791469b2f07d8f1 Mon Sep 17 00:00:00 2001 From: Jeffrey Lovitz Date: Tue, 20 Jul 2021 14:40:49 -0400 Subject: [PATCH] Add environment config to disable RDB checksum --- RLTest/env.py | 10 +++++++--- RLTest/redis_std.py | 5 ++++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/RLTest/env.py b/RLTest/env.py index 3b6d29d..24cf9ad 100644 --- a/RLTest/env.py +++ b/RLTest/env.py @@ -128,6 +128,7 @@ class Defaults: randomize_ports = False oss_password = None cluster_node_timeout = None + disable_rdb_checksum = False def getKwargs(self): kwargs = { @@ -144,7 +145,8 @@ def getKwargs(self): 'tlsCertFile': self.tls_cert_file, 'tlsKeyFile': self.tls_key_file, 'tlsCaCertFile': self.tls_ca_cert_file, - 'password': self.oss_password + 'password': self.oss_password, + 'rdbchecksum': self.disable_rdb_checksum } return kwargs @@ -166,7 +168,7 @@ def __init__(self, testName=None, testDescription=None, module=None, moduleArgs=None, env=None, useSlaves=None, shardsCount=None, decodeResponses=None, useAof=None, useRdbPreamble=None, forceTcp=False, useTLS=False, tlsCertFile=None, tlsKeyFile=None, tlsCaCertFile=None, logDir=None, redisBinaryPath=None, dmcBinaryPath=None, - redisEnterpriseBinaryPath=None, noDefaultModuleArgs=False, clusterNodeTimeout = None): + redisEnterpriseBinaryPath=None, noDefaultModuleArgs=False, clusterNodeTimeout=None, disableRdbChecksum=False): self.testName = testName if testName else '%s.%s' % (inspect.getmodule(inspect.currentframe().f_back).__name__, inspect.currentframe().f_back.f_code.co_name) self.testName = self.testName.replace(' ', '_') @@ -185,6 +187,7 @@ def __init__(self, testName=None, testDescription=None, module=None, self.decodeResponses = decodeResponses if decodeResponses else Defaults.decode_responses self.useAof = useAof if useAof else Defaults.use_aof self.useRdbPreamble = useRdbPreamble if useRdbPreamble is not None else Defaults.use_rdb_preamble + self.disableRdbChecksum = disableRdbChecksum if disableRdbChecksum else Defaults.disable_rdb_checksum self.verbose = Defaults.verbose self.logDir = logDir if logDir else Defaults.logdir self.forceTcp = forceTcp @@ -293,7 +296,8 @@ def getEnvKwargs(self): 'tlsCertFile': self.tlsCertFile, 'tlsKeyFile': self.tlsKeyFile, 'tlsCaCertFile': self.tlsCaCertFile, - 'clusterNodeTimeout': self.clusterNodeTimeout + 'clusterNodeTimeout': self.clusterNodeTimeout, + 'rdbchecksum': self.disableRdbChecksum } return kwargs diff --git a/RLTest/redis_std.py b/RLTest/redis_std.py index d4f947c..435114f 100644 --- a/RLTest/redis_std.py +++ b/RLTest/redis_std.py @@ -21,7 +21,7 @@ class StandardEnv(object): def __init__(self, redisBinaryPath, port=6379, modulePath=None, moduleArgs=None, outputFilesFormat=None, dbDirPath=None, useSlaves=False, serverId=1, password=None, libPath=None, clusterEnabled=False, decodeResponses=False, useAof=False, useRdbPreamble=True, debugger=None, noCatch=False, unix=False, verbose=False, useTLS=False, tlsCertFile=None, - tlsKeyFile=None, tlsCaCertFile=None, clusterNodeTimeout = None): + tlsKeyFile=None, tlsCaCertFile=None, clusterNodeTimeout=None, rdbchecksum=False): self.uuid = uuid.uuid4().hex self.redisBinaryPath = os.path.expanduser(redisBinaryPath) if redisBinaryPath.startswith( '~/') else redisBinaryPath @@ -53,6 +53,7 @@ def __init__(self, redisBinaryPath, port=6379, modulePath=None, moduleArgs=None, self.tlsKeyFile = tlsKeyFile self.tlsCaCertFile = tlsCaCertFile self.clusterNodeTimeout = clusterNodeTimeout + self.rdbchecksum = rdbchecksum if port > 0: self.port = port @@ -197,6 +198,8 @@ def createCmdArgs(self, role): cmdArgs += ['--tls-cert-file', self.getTLSCertFile()] cmdArgs += ['--tls-key-file', self.getTLSKeyFile()] cmdArgs += ['--tls-ca-cert-file', self.getTLSCACertFile()] + if self.rdbchecksum: + cmdArgs += ['--rdbchecksum', 'no'] return cmdArgs