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

    antirez committed Jun 6, 2014
    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.
  2. Merge pull request #1772 from andygrunwald/typo-avarege-average

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

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

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

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

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

    antirez committed Jun 4, 2014
    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.
  2. Scripting: better Lua number -> string conversion in luaRedisGenericC…

    antirez committed Jun 4, 2014
    …ommand().
    
    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.
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

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

    mattsta authored and antirez committed May 22, 2014
    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
  3. Cluster: always allow ok -> fail switch in clusterUpdateState().

    antirez committed May 26, 2014
    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.
  4. Cluster test: catch FLUSHALL errors on node reset.

    antirez committed May 26, 2014
    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.
Commits on May 23, 2014
  1. Fix test framework to detect proper server PID

    mattsta committed May 23, 2014
    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.
  2. Cluster test: more reliable 01-faildet unit.

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

    antirez committed May 22, 2014
    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
  2. Cluster: slave validity factor is now user configurable.

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

    antirez committed May 22, 2014
    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.
Commits on May 21, 2014
  1. Fix an error in redis-trib where we always talk with same node.

    antirez committed May 21, 2014
    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.
  2. redis-trib fix: use MIGRATE REPLACE when fixing slots.

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

    antirez committed May 20, 2014