——– BEGIN keys ——— local digest = KEYS local queued = KEYS local primed = KEYS local locked = KEYS local info = KEYS local changelog = KEYS local digests = KEYS ——– END keys ———
——– BEGIN lock arguments ——— local job_id = ARGV ——– END lock arguments ———–
——– BEGIN injected arguments ——– local current_time = tonumber(ARGV) local debug_lua = tostring(ARGV) == “1” local max_history = tonumber(ARGV) local script_name = tostring(ARGV) .. “.lua” ——— END injected arguments ———
——– BEGIN local functions ——– <%= include_partial “shared/_common.lua” %> ——— END local functions ———
——– BEGIN locked.lua ——– if redis.call(“HEXISTS”, locked, job_id) == 1 then
log_debug("Locked", digest, "job_id:", job_id) return 1
else
log_debug("NOT Locked", digest, "job_id:", job_id) return -1
end ——— END locked.lua ———