为什么redigo会返回ERR未知命令' EVALSHA'

时间:2017-08-16 07:48:16

标签: go redis

https://github.com/garyburd/redigo

为什么redigo会返回错误消息?

错误消息:

ERR unknown command 'EVALSHA'
ERR unknown command 'EVALSHA'

代码:

const lockScript = `
local v = redis.call("GET", KEYS[1])
if v == false or v == ARGV[1]
then
    return redis.call("SET", KEYS[1], ARGV[1], "EX", ARGV[2]) and 1
else
    return 0
end
`

func CounterRegScript() {
    rc := RedisClient.Get()
    defer rc.Close()

    script := redis.NewScript(1, lockScript)
    resp, err := script.Do(rc, "xiaorui.cc", "nima", int64(3))
    fmt.Println(resp)
    fmt.Println(err)
}

1 个答案:

答案 0 :(得分:1)

您使用的是旧版Redis。升级到2.6或更高版本。

相关问题