diff --git a/CHANGELOG.rst b/CHANGELOG.rst index b73d1d7..b0a869e 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,6 +1,10 @@ Changelog ========= +next +---- + - Ensure compress parameters are used in `set_many`. + 0.6.1 - 2015-12-28 ------------------ - Supports Django 1.7 through 1.9 diff --git a/django_pylibmc/memcached.py b/django_pylibmc/memcached.py index 6349940..ecd9dcf 100644 --- a/django_pylibmc/memcached.py +++ b/django_pylibmc/memcached.py @@ -160,9 +160,15 @@ def get_many(self, *args, **kwargs): log.error('MemcachedError: %s' % e, exc_info=True) return {} - def set_many(self, *args, **kwargs): + def set_many(self, data, timeout=DEFAULT_TIMEOUT, version=None): + safe_data = {} + for key, value in data.items(): + key = self.make_key(key, version=version) + safe_data[key] = value try: - return super(PyLibMCCache, self).set_many(*args, **kwargs) + self._cache.set_multi(safe_data, + self.get_backend_timeout(timeout), + **COMPRESS_KWARGS) except MemcachedError as e: log.error('MemcachedError: %s' % e, exc_info=True) return False