From 32d063ac2a7ebb75a86c44408f94a40fcf15cfa2 Mon Sep 17 00:00:00 2001 From: Aaron Schulz Date: Mon, 1 Apr 2013 12:36:19 -0700 Subject: [PATCH] [JobQueue] Fixed use of ipairs() in JobQueueRedis. Change-Id: Id507c0a3dfaf8b1fde92eb99f7204e31775b042c --- includes/job/JobQueueRedis.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/includes/job/JobQueueRedis.php b/includes/job/JobQueueRedis.php index d0901ef62e..c57081e77f 100644 --- a/includes/job/JobQueueRedis.php +++ b/includes/job/JobQueueRedis.php @@ -615,8 +615,9 @@ LUA; local released,abandoned,pruned = 0,0,0 -- Get all non-dead jobs that have an expired claim on them. -- The score for each item is the last claim timestamp (UNIX). - local staleClaims = redis.call('zRangeByScore',KEYS[1],0,ARGV[1],'WITHSCORES') - for id,timestamp in ipairs(staleClaims) do + local staleClaims = redis.call('zRangeByScore',KEYS[1],0,ARGV[1]) + for k,id in ipairs(staleClaims) do + local timestamp = redis.call('zScore',KEYS[1],id) local attempts = redis.call('hGet',KEYS[2],id) if attempts < ARGV[3] then -- Claim expired and retries left: re-enqueue the job @@ -632,8 +633,8 @@ LUA; end -- Get all of the dead jobs that have been marked as dead for too long. -- The score for each item is the last claim timestamp (UNIX). - local deadClaims = redis.call('zRangeByScore',KEYS[5],0,ARGV[2],'WITHSCORES') - for id,timestamp in ipairs(deadClaims) do + local deadClaims = redis.call('zRangeByScore',KEYS[5],0,ARGV[2]) + for k,id in ipairs(deadClaims) do -- Stale and out of retries: remove any traces of the job redis.call('zRem',KEYS[5],id) redis.call('hDel',KEYS[2],id) -- 2.20.1