- 17 Nov, 2015 8 commits
- 09 Nov, 2015 1 commit
-
-
antirez authored
Arguments arity and arguments type error of redis.call() were not reported correctly to Lua, so the command acted in this regard like redis.pcall(), but just for two commands. Redis.call() should always raise errors instead.
-
- 05 Nov, 2015 2 commits
- 04 Nov, 2015 1 commit
-
-
Jan-Erik Rediger authored
-
- 30 Oct, 2015 6 commits
-
-
antirez authored
Currently this feature is only accessible via DEBUG for testing, since otherwise depending on the instance configuration a given script works or is broken, which is against the Redis philosophy.
-
antirez authored
-
antirez authored
This commit also inverts two stanzas of the code just becuase they are more logical like that, not because currently it makes any difference.
-
antirez authored
-
antirez authored
-
antirez authored
By calling redis.replicate_commands(), the scripting engine of Redis switches to commands replication instead of replicating whole scripts. This is useful when the script execution is costly but only results in a few writes performed to the dataset. Morover, in this mode, it is possible to call functions with side effects freely, since the script execution does not need to be deterministic: anyway we'll capture the outcome from the point of view of changes to the dataset. In this mode math.random() returns different sequences at every call. If redis.replicate_commnads() is not called before any other write, the command returns false and sticks to whole scripts replication instead.
-
- 01 Oct, 2015 1 commit
-
-
antirez authored
-
- 27 Jul, 2015 1 commit
-
-
antirez authored
-
- 26 Jul, 2015 6 commits
- 16 Jul, 2015 1 commit
-
-
Jiahao Huang authored
-
- 14 Jul, 2015 1 commit
-
-
Oran Agra authored
-
- 03 Jun, 2015 1 commit
-
-
Ben Murphy authored
-
- 22 Mar, 2015 1 commit
-
-
antirez authored
-
- 20 Jan, 2015 3 commits
-
-
antirez authored
Rationale is that when re-entering, it is likely due to Lua debugging hooks. Returning an error will be ignored in most cases, going totally unnoticed. With the log at least we leave a trace. Related to issue #2302.
-
antirez authored
Instead of calling redisPanic() to abort the server. Related to issue #2302.
-
antirez authored
Related to issue #2302.
-
- 09 Jan, 2015 1 commit
-
-
antirez authored
Before this commit scripts were able to access / create keys outside the set of hash slots served by the local node.
-
- 09 Oct, 2014 1 commit
-
-
Matt Stancliff authored
A few people have written custom C commands because bit manipulation isn't exposed through Lua. Let's give them Mike Pall's bitop. This adds bitop 1.0.2 (2012-05-08) from http://bitop.luajit.org/ bitop is imported as "bit" into the global namespace. New Lua commands: bit.tobit, bit.tohex, bit.bnot, bit.band, bit.bor, bit.bxor, bit.lshift, bit.rshift, bit.arshift, bit.rol, bit.ror, bit.bswap Verification of working (the asserts would abort on error, so (nil) is correct): 127.0.0.1:6379> eval "assert(bit.tobit(1) == 1); assert(bit.band(1) == 1); assert(bit.bxor(1,2) == 3); assert(bit.bor(1,2,4,8,16,32,64,128) == 255)" 0 (nil) 127.0.0.1:6379> eval 'assert(0x7fffffff == 2147483647, "broken hex literals"); assert(0xffffffff == -1 or 0xffffffff == 2^32-1, "broken hex literals"); assert(tostring(-1) == "-1", "broken tostring()"); assert(tostring(0xffffffff) == "-1" or tostring(0xffffffff) == "4294967295", "broken tostring()")' 0 (nil) Tests also integrated into the scripting tests and can be run with: ./runtest --single unit/scripting Tests are excerpted from `bittest.lua` included in the bitop distribution.
-
- 29 Sep, 2014 1 commit
-
-
Juarez Bochi authored
Closes #1960
-
- 10 Sep, 2014 1 commit
-
-
antirez authored
As discussed in issue #1945.
-
- 01 Sep, 2014 1 commit
-
-
Paddy Byers authored
-
- 13 Aug, 2014 1 commit
-
-
antirez authored
-
- 07 Aug, 2014 1 commit
-
-
Matt Stancliff authored
Negative key count causes segfault in Lua functions. Fixes #1842 Closes #1843
-