Basically huey.storage.RedisExpireStorage uses a lambda to define self.result_key instead of being a simple string:
class RedisExpireStorage(RedisStorage):
# Redis storage subclass that adds expiration to task result values. Since
# the Redis server handles deleting our results after the expiration time,
# this storage layer will not delete the results when they are read.
def __init__(self, name='huey', expire_time=86400, *args, **kwargs):
super(RedisExpireStorage, self).__init__(name, *args, **kwargs)
self._expire_time = expire_time
self.result_prefix = rp = b'huey.r.%s.' % self.name.encode('utf8')
encode = lambda s: s if isinstance(s, bytes) else s.encode('utf8')
self.result_key = lambda k: rp + encode(k)
I have not looked into this any deeper at this point and have switched to PriorityRedisStorage for now.
Basically
huey.storage.RedisExpireStorageuses a lambda to defineself.result_keyinstead of being a simple string:I have not looked into this any deeper at this point and have switched to PriorityRedisStorage for now.