Commits on Jun 6, 2014
  1. ZUNIONSTORE reimplemented for speed.

    The user @kjmph provided excellent ideas to improve speed of ZUNIONSTORE
    (in certain cases by many order of magnitude), together with an
    implementation of the ideas.
    While the ideas were sounding, the implementation could be improved both
    in terms of speed and clearness, so that's my attempt at reimplementing
    the speedup proposed, trying to improve by directly using just a
    dictionary with an embedded score inside, and reusing the single-pass
    aggregate + order-later approach.
    Note that you can't apply this commit without applying the previous
    commit in this branch that adds a double in the dictEntry value union.
    Issue #1786.
    committed Jun 6, 2014
  2. Merge pull request #1772 from andygrunwald/typo-avarege-average

    Fixed typo in word avarege in result message of --intrinsic-latency analyzer
    committed Jun 6, 2014
  3. Merge pull request #1780 from badboy/patch-8

    Small typo fixed
    committed Jun 6, 2014
  4. Merge pull request #1789 from yoav-steinberg/fix_eval_in_tests

    Fix eval usage in tests to conform with eval semantics
    committed Jun 6, 2014
  5. Merge pull request #1788 from zionwu/unstable

    fix issue 1787
    committed Jun 6, 2014
Commits on Jun 5, 2014
  1. Don't process min-slaves-to-write for slaves.

    Replication is totally broken when a slave has this option, since it
    stops accepting updates from masters.
    This fixes issue #1434.
    committed Jun 5, 2014
Commits on Jun 4, 2014
  1. Fixed dbuf variable scope in luaRedisGenericCommand().

    I'm not sure if while the visibility is the inner block, the fact we
    point to 'dbuf' is a problem or not, probably the stack var isx
    guaranteed to live until the function returns. However obvious code is
    better anyway.
    committed Jun 4, 2014
  2. Regression test for issue #1118.

    committed Jun 4, 2014
  3. Scripting: better Lua number -> string conversion in luaRedisGenericC…

    The lua_to*string() family of functions use a non optimal format
    specifier when converting integers to strings. This has both the problem
    of the number being converted in exponential notation, which we don't
    use as a Redis return value when floating point numbers are involed,
    and, moreover, there is a loss of precision since the default format
    specifier is not able to represent numbers that must be represented
    exactly in the IEEE 754 number mantissa.
    The new code handles it as a special case using a saner conversion.
    This fixes issue #1118.
    committed Jun 4, 2014
Commits on May 31, 2014
  1. fix issue 1787

    zionwu committed May 31, 2014
Commits on May 28, 2014
  1. Small typo fixed

    badboy committed May 28, 2014
Commits on May 26, 2014
  1. Merge pull request #1775 from mattsta/fix-test-against-new-PID-format

    Fix test framework to detect proper server PID
    committed May 26, 2014
  2. Disable recursive watchdog signal handler

    If we are in the signal handler, we don't want to handle
    the signal again.  In extreme cases, this can cause a stack overflow
    and segfault Redis.
    Fixes #1771
    mattsta committed with May 22, 2014
  3. Cluster: always allow ok -> fail switch in clusterUpdateState().

    There is a time defined by REDIS_CLUSTER_WRITABLE_DELAY where fail -> ok
    switch is not possible after startup as a master for some time, however
    the contrary (ok -> fail) should always be possible.
    committed May 26, 2014
  4. Cluster test: catch FLUSHALL errors on node reset.

    FLUSHALL will fail on read-only slaves, but there the command is not
    needed in order to reset the instance with CLUSTER RESET so errors can
    be ignored.
    committed May 26, 2014
Commits on May 23, 2014
  1. Fix test framework to detect proper server PID

    Previously the PID format was:
    [PID] Timestamp
    But it recently changed to:
    PID:X Timestamp
    The tcl testing framework was grabbing the PID from \[\d+\], but
    that's not valid anymore.
    Now we grab the pid from "PID: <PID>" in the part of Redis startup
    output to the right of the ASCII logo.
    mattsta committed May 23, 2014
  2. Cluster test: more reliable 01-faildet unit.

    Do things in a sequence that prevents failover during failure detection.
    committed May 23, 2014
Commits on May 22, 2014
  1. Tag every log line with role.

    Every log contains, just after the pid, a single character that provides
    information about the role of an instance:
    S - Slave
    M - Master
    C - Writing child
    X - Sentinel
    committed May 22, 2014
  2. Cluster: slave validity factor is now user configurable.

    Check the commit changes in the example redis.conf for more information.
    committed May 22, 2014
  3. Test: AOF test false positive when running in slow hosts.

    The bug was triggered by running the test with Valgrind (which is a lot
    slower and more sensible to timing issues) after the recent changes
    that made Redis more promptly able to reply with the -LOADING error.
    committed May 22, 2014
Commits on May 21, 2014
  1. Fix an error in redis-trib where we always talk with same node.

    While iterating the list of nodes we want to set the slot as stable in
    the current node, not always in the first node of the list.
    committed May 21, 2014
  2. redis-trib fix: use MIGRATE REPLACE when fixing slots.

    This fixes issue #1765.
    committed May 21, 2014
Commits on May 20, 2014
  1. Regression test for issue #1764.

    committed May 20, 2014