#28564: Cache backend with python-memcached broken: TypeError: __init__() got an
unexpected keyword argument 'KEY_PREFIX'
-----------------------------------------------+------------------------
Reporter: tom | Owner: nobody
Type: Bug | Status: new
Component: Core (Cache system) | Version: 1.11
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 0
UI/UX: 0 |
-----------------------------------------------+------------------------
Using django-1.11 together with python-memcached-1.58 on SLES12SP3.
The cache backend is configured with:
{{{
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': [
'192.168.249.81:11211',
],
'OPTIONS': {
'KEY_PREFIX': 'horizon-config-default'
}
}
}
}}}
Accessing the auth/login url leads now to:
{{{
[Mon Sep 04 05:47:58.616177 2017] [wsgi:error] [pid 13501] Internal Server
Error: /auth/login/
[Mon Sep 04 05:47:58.616189 2017] [wsgi:error] [pid 13501] Traceback (most
recent call last):
[Mon Sep 04 05:47:58.616192 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/core/handlers/exception.py", line
41, in inner
[Mon Sep 04 05:47:58.616194 2017] [wsgi:error] [pid 13501] response =
get_response(request)
[Mon Sep 04 05:47:58.616197 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 249,
in _legacy_get_response
[Mon Sep 04 05:47:58.616199 2017] [wsgi:error] [pid 13501] response =
self._get_response(request)
[Mon Sep 04 05:47:58.616201 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 217,
in _get_response
[Mon Sep 04 05:47:58.616203 2017] [wsgi:error] [pid 13501] response =
self.process_exception_by_middleware(e, request)
[Mon Sep 04 05:47:58.616214 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 215,
in _get_response
[Mon Sep 04 05:47:58.616216 2017] [wsgi:error] [pid 13501] response =
response.render()
[Mon Sep 04 05:47:58.616218 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/response.py", line 107,
in render
[Mon Sep 04 05:47:58.616220 2017] [wsgi:error] [pid 13501]
self.content = self.rendered_content
[Mon Sep 04 05:47:58.616222 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/response.py", line 84,
in rendered_content
[Mon Sep 04 05:47:58.616224 2017] [wsgi:error] [pid 13501] content =
template.render(context, self._request)
[Mon Sep 04 05:47:58.616226 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/backends/django.py",
line 66, in render
[Mon Sep 04 05:47:58.616238 2017] [wsgi:error] [pid 13501] return
self.template.render(context)
[Mon Sep 04 05:47:58.616240 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 207, in
render
[Mon Sep 04 05:47:58.616242 2017] [wsgi:error] [pid 13501] return
self._render(context)
[Mon Sep 04 05:47:58.616244 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 199, in
_render
[Mon Sep 04 05:47:58.616245 2017] [wsgi:error] [pid 13501] return
self.nodelist.render(context)
[Mon Sep 04 05:47:58.616247 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 990, in
render
[Mon Sep 04 05:47:58.616249 2017] [wsgi:error] [pid 13501] bit =
node.render_annotated(context)
[Mon Sep 04 05:47:58.616251 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 957, in
render_annotated
[Mon Sep 04 05:47:58.616252 2017] [wsgi:error] [pid 13501] return
self.render(context)
[Mon Sep 04 05:47:58.616254 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/loader_tags.py", line
177, in render
[Mon Sep 04 05:47:58.616256 2017] [wsgi:error] [pid 13501] return
compiled_parent._render(context)
[Mon Sep 04 05:47:58.616258 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 199, in
_render
[Mon Sep 04 05:47:58.616259 2017] [wsgi:error] [pid 13501] return
self.nodelist.render(context)
[Mon Sep 04 05:47:58.616261 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 990, in
render
[Mon Sep 04 05:47:58.616263 2017] [wsgi:error] [pid 13501] bit =
node.render_annotated(context)
[Mon Sep 04 05:47:58.616265 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 957, in
render_annotated
[Mon Sep 04 05:47:58.616266 2017] [wsgi:error] [pid 13501] return
self.render(context)
[Mon Sep 04 05:47:58.616268 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/loader_tags.py", line
72, in render
[Mon Sep 04 05:47:58.616270 2017] [wsgi:error] [pid 13501] result =
block.nodelist.render(context)
[Mon Sep 04 05:47:58.616272 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 990, in
render
[Mon Sep 04 05:47:58.616285 2017] [wsgi:error] [pid 13501] bit =
node.render_annotated(context)
[Mon Sep 04 05:47:58.616287 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 957, in
render_annotated
[Mon Sep 04 05:47:58.616289 2017] [wsgi:error] [pid 13501] return
self.render(context)
[Mon Sep 04 05:47:58.616290 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/loader_tags.py", line
216, in render
[Mon Sep 04 05:47:58.616292 2017] [wsgi:error] [pid 13501] return
template.render(context)
[Mon Sep 04 05:47:58.616296 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 209, in
render
[Mon Sep 04 05:47:58.616298 2017] [wsgi:error] [pid 13501] return
self._render(context)
[Mon Sep 04 05:47:58.616300 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 199, in
_render
[Mon Sep 04 05:47:58.616302 2017] [wsgi:error] [pid 13501] return
self.nodelist.render(context)
[Mon Sep 04 05:47:58.616304 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 990, in
render
[Mon Sep 04 05:47:58.616305 2017] [wsgi:error] [pid 13501] bit =
node.render_annotated(context)
[Mon Sep 04 05:47:58.616307 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/django/template/base.py", line 957, in
render_annotated
[Mon Sep 04 05:47:58.616309 2017] [wsgi:error] [pid 13501] return
self.render(context)
[Mon Sep 04 05:47:58.616311 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/compressor/templatetags/compress.py",
line 127, in render
[Mon Sep 04 05:47:58.616313 2017] [wsgi:error] [pid 13501] return
self.render_compressed(context, self.kind, self.mode, forced=forced)
[Mon Sep 04 05:47:58.616315 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/compressor/templatetags/compress.py",
line 99, in render_compressed
[Mon Sep 04 05:47:58.616317 2017] [wsgi:error] [pid 13501] cache_key,
cache_content = self.render_cached(compressor, kind, mode)
[Mon Sep 04 05:47:58.616318 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/compressor/templatetags/compress.py",
line 78, in render_cached
[Mon Sep 04 05:47:58.616320 2017] [wsgi:error] [pid 13501] cache_key =
get_templatetag_cachekey(compressor, mode, kind)
[Mon Sep 04 05:47:58.616322 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/compressor/cache.py", line 94, in
get_templatetag_cachekey
[Mon Sep 04 05:47:58.616324 2017] [wsgi:error] [pid 13501]
"templatetag.%s.%s.%s" % (compressor.cachekey, mode, kind))
[Mon Sep 04 05:47:58.616326 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/compressor/utils/decorators.py", line
39, in __get__
[Mon Sep 04 05:47:58.616328 2017] [wsgi:error] [pid 13501] value =
obj.__dict__[self.__name__] = self.__get(obj)
[Mon Sep 04 05:47:58.616329 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/compressor/base.py", line 176, in
cachekey
[Mon Sep 04 05:47:58.616331 2017] [wsgi:error] [pid 13501]
[self.content] + self.mtimes).encode(self.charset), 12)
[Mon Sep 04 05:47:58.616333 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/compressor/utils/decorators.py", line
39, in __get__
[Mon Sep 04 05:47:58.616335 2017] [wsgi:error] [pid 13501] value =
obj.__dict__[self.__name__] = self.__get(obj)
[Mon Sep 04 05:47:58.616337 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/compressor/base.py", line 171, in mtimes
[Mon Sep 04 05:47:58.616339 2017] [wsgi:error] [pid 13501] if kind ==
SOURCE_FILE]
[Mon Sep 04 05:47:58.616340 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-packages/compressor/cache.py", line 100, in
get_mtime
[Mon Sep 04 05:47:58.616342 2017] [wsgi:error] [pid 13501] mtime =
cache.get(key)
[Mon Sep 04 05:47:58.616344 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-
packages/django/core/cache/backends/memcached.py", line 79, in get
[Mon Sep 04 05:47:58.616346 2017] [wsgi:error] [pid 13501] val =
self._cache.get(key)
[Mon Sep 04 05:47:58.616348 2017] [wsgi:error] [pid 13501] File
"/usr/lib/python2.7/site-
packages/django/core/cache/backends/memcached.py", line 173, in _cache
[Mon Sep 04 05:47:58.616349 2017] [wsgi:error] [pid 13501]
self._client = self._lib.Client(self._servers, **client_kwargs)
[Mon Sep 04 05:47:58.616351 2017] [wsgi:error] [pid 13501] TypeError:
__init__() got an unexpected keyword argument 'KEY_PREFIX'
[Mon Sep 04 05:47:59.236287 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] mod_wsgi (pid=13501): Exception occurred processing
WSGI script '/srv/www/openstack-
dashboard/openstack_dashboard/wsgi/django.wsgi'.
[Mon Sep 04 05:47:59.236308 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] Traceback (most recent call last):
[Mon Sep 04 05:47:59.236327 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] File "/usr/lib/python2.7/site-
packages/django/http/response.py", line 264, in close
[Mon Sep 04 05:47:59.236479 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805]
signals.request_finished.send(sender=self._handler_class)
[Mon Sep 04 05:47:59.236494 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] File "/usr/lib/python2.7/site-
packages/django/dispatch/dispatcher.py", line 193, in send
[Mon Sep 04 05:47:59.236574 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] for receiver in self._live_receivers(sender)
[Mon Sep 04 05:47:59.236586 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] File "/usr/lib/python2.7/site-
packages/django/core/cache/__init__.py", line 125, in close_caches
[Mon Sep 04 05:47:59.236632 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] cache.close()
[Mon Sep 04 05:47:59.236640 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] File "/usr/lib/python2.7/site-
packages/django/core/cache/backends/memcached.py", line 107, in close
[Mon Sep 04 05:47:59.236655 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] self._cache.disconnect_all()
[Mon Sep 04 05:47:59.236660 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] File "/usr/lib/python2.7/site-
packages/django/core/cache/backends/memcached.py", line 173, in _cache
[Mon Sep 04 05:47:59.236669 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] self._client = self._lib.Client(self._servers,
**client_kwargs)
[Mon Sep 04 05:47:59.236684 2017] [wsgi:error] [pid 13501] [remote
10.163.0.83:34805] TypeError: __init__() got an unexpected keyword
argument 'KEY_PREFIX'
}}}
The problem was introduced by commit
https://github.com/django/django/commit/65ec8fa8ca56a5378345375e1079025c96d0b833
--
Ticket URL: <https://code.djangoproject.com/ticket/28564>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/050.8ed5076b5a25f536856a69323ad68fb6%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.