diff options
Diffstat (limited to 'django/core/cache')
| -rw-r--r-- | django/core/cache/backends/memcached.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/django/core/cache/backends/memcached.py b/django/core/cache/backends/memcached.py index ed3f2af492..6a7ced6073 100644 --- a/django/core/cache/backends/memcached.py +++ b/django/core/cache/backends/memcached.py @@ -26,12 +26,16 @@ class BaseMemcachedCache(BaseCache): self._class = library.Client self._options = params.get('OPTIONS') or {} + @property + def client_servers(self): + return self._servers + @cached_property def _cache(self): """ Implement transparent thread-safe access to a memcached client. """ - return self._class(self._servers, **self._options) + return self._class(self.client_servers, **self._options) def get_backend_timeout(self, timeout=DEFAULT_TIMEOUT): """ @@ -192,6 +196,13 @@ class PyLibMCCache(BaseMemcachedCache): import pylibmc super().__init__(server, params, library=pylibmc, value_not_found_exception=pylibmc.NotFound) + @property + def client_servers(self): + output = [] + for server in self._servers: + output.append(server[5:] if server.startswith('unix:') else server) + return output + def touch(self, key, timeout=DEFAULT_TIMEOUT, version=None): key = self.make_key(key, version=version) self.validate_key(key) |
