diff options
author | Côme Chilliet <come.chilliet@nextcloud.com> | 2022-12-20 12:01:25 +0100 |
---|---|---|
committer | Côme Chilliet <come.chilliet@nextcloud.com> | 2022-12-20 12:01:25 +0100 |
commit | 1ac2c748302b3ebe846bae8592a35abaf83ff41c (patch) | |
tree | 717165763cf13ca16d2cdc4d44995ab5e5e9850f /apps/user_ldap/lib | |
parent | 4d0403009d8449a88faf7ffc3c6df196c5ac9948 (diff) | |
download | nextcloud-server-1ac2c748302b3ebe846bae8592a35abaf83ff41c.tar.gz nextcloud-server-1ac2c748302b3ebe846bae8592a35abaf83ff41c.zip |
Apply a longer TTL of 15min to falling back on backup server
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Diffstat (limited to 'apps/user_ldap/lib')
-rw-r--r-- | apps/user_ldap/lib/Connection.php | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/apps/user_ldap/lib/Connection.php b/apps/user_ldap/lib/Connection.php index 95ddd3fc51c..6700890c8c7 100644 --- a/apps/user_ldap/lib/Connection.php +++ b/apps/user_ldap/lib/Connection.php @@ -292,7 +292,7 @@ class Connection extends LDAPUtility { * @param string $key * @param mixed $value */ - public function writeToCache($key, $value): void { + public function writeToCache($key, $value, int $ttlOverride = null): void { if (!$this->configured) { $this->readConfiguration(); } @@ -303,7 +303,8 @@ class Connection extends LDAPUtility { } $key = $this->getCacheKey($key); $value = base64_encode(json_encode($value)); - $this->cache->set($key, $value, $this->configuration->ldapCacheTTL); + $ttl = $ttlOverride ?? $this->configuration->ldapCacheTTL; + $this->cache->set($key, $value, $ttl); } public function clearCache() { @@ -635,8 +636,8 @@ class Connection extends LDAPUtility { $this->ldap->errno($this->ldapConnectionRes) : -1; if ($bindStatus && $error === 0 && !$forceBackupHost) { //when bind to backup server succeeded and failed to main server, - //skip contacting him until next cache refresh - $this->writeToCache($overrideCacheKey, true); + //skip contacting it for 15min + $this->writeToCache($overrideCacheKey, true, 60 * 15); } return $bindStatus; |