-
Couldn't load subscription status.
- Fork 12
Description
Hi, seems current version is incompatible with newest versions of django-redis.
Currently getting the following error when trying to write to redis:
File "/srv/metax/pyenv/lib/python3.5/site-packages/django_redis/client/default.py", line 123, in set
client, index = self.get_client(write=True, tried=tried, show_index=True)
TypeError: get_client() got an unexpected keyword argument 'tried'
After fixing the parameters in django_redis_sentinel/client/sentinel.py get_client(), more errors follow:
Traceback (most recent call last):
File "/srv/metax/pyenv/lib/python3.5/site-packages/django/core/handlers/exception.py", line 41, in inner
response = get_response(request)
File "/srv/metax/pyenv/lib/python3.5/site-packages/django/core/handlers/base.py", line 187, in _get_response
response = self.process_exception_by_middleware(e, request)
File "/srv/metax/pyenv/lib/python3.5/site-packages/django/core/handlers/base.py", line 185, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python3.5/contextlib.py", line 30, in inner
return func(*args, **kwds)
File "/srv/metax/pyenv/lib/python3.5/site-packages/django/views/decorators/csrf.py", line 58, in wrapped_view
return view_func(*args, **kwargs)
File "/srv/metax/pyenv/lib/python3.5/site-packages/rest_framework/viewsets.py", line 83, in view
return self.dispatch(request, *args, **kwargs)
File "/srv/metax/pyenv/lib/python3.5/site-packages/rest_framework/views.py", line 483, in dispatch
response = self.handle_exception(exc)
File "/srv/metax/pyenv/lib/python3.5/site-packages/rest_framework/views.py", line 443, in handle_exception
self.raise_uncaught_exception(exc)
File "/srv/metax/pyenv/lib/python3.5/site-packages/rest_framework/views.py", line 480, in dispatch
response = handler(request, *args, **kwargs)
File "/metax/metax-api/src/metax_api/api/base/views/dataset_view.py", line 145, in redis_test
cache.set('cr-1211%s' % pk, data)
File "/srv/metax/pyenv/lib/python3.5/site-packages/django_redis/cache.py", line 33, in _decorator
return method(self, *args, **kwargs)
File "/srv/metax/pyenv/lib/python3.5/site-packages/django_redis/cache.py", line 68, in set
return self.client.set(*args, **kwargs)
File "/srv/metax/pyenv/lib/python3.5/site-packages/django_redis/client/default.py", line 123, in set
client, index = self.get_client(write=True, tried=tried, show_index=True)
File "/srv/metax/pyenv/lib/python3.5/site-packages/redis/client.py", line 890, in getitem
raise KeyError(name)
KeyError: 0
CACHE settings in settings.py:
CACHES = {
'default': {
'BACKEND': "django_redis_sentinel.cache.RedisSentinelCache",
'LOCATION': [
('127.0.0.1', 5000),
('127.0.0.1', 5001),
('127.0.0.1', 5002),
],
'OPTIONS': {
'CLIENT_CLASS': 'django_redis_sentinel.client.SentinelClient',
'SENTINEL_SERVICE_NAME': 'metax-master',
"SOCKET_TIMEOUT": 0.1,
"SOCKET_CONNECT_TIMEOUT": 0.1,
'REDIS_CLIENT_KWARGS': {
'db': 1,
}
}
}
}
Software versions:
redis-server 2:3.0.6-1
Django==1.11.1
django-redis==4.8.0
django-redis-sentinel-redux==0.2.0
I have verified using redis-cli that the redis instances and sentinels are correctly configured, and failover is otherwise working.