1. 28 Jan, 2013 4 commits
  2. 19 Jan, 2013 2 commits
    • antirez's avatar
      Whitelist SIGUSR1 to avoid auto-triggering errors. · 39f0a33f
      antirez authored
      This commit fixes issue #875 that was caused by the following events:
      
      1) There is an active child doing BGSAVE.
      2) flushall is called (or any other condition that makes Redis killing
      the saving child process).
      3) An error is sensed by Redis as the child exited with an error (killed
      by a singal), that stops accepting write commands until a BGSAVE happens
      to be executed with success.
      
      Whitelisting SIGUSR1 and making sure Redis always uses this signal in
      order to kill its own children fixes the issue.
      39f0a33f
    • guiquanz's avatar
      Fixed many typos. · 1caf0939
      guiquanz authored
      Conflicts fixed, mainly because 2.8 has no cluster support / files:
      	00-RELEASENOTES
      	src/cluster.c
      	src/crc16.c
      	src/redis-trib.rb
      	src/redis.h
      1caf0939
  3. 12 Nov, 2012 1 commit
    • antirez's avatar
      TTL API change: TTL returns -2 for non existing keys. · 50c41de7
      antirez authored
      The previous behavior was to return -1 if:
      
      1) Existing key but without an expire set.
      2) Non existing key.
      
      Now the second case is handled in a different, and TTL will return -2
      if the key does not exist at all.
      
      PTTL follows the same behavior as well.
      50c41de7
  4. 08 Nov, 2012 1 commit
  5. 11 Sep, 2012 1 commit
    • antirez's avatar
      Make sure that SELECT argument is an integer or return an error. · b58f03a0
      antirez authored
      Unfortunately we had still the lame atoi() without any error checking in
      place, so "SELECT foo" would work as "SELECT 0". This was not an huge
      problem per se but some people expected that DB can be strings and not
      just numbers, and without errors you get the feeling that they can be
      numbers, but not the behavior.
      
      Now getLongFromObjectOrReply() is used as almost everybody else across
      the code, generating an error if the number is not an integer or
      overflows the long type.
      
      Thanks to @mipearson for reporting that on Twitter.
      b58f03a0
  6. 30 Apr, 2012 1 commit
    • Pieter Noordhuis's avatar
      Use safe dictionary iterator from KEYS · 9311d2b5
      Pieter Noordhuis authored
      Every matched key in a KEYS call is checked for expiration. When the key
      is set to expire, the call to `getExpire` will assert that the key also
      exists in the main dictionary. This in turn causes a rehashing step to
      be executed. Rehashing a dictionary when there is an iterator active may
      result in the iterator emitting duplicate entries, or not emitting some
      entries at all. By using a safe iterator, the rehash step is omitted.
      9311d2b5
  7. 07 Apr, 2012 1 commit
  8. 05 Apr, 2012 3 commits
  9. 27 Mar, 2012 2 commits
  10. 10 Mar, 2012 1 commit
  11. 04 Feb, 2012 1 commit
  12. 01 Feb, 2012 1 commit
  13. 30 Jan, 2012 1 commit
  14. 21 Dec, 2011 3 commits
  15. 18 Nov, 2011 1 commit
  16. 10 Nov, 2011 1 commit
  17. 09 Nov, 2011 2 commits
  18. 08 Nov, 2011 1 commit
  19. 17 Oct, 2011 2 commits
  20. 10 Oct, 2011 1 commit
  21. 04 Oct, 2011 1 commit
  22. 07 Jul, 2011 2 commits
  23. 25 Jun, 2011 1 commit
  24. 20 Jun, 2011 1 commit
  25. 05 May, 2011 1 commit
  26. 29 Apr, 2011 1 commit
  27. 28 Apr, 2011 1 commit
  28. 29 Mar, 2011 1 commit