1. 11 Feb, 2015 4 commits
  2. 10 Feb, 2015 1 commit
  3. 09 Feb, 2015 1 commit
  4. 08 Feb, 2015 2 commits
    • antirez's avatar
      redis-cli: interactive reconnection for latency modes. · ca23b2a6
      antirez authored
      --stat mode already used to reconnect automatically if the server is no
      longer available. This is useful since this is an interactive mode used
      for debugging, however the same applies to --latency and --latency-dist
      modes, so now both use the reconnecting command execution as well.
      
      The reconnection code was modified to use basic VT100 escape sequences
      in order to play better with different kinds of output on the screen
      when the reconnection happens, and to hide the reconnection attempt
      output when finally the reconnection happens.
      ca23b2a6
    • antirez's avatar
      redis-cli --latecy-dist reverted to gray scale. · cfe21852
      antirez authored
      So far not able to find a color palette within the 256 colors which is
      not confusing. However I believe it is a possible task, so will try
      better later.
      cfe21852
  5. 07 Feb, 2015 5 commits
  6. 04 Feb, 2015 1 commit
  7. 03 Feb, 2015 6 commits
  8. 02 Feb, 2015 1 commit
  9. 30 Jan, 2015 3 commits
  10. 29 Jan, 2015 3 commits
  11. 28 Jan, 2015 3 commits
    • Matt Stancliff's avatar
      Improve RDB error-on-load handling · d8c7db1b
      Matt Stancliff authored
      Previouly if we loaded a corrupt RDB, Redis printed an error report
      with a big "REPORT ON GITHUB" message at the bottom.  But, we know
      RDB load failures are corrupt data, not corrupt code.
      
      Now when RDB failure is detected (duplicate keys or unknown data
      types in the file), we run check-rdb against the RDB then exit.  The
      automatic check-rdb hopefully gives the user instant feedback
      about what is wrong instead of providing a mysterious stack
      trace.
      d8c7db1b
    • Matt Stancliff's avatar
      Remove code duplication from check-rdb · 764b000c
      Matt Stancliff authored
      redis-check-rdb (previously redis-check-dump) had every RDB define
      copy/pasted from rdb.h and some defines copied from redis.h.  Since
      the initial copy, some constants had changed in Redis headers and
      check-dump was using incorrect values.
      
      Since check-rdb is now a mode of Redis, the old check-dump code
      is cleaned up to:
        - replace all printf with redisLog (and remove \n from all strings)
        - remove all copy/pasted defines to use defines from rdb.h and redis.h
        - replace all malloc/free with zmalloc/zfree
        - remove unnecessary include headers
      764b000c
    • Matt Stancliff's avatar
      Convert check-dump to Redis check-rdb mode · 145473ac
      Matt Stancliff authored
      redis-check-dump is now named redis-check-rdb and it runs
      as a mode of redis-server instead of an independent binary.
      
      You can now use 'redis-server redis.conf --check-rdb' to check
      the RDB defined in redis.conf.  Using argument --check-rdb
      checks the RDB and exits.  We could potentially also allow
      the server to continue starting if the RDB check succeeds.
      
      This change also enables us to use RDB checking programatically
      from inside Redis for certain failure conditions.
      145473ac
  12. 25 Jan, 2015 1 commit
    • mattcollier's avatar
      Update redis-cli.c · 6ec5f1f7
      mattcollier authored
      Code was adding '\n'  (line 521) to the end of NIL values exlusively making csv output inconsistent.  Removed '\n'
      6ec5f1f7
  13. 24 Jan, 2015 1 commit
    • antirez's avatar
      Cluster: initialized not used fileds in gossip section. · 9802ec3c
      antirez authored
      Otherwise we risk sending not initialized data to other nodes, that may
      contain anything. This was actually not possible only because the
      initialization of the buffer where the cluster packets header is created
      was larger than the 3 gossip sections we use, so the memory was already
      all filled with zeroes by the memset().
      9802ec3c
  14. 23 Jan, 2015 2 commits
  15. 22 Jan, 2015 3 commits
  16. 21 Jan, 2015 3 commits
    • antirez's avatar
      getRandomHexChars(): use /dev/urandom just to seed. · 87301be1
      antirez authored
      On Darwin /dev/urandom depletes terribly fast. This is not an issue
      normally, but with Redis Cluster we generate a lot of unique IDs, for
      example during nodes handshakes. Our IDs need just to be unique without
      other strong crypto requirements, so this commit turns the function into
      something that gets a 20 bytes seed from /dev/urandom, and produces the
      rest of the output just using SHA1 in counter mode.
      87301be1
    • Matt Stancliff's avatar
      Fix cluster migrate memory leak · 051a43e0
      Matt Stancliff authored
      Fixes valgrind error:
      48 bytes in 1 blocks are definitely lost in loss record 196 of 373
         at 0x4910D3: je_malloc (jemalloc.c:944)
         by 0x42807D: zmalloc (zmalloc.c:125)
         by 0x41FA0D: dictGetIterator (dict.c:543)
         by 0x41FA48: dictGetSafeIterator (dict.c:555)
         by 0x459B73: clusterHandleSlaveMigration (cluster.c:2776)
         by 0x45BF27: clusterCron (cluster.c:3123)
         by 0x423344: serverCron (redis.c:1239)
         by 0x41D6CD: aeProcessEvents (ae.c:311)
         by 0x41D8EA: aeMain (ae.c:455)
         by 0x41A84B: main (redis.c:3832)
      051a43e0
    • Matt Stancliff's avatar
      Fix potential invalid read past end of array · 29049507
      Matt Stancliff authored
      If array has N elements, we can't read +1 if we are already at N.
      
      Also, we need to move elements by their storage size in the array,
      not just by individual bytes.
      29049507