1. 01 10月, 2015 21 次提交
  2. 30 9月, 2015 10 次提交
  3. 29 9月, 2015 1 次提交
  4. 15 9月, 2015 2 次提交
    • A
      Test: fix false positive in HSTRLEN test. · 846da5b2
      antirez 提交于
      HINCRBY* tests later used the value "tmp" that was sometimes generated
      by the random key generation function. The result was ovewriting what
      Tcl expected to be inside Redis with another value, causing the next
      HSTRLEN test to fail.
      846da5b2
    • A
      GEORADIUS: Don't report duplicates when radius is huge. · 3c23b5ff
      antirez 提交于
      Georadius works by computing the center + neighbors squares covering all
      the area of the specified position and radius. Then a distance filter is
      used to remove elements which are actually outside the range.
      
      When a huge radius is used, like 5000 km or more, adjacent neighbors may
      collide and be the same, leading to the reporting of the same element
      multiple times. This only happens in the edge case of huge radius but is
      not ideal.
      
      A robust but slow solution would involve qsorting the range to remove
      all the duplicates. However since the collisions are only in adjacent
      boxes, for the way they are ordered in the code, it is much faster to
      just check if the current box is the same as the previous one processed.
      
      This commit adds a regression test for the bug.
      
      Fixes #2767.
      3c23b5ff
  5. 14 9月, 2015 3 次提交
    • A
      Test: MOVE expire test improved. · 0a91fc45
      antirez 提交于
      Related to #2765.
      0a91fc45
    • A
      MOVE re-add TTL check fixed. · 4fec5ee1
      antirez 提交于
      getExpire() returns -1 when no expire exists.
      
      Related to #2765.
      4fec5ee1
    • A
      MOVE now can move TTL metadata as well. · f529a01c
      antirez 提交于
      MOVE was not able to move the TTL: when a key was moved into a different
      database number, it became persistent like if PERSIST was used.
      
      In some incredible way (I guess almost nobody uses Redis MOVE) this bug
      remained unnoticed inside Redis internals for many years.
      Finally Andy Grunwald discovered it and opened an issue.
      
      This commit fixes the bug and adds a regression test.
      
      Close #2765.
      f529a01c
  6. 08 9月, 2015 2 次提交
  7. 07 9月, 2015 1 次提交
    • A
      Undo slaves state change on failed rdbSaveToSlavesSockets(). · 8e555374
      antirez 提交于
      As Oran Agra suggested, in startBgsaveForReplication() when the BGSAVE
      attempt returns an error, we scan the list of slaves in order to remove
      them since there is no way to serve them currently.
      
      However we check for the replication state BGSAVE_START, which was
      modified by rdbSaveToSlaveSockets() before forking(). So when fork fails
      the state of slaves remain BGSAVE_END and no cleanup is performed.
      
      This commit fixes the problem by making rdbSaveToSlavesSockets() able to
      undo the state change on fork failure.
      8e555374