Skip to content

Commit

Permalink
refactor: add new line before every script
Browse files Browse the repository at this point in the history
  • Loading branch information
WqyJh committed Jan 26, 2024
1 parent 6fe30bb commit 8cafd1d
Showing 1 changed file with 16 additions and 8 deletions.
24 changes: 16 additions & 8 deletions script.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,13 @@ package rockscache
import "github.com/redis/go-redis/v9"

var (
deleteScript = redis.NewScript(`redis.call('HSET', KEYS[1], 'lockUntil', 0)
deleteScript = redis.NewScript(`
redis.call('HSET', KEYS[1], 'lockUntil', 0)
redis.call('HDEL', KEYS[1], 'lockOwner')
redis.call('EXPIRE', KEYS[1], ARGV[1])`)

getScript = redis.NewScript(`local v = redis.call('HGET', KEYS[1], 'value')
getScript = redis.NewScript(`
local v = redis.call('HGET', KEYS[1], 'value')
local lu = redis.call('HGET', KEYS[1], 'lockUntil')
if lu ~= false and tonumber(lu) < tonumber(ARGV[1]) or lu == false and v == false then
redis.call('HSET', KEYS[1], 'lockUntil', ARGV[2])
Expand All @@ -16,7 +18,8 @@ if lu ~= false and tonumber(lu) < tonumber(ARGV[1]) or lu == false and v == fals
end
return {v, lu}`)

setScript = redis.NewScript(`local o = redis.call('HGET', KEYS[1], 'lockOwner')
setScript = redis.NewScript(`
local o = redis.call('HGET', KEYS[1], 'lockOwner')
if o ~= ARGV[2] then
return
end
Expand All @@ -25,7 +28,8 @@ redis.call('HDEL', KEYS[1], 'lockUntil')
redis.call('HDEL', KEYS[1], 'lockOwner')
redis.call('EXPIRE', KEYS[1], ARGV[3])`)

lockScript = redis.NewScript(`local lu = redis.call('HGET', KEYS[1], 'lockUntil')
lockScript = redis.NewScript(`
local lu = redis.call('HGET', KEYS[1], 'lockUntil')
local lo = redis.call('HGET', KEYS[1], 'lockOwner')
if lu == false or tonumber(lu) < tonumber(ARGV[2]) or lo == ARGV[1] then
redis.call('HSET', KEYS[1], 'lockUntil', ARGV[2])
Expand All @@ -34,14 +38,16 @@ if lu == false or tonumber(lu) < tonumber(ARGV[2]) or lo == ARGV[1] then
end
return lo`)

unlockScript = redis.NewScript(`local lo = redis.call('HGET', KEYS[1], 'lockOwner')
unlockScript = redis.NewScript(`
local lo = redis.call('HGET', KEYS[1], 'lockOwner')
if lo == ARGV[1] then
redis.call('HSET', KEYS[1], 'lockUntil', 0)
redis.call('HDEL', KEYS[1], 'lockOwner')
redis.call('EXPIRE', KEYS[1], ARGV[2])
end`)

getBatchScript = redis.NewScript(`local rets = {}
getBatchScript = redis.NewScript(`
local rets = {}
for i, key in ipairs(KEYS)
do
local v = redis.call('HGET', key, 'value')
Expand All @@ -56,7 +62,8 @@ do
end
return rets`)

setBatchScript = redis.NewScript(`local n = #KEYS
setBatchScript = redis.NewScript(`
local n = #KEYS
for i, key in ipairs(KEYS)
do
local o = redis.call('HGET', key, 'lockOwner')
Expand All @@ -69,7 +76,8 @@ do
redis.call('EXPIRE', key, ARGV[i+1+n])
end`)

deleteBatchScript = redis.NewScript(`for i, key in ipairs(KEYS) do
deleteBatchScript = redis.NewScript(`
for i, key in ipairs(KEYS) do
redis.call('HSET', key, 'lockUntil', 0)
redis.call('HDEL', key, 'lockOwner')
redis.call('EXPIRE', key, ARGV[1])
Expand Down

0 comments on commit 8cafd1d

Please sign in to comment.