From 5c868c735dc497b2839924fe440359f1905ed78f Mon Sep 17 00:00:00 2001 From: Richard Steinmetz Date: Tue, 23 Feb 2021 18:50:36 +0100 Subject: [PATCH] Don't allow executing cli if cache backend is unavailable Signed-off-by: Richard Steinmetz --- lib/private/Memcache/Factory.php | 32 ++++++-------------------------- 1 file changed, 6 insertions(+), 26 deletions(-) diff --git a/lib/private/Memcache/Factory.php b/lib/private/Memcache/Factory.php index 6db9b1007a..0e1fc2f80c 100644 --- a/lib/private/Memcache/Factory.php +++ b/lib/private/Memcache/Factory.php @@ -86,34 +86,14 @@ class Factory implements ICacheFactory { $missingCacheMessage = 'Memcache {class} not available for {use} cache'; $missingCacheHint = 'Is the matching PHP module installed and enabled?'; if (!class_exists($localCacheClass) || !$localCacheClass::isAvailable()) { - if (\OC::$CLI && !defined('PHPUNIT_RUN')) { - // CLI should not hard-fail on broken memcache - $this->logger->info($missingCacheMessage, [ - 'class' => $localCacheClass, - 'use' => 'local', - 'app' => 'cli' - ]); - $localCacheClass = self::NULL_CACHE; - } else { - throw new \OC\HintException(strtr($missingCacheMessage, [ - '{class}' => $localCacheClass, '{use}' => 'local' - ]), $missingCacheHint); - } + throw new \OC\HintException(strtr($missingCacheMessage, [ + '{class}' => $localCacheClass, '{use}' => 'local' + ]), $missingCacheHint); } if (!class_exists($distributedCacheClass) || !$distributedCacheClass::isAvailable()) { - if (\OC::$CLI && !defined('PHPUNIT_RUN')) { - // CLI should not hard-fail on broken memcache - $this->logger->info($missingCacheMessage, [ - 'class' => $distributedCacheClass, - 'use' => 'distributed', - 'app' => 'cli' - ]); - $distributedCacheClass = self::NULL_CACHE; - } else { - throw new \OC\HintException(strtr($missingCacheMessage, [ - '{class}' => $distributedCacheClass, '{use}' => 'distributed' - ]), $missingCacheHint); - } + throw new \OC\HintException(strtr($missingCacheMessage, [ + '{class}' => $distributedCacheClass, '{use}' => 'distributed' + ]), $missingCacheHint); } if (!($lockingCacheClass && class_exists($distributedCacheClass) && $lockingCacheClass::isAvailable())) { // don't fallback since the fallback might not be suitable for storing lock