kopia lustrzana https://dev.funkwhale.audio/funkwhale/funkwhale
30 wiersze
978 B
Python
30 wiersze
978 B
Python
import logging
|
|
|
|
from django_redis.client import default
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
class RedisClient(default.DefaultClient):
|
|
def get(self, key, default=None, version=None, client=None):
|
|
try:
|
|
return super().get(key, default=default, version=version, client=client)
|
|
except ValueError as e:
|
|
if "unsupported pickle protocol" in str(e):
|
|
# pickle deserialization error
|
|
logger.warn("Error while deserializing pickle value from cache")
|
|
return default
|
|
else:
|
|
raise
|
|
|
|
def get_many(self, *args, **kwargs):
|
|
try:
|
|
return super().get_many(*args, **kwargs)
|
|
except ValueError as e:
|
|
if "unsupported pickle protocol" in str(e):
|
|
# pickle deserialization error
|
|
logger.warn("Error while deserializing pickle value from cache")
|
|
return {}
|
|
else:
|
|
raise
|