.lua文件中的redis.call(...)与redis中的同一调用不同。

考虑下面的代码:

redis> RPUSH test 1
(integer) 1
redis> RPUSH test 2
(integer) 2
redis> RPUSH test 19
(integer) 3
redis> RPUSH test 20
(integer) 4
redis> RPUSH test 3
(integer) 5
redis> SORT test BY nosort
1) "1"
2) "2"
3) "19"
4) "20"
5) "3"
redis 127.0.0.1:6379> eval "return redis.call('SORT', 'test', 'BY', 'nosort')" 0
1) "1"
2) "19"
3) "2"
4) "20"
5) "3"
redis 127.0.0.1:6379>

相同的操作,但 lua 返回了无序的列表。这是一个 bug 吗?

我使用的是 redis-2.6.0-rc7。

点赞
用户204011
用户204011

是的,这是一个 bug,而且在 Git 主干中已经修复了。

2012-09-28 16:36:39