1. 06 Nov, 2013 1 commit
  2. 05 Nov, 2013 5 commits
    • antirez's avatar
      SCAN code refactored to parse cursor first. · ebcb6251
      antirez authored
      The previous implementation of SCAN parsed the cursor in the generic
      function implementing SCAN, SSCAN, HSCAN and ZSCAN.
      
      The actual higher-level command implementation only checked for empty
      keys and return ASAP in that case. The result was that inverting the
      arguments of, for instance, SSCAN for example and write:
      
          SSCAN 0 key
      
      Instead of
      
          SSCAN key 0
      
      Resulted into no error, since 0 is a non-existing key name very likely.
      Just the iterator returned no elements at all.
      
      In order to fix this issue the code was refactored to extract the
      function to parse the cursor and return the error. Every higher level
      command implementation now parses the cursor and later checks if the key
      exist or not.
      ebcb6251
    • antirez's avatar
      SCAN: when iterating ziplists or intsets always return cursor of 0. · b4048dfe
      antirez authored
      The previous implementation assumed that the first call always happens
      with cursor set to 0, this may not be the case, and we want to return 0
      anyway otherwise the (broken) client code will loop forever.
      b4048dfe
    • antirez's avatar
      101d4bf8
    • antirez's avatar
      HSCAN/ZSCAN: skip value when matching. · f56f78d1
      antirez authored
      This fixes issue #1360 and #1362.
      f56f78d1
    • antirez's avatar
      eb95d288
  3. 31 Oct, 2013 2 commits
  4. 28 Oct, 2013 2 commits
  5. 25 Oct, 2013 11 commits
  6. 09 Oct, 2013 1 commit
  7. 27 Jun, 2013 1 commit
  8. 28 Mar, 2013 1 commit
  9. 26 Mar, 2013 1 commit
    • antirez's avatar
      TTL / PTTL commands: two bugs fixed. · 873f328f
      antirez authored
      This commit fixes two corner cases for the TTL command.
      
      1) When the key was already logically expired (expire time older
      than current time) the command returned -1 instead of -2.
      
      2) When the key was existing and the expire was found to be exactly 0
      (the key was just about to expire), the command reported -1 (that is, no
      expire) instead of a TTL of zero (that is, about to expire).
      873f328f
  10. 21 Mar, 2013 1 commit
  11. 25 Feb, 2013 3 commits
  12. 22 Feb, 2013 2 commits
  13. 14 Feb, 2013 1 commit
  14. 12 Feb, 2013 1 commit
  15. 28 Jan, 2013 5 commits
  16. 19 Jan, 2013 2 commits
    • antirez's avatar
      Whitelist SIGUSR1 to avoid auto-triggering errors. · 79a0ef62
      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.
      79a0ef62
    • guiquanz's avatar
      Fixed many typos. · 9d09ce39
      guiquanz authored
      9d09ce39