getStateV2-8.lua 974 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. --[[
  2. Get a job state
  3. Input:
  4. KEYS[1] 'completed' key,
  5. KEYS[2] 'failed' key
  6. KEYS[3] 'delayed' key
  7. KEYS[4] 'active' key
  8. KEYS[5] 'wait' key
  9. KEYS[6] 'paused' key
  10. KEYS[7] 'waiting-children' key
  11. KEYS[8] 'prioritized' key
  12. ARGV[1] job id
  13. Output:
  14. 'completed'
  15. 'failed'
  16. 'delayed'
  17. 'active'
  18. 'waiting'
  19. 'waiting-children'
  20. 'unknown'
  21. ]]
  22. local rcall = redis.call
  23. if rcall("ZSCORE", KEYS[1], ARGV[1]) then
  24. return "completed"
  25. end
  26. if rcall("ZSCORE", KEYS[2], ARGV[1]) then
  27. return "failed"
  28. end
  29. if rcall("ZSCORE", KEYS[3], ARGV[1]) then
  30. return "delayed"
  31. end
  32. if rcall("ZSCORE", KEYS[8], ARGV[1]) then
  33. return "prioritized"
  34. end
  35. if rcall("LPOS", KEYS[4] , ARGV[1]) then
  36. return "active"
  37. end
  38. if rcall("LPOS", KEYS[5] , ARGV[1]) then
  39. return "waiting"
  40. end
  41. if rcall("LPOS", KEYS[6] , ARGV[1]) then
  42. return "waiting"
  43. end
  44. if rcall("ZSCORE", KEYS[7] , ARGV[1]) then
  45. return "waiting-children"
  46. end
  47. return "unknown"