1. 28 1月, 2013 3 次提交
  2. 19 1月, 2013 2 次提交
    • A
      Whitelist SIGUSR1 to avoid auto-triggering errors. · 79a0ef62
      antirez 提交于
      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.
      79a0ef62
    • G
      Fixed many typos. · 9d09ce39
      guiquanz 提交于
      9d09ce39
  3. 13 11月, 2012 1 次提交
    • A
      TTL API change: TTL returns -2 for non existing keys. · aa2bf6ba
      antirez 提交于
      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.
      aa2bf6ba
  4. 09 11月, 2012 1 次提交
  5. 11 9月, 2012 1 次提交
    • A
      Make sure that SELECT argument is an integer or return an error. · bfc197c3
      antirez 提交于
      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.
      bfc197c3
  6. 01 5月, 2012 1 次提交
    • P
      Use safe dictionary iterator from KEYS · cc4f65fe
      Pieter Noordhuis 提交于
      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.
      cc4f65fe
  7. 07 4月, 2012 1 次提交
  8. 05 4月, 2012 3 次提交
  9. 28 3月, 2012 1 次提交
  10. 27 3月, 2012 1 次提交
  11. 04 2月, 2012 1 次提交
  12. 02 2月, 2012 1 次提交
  13. 30 1月, 2012 1 次提交
  14. 21 12月, 2011 3 次提交
  15. 18 11月, 2011 1 次提交
  16. 11 11月, 2011 1 次提交
  17. 10 11月, 2011 1 次提交
  18. 09 11月, 2011 2 次提交
  19. 17 10月, 2011 2 次提交
  20. 10 10月, 2011 1 次提交
  21. 05 10月, 2011 1 次提交
  22. 07 7月, 2011 2 次提交
  23. 25 6月, 2011 1 次提交
  24. 20 6月, 2011 1 次提交
  25. 06 5月, 2011 1 次提交
  26. 29 4月, 2011 2 次提交
  27. 29 3月, 2011 3 次提交