1. 07 Aug, 2014 16 commits
  2. 28 Jul, 2014 8 commits
  3. 25 Jul, 2014 7 commits
  4. 23 Jul, 2014 3 commits
    • antirez's avatar
      Fix util.c compilation by including stdint.h. · 7eb47ae2
      antirez authored
      7eb47ae2
    • antirez's avatar
      Faster ll2string() implementation. · 0ce352c1
      antirez authored
      Based on ideas documented in this blog post:
      
      https://www.facebook.com/notes/facebook-engineering/three-optimization-tips-for-c/10151361643253920
      
      The original code was modified to handle signed integers, reformetted to
      fit inside the Redis code base, and was stress-tested with a program
      in order to validate the implementation against snprintf().
      
      Redis was measured to be measurably faster from the point of view of
      clients in real-world operations because of this change, since sometimes
      number to string conversion is used extensively (for example every time
      a GET results into an integer encoded object to be returned to the
      user).
      0ce352c1
    • antirez's avatar
      PFSELFTEST: less false positives. · 0adf4482
      antirez authored
      This is just a quickfix, for the nature of the test the right way to fix
      it is to average the error of N runs, since otherwise it is always
      possible to get a false positive with a bad run, or to minimize too much
      this possibility we may end testing with too much "large" error ranges.
      0adf4482
  5. 22 Jul, 2014 5 commits
    • antirez's avatar
      Test: check sorted set elements order after union. · b9bb7e2d
      antirez authored
      This is not a regression but issue #1786 showed the need for this test.
      b9bb7e2d
    • antirez's avatar
      d74e422b
    • antirez's avatar
      ZUNIONSTORE reimplemented for speed. · 119813e9
      antirez authored
      The user @kjmph provided excellent ideas to improve speed of ZUNIONSTORE
      (in certain cases by many order of magnitude), together with an
      implementation of the ideas.
      
      While the ideas were sounding, the implementation could be improved both
      in terms of speed and clearness, so that's my attempt at reimplementing
      the speedup proposed, trying to improve by directly using just a
      dictionary with an embedded score inside, and reusing the single-pass
      aggregate + order-later approach.
      
      Note that you can't apply this commit without applying the previous
      commit in this branch that adds a double in the dictEntry value union.
      
      Issue #1786.
      119813e9
    • antirez's avatar
      Add double field in dict.c entry value union. · d1cb6a0f
      antirez authored
      d1cb6a0f
    • antirez's avatar
      CLUSTER RESET: Flush dataset if node is a slave. · 89af4631
      antirez authored
      For non-empty masters, CLUSTER RESET is denied, and the user requires to
      start to reset a node by explicitly clearing it with FLUSHALL.
      However CLUSTER RESET when executed with slaves don't have this
      restrictions since data is just a replica of the master, and with
      read-only slaves it is also not possible to remove the data set. However
      the node was turned from slave to master after a reset, without touching
      the old slave data. This is 99.99% of times not appropriate and forces
      full resets to follow this path to work with both slave and master
      nodes:
      
          FLUSHALL
          CLUSTER RESET HARD
          FLUSHALL
      
      Since we need the first flushall for masters, and the second for slaves.
      
      This commit changes the behavior so that CLUSTER RESET removes the data set
      of a slave node during a reset, in the moment it gets turned into a master,
      so the new pattern is simply:
      
          FLUSHALL (that may fail for slaves)
          CLUSTER RESET
      89af4631
  6. 21 Jul, 2014 1 commit