diff --git a/kombu/transport/redis.py b/kombu/transport/redis.py index 57ce7b98b8..23c086b884 100644 --- a/kombu/transport/redis.py +++ b/kombu/transport/redis.py @@ -146,8 +146,15 @@ def __init__(self, *args, **kwargs): def append(self, message, delivery_tag): delivery = message.delivery_info EX, RK = delivery['exchange'], delivery['routing_key'] + # TODO: Remove this once we soley on Redis-py 3.0.0+ + if redis.VERSION[0] >= 3: + # Redis-py changed the format of zadd args in v3.0.0 + zadd_args = [{time(): delivery_tag}] + else: + zadd_args = [time(), delivery_tag] + with self.pipe_or_acquire() as pipe: - pipe.zadd(self.unacked_index_key, time(), delivery_tag) \ + pipe.zadd(self.unacked_index_key, *zadd_args) \ .hset(self.unacked_key, delivery_tag, dumps([message._raw, EX, RK])) \ .execute()