From 41ddbec40f1b2c59a68464efc8ba7b127cda444e Mon Sep 17 00:00:00 2001 From: Vincent Petry Date: Fri, 23 Jul 2021 09:53:06 +0200 Subject: [PATCH] Allow empty Redis config When Redis config is empty, use defaults. However when a Redis cluster config is specified, the "seeds" attribute is mandatory. Signed-off-by: Vincent Petry --- lib/private/RedisFactory.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/private/RedisFactory.php b/lib/private/RedisFactory.php index 7609a75d52d33..8160f2569e086 100644 --- a/lib/private/RedisFactory.php +++ b/lib/private/RedisFactory.php @@ -51,10 +51,6 @@ private function create() { ? $this->config->getValue('redis.cluster', []) : $this->config->getValue('redis', []); - if (empty($config)) { - throw new \Exception('Redis config is empty'); - } - if ($isCluster && !class_exists('RedisCluster')) { throw new \Exception('Redis Cluster support is not available'); } @@ -86,6 +82,10 @@ private function create() { // cluster config if ($isCluster) { + if (!isset($config['seeds'])) { + throw new \Exception('Redis cluster config is missing the "seeds" attribute'); + } + // Support for older phpredis versions not supporting connectionParameters if ($connectionParameters !== null) { $this->instance = new \RedisCluster(null, $config['seeds'], $timeout, $readTimeout, false, $auth, $connectionParameters);