Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Feb 22, 2012
  1. Redis version 2.4.8

  2. 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.
Commits on Feb 21, 2012
  1. Merge pull request #346 from pietern/2.4-segv

    Force SIGSEGV without HAVE_BACKTRACE (2.4)
  2. @pietern

    Solaris has backtrace(3)

    pietern authored
  3. @pietern
  4. Fix 32bit build of hiredis

  5. Applied a few modifications to hiredis to tune it for speed (redis-be…

    …nchmark) and ability to read more deeply nested replies (redis-cli).
  6. bzero -> memset

Commits on Feb 20, 2012
Commits on Feb 16, 2012
  1. Issue #330 regression test.

Commits on Feb 15, 2012
  1. Fixes to c->reply_bytes computation, and debug messages to closely st…

    …udy the behavior of memory pressure + slaves + maxmemory + blocked slaves.
  2. Precision of getClientOutputBufferMemoryUsage() greatily improved, se…

    …e issue #327 for more information.
  3. This fixes issue #327, is a very complex fix (unfortunately), details:

    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.
  4. Initial version of c->reply_bytes implementation backported from unst…

    …able to 2.4, in order to apply issue 327 patches.
Commits on Feb 14, 2012
  1. add -f flag to cp when installing, otherwise stopping the server is

    needed when installing a new Redis version. Thanks to Scott Kevill.
    Fixes issue #335.
Commits on Feb 2, 2012
  1. Redis 2.4.7

  2. Set a 3.5 GB maxmemory limit with noeviction policy if a 32 bit insta…

    …nce without user-provided memory limits is detected.
Commits on Jan 16, 2012
  1. Merge pull request #296 from pietern/2.4-expirefix

    Don't expire keys when loading an RDB after a SYNC
Commits on Jan 14, 2012
  1. @pietern

    Don't expire keys when loading an RDB after a SYNC

    pietern 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
Commits on Jan 12, 2012
  1. On crash print information about the current client (if any), command…

    … vector, and object associated to first argument assuming it is a key.
Something went wrong with that request. Please try again.