diff options
Diffstat (limited to 'lib/private/Memcache/Memcached.php')
-rw-r--r-- | lib/private/Memcache/Memcached.php | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/lib/private/Memcache/Memcached.php b/lib/private/Memcache/Memcached.php index 12f45739374..dbff6dc2ec2 100644 --- a/lib/private/Memcache/Memcached.php +++ b/lib/private/Memcache/Memcached.php @@ -46,16 +46,6 @@ class Memcached extends Cache implements IMemcache { parent::__construct($prefix); if (is_null(self::$cache)) { self::$cache = new \Memcached(); - $servers = \OC::$server->getSystemConfig()->getValue('memcached_servers'); - if (!$servers) { - $server = \OC::$server->getSystemConfig()->getValue('memcached_server'); - if ($server) { - $servers = array($server); - } else { - $servers = array(array('localhost', 11211)); - } - } - self::$cache->addServers($servers); $defaultOptions = [ \Memcached::OPT_CONNECT_TIMEOUT => 50, @@ -85,6 +75,17 @@ class Memcached extends Cache implements IMemcache { } else { throw new HintException("Expected 'memcached_options' config to be an array, got $options"); } + + $servers = \OC::$server->getSystemConfig()->getValue('memcached_servers'); + if (!$servers) { + $server = \OC::$server->getSystemConfig()->getValue('memcached_server'); + if ($server) { + $servers = [$server]; + } else { + $servers = [['localhost', 11211]]; + } + } + self::$cache->addServers($servers); } } @@ -110,7 +111,9 @@ class Memcached extends Cache implements IMemcache { } else { $result = self::$cache->set($this->getNamespace() . $key, $value); } - $this->verifyReturnCode(); + if ($result !== true) { + $this->verifyReturnCode(); + } return $result; } |