- 26 Feb, 2012 2 commits
-
-
Premysl Hruby authored
-
Premysl Hruby authored
-
- 24 Feb, 2012 1 commit
-
-
antirez authored
-
- 23 Feb, 2012 2 commits
- 22 Feb, 2012 4 commits
-
-
antirez authored
-
antirez authored
Fix for issue #306, thanks to tchajed (on github) for the pull request. The original patch was reworked a bit.
-
antirez authored
-
antirez authored
zzlIsInRange() now is capable of handling empty sorted sets that may end inside the data set when loading very old RDB files produced by early-stage versions of Redis.
-
- 21 Feb, 2012 4 commits
-
-
Pieter Noordhuis authored
-
Pieter Noordhuis authored
-
antirez authored
-
antirez authored
-
- 19 Feb, 2012 1 commit
-
-
antirez authored
-
- 16 Feb, 2012 3 commits
-
-
Pieter Noordhuis authored
The cron is responsible for expiring keys. When keys are expired at load time, it is possible that the snapshot of a master node gets modified. This can in turn lead to inconsistencies in the data set. A more concrete example of this behavior follows. A user reported a slave that would show an monotonically increase input buffer length, shortly after completing a SYNC. Also, `INFO` output showed a single blocked client, which could only be the master link. Investigation showed that indeed the `BRPOP` command was fed by the master. This command can only end up in the stream of write operations when it did NOT block, and effectively executed `RPOP`. However, when the key involved in the `BRPOP` is expired BEFORE the command is executed, the client executing it will block. The client in this case, is the master link.
-
antirez authored
-
antirez authored
-
- 15 Feb, 2012 1 commit
-
-
antirez authored
-
- 14 Feb, 2012 4 commits
- 13 Feb, 2012 1 commit
-
-
lsbardel authored
-
- 09 Feb, 2012 3 commits
- 08 Feb, 2012 3 commits
- 07 Feb, 2012 3 commits
- 06 Feb, 2012 2 commits
- 05 Feb, 2012 1 commit
-
-
antirez authored
-
- 04 Feb, 2012 2 commits
-
-
antirez authored
1) sendReplyToClient() now no longer stops transferring data to a single client in the case we are out of memory (maxmemory-wise). 2) in processCommand() the idea of we being out of memory is no longer the naive zmalloc_used_memory() > server.maxmemory. To say if we can accept or not write queries is up to the return value of freeMemoryIfNeeded(), that has full control about that. 3) freeMemoryIfNeeded() now does its math without considering output buffers size. But at the same time it can't let the output buffers to put us too much outside the max memory limit, so at the same time it makes sure there is enough effort into delivering the output buffers to the slaves, calling the write handler directly. This three changes are the result of many tests, I found (partially empirically) that is the best way to address the problem, but maybe we'll find better solutions in the future.
-
antirez authored
Use less memory when emitting the protocol, by using more shared objects for commonly emitted parts of the protocol.
-
- 02 Feb, 2012 3 commits
-
-
antirez authored
Now Lua scripts dispatch Redis commands properly calling the call() function. In order to make this possible call() was improved with a new flags argument that controls how the Redis command is executed.
-
antirez authored
Set a 3.5 GB maxmemory limit with noeviction policy if a 32 bit instance without user-provided memory limits is detected.
-
antirez authored
-