1. 15 Mar, 2013 3 commits
  2. 14 Mar, 2013 5 commits
  3. 13 Mar, 2013 10 commits
  4. 12 Mar, 2013 6 commits
  5. 11 Mar, 2013 3 commits
    • antirez's avatar
      activeExpireCycle() smarter with many DBs and under expire pressure. · 2d851333
      antirez authored
      activeExpireCycle() tries to test just a few DBs per iteration so that
      it scales if there are many configured DBs in the Redis instance.
      However this commit makes it a bit smarter when one a few of those DBs
      are under expiration pressure and there are many many keys to expire.
      
      What we do is to remember if in the last iteration had to return because
      we ran out of time. In that case the next iteration we'll test all the
      configured DBs so that we are sure we'll test again the DB under
      pressure.
      
      Before of this commit after some mass-expire in a given DB the function
      tested just a few of the next DBs, possibly empty, a few per iteration,
      so it took a long time for the function to reach again the DB under
      pressure. This resulted in a lot of memory being used by already expired
      keys and never accessed by clients.
      2d851333
    • antirez's avatar
      08b107e4
    • antirez's avatar
      4b1ccdfd
  6. 09 Mar, 2013 2 commits
  7. 08 Mar, 2013 5 commits
  8. 07 Mar, 2013 3 commits
  9. 06 Mar, 2013 3 commits
    • antirez's avatar
      Cluster: clusterUpdateState() function simplified. · 3dad8196
      antirez authored
      Also the NEEDHELP Cluster state was removed as it will no longer be
      used by Redis Cluster.
      3dad8196
    • Gengliang Wang's avatar
      Removed useless "return" statements in pubsub.c · 042ed270
      Gengliang Wang authored
      (original commit message edited)
      042ed270
    • antirez's avatar
      API to lookup commands with their original name. · 7b190a08
      antirez authored
      A new server.orig_commands table was added to the server structure, this
      contains a copy of the commant table unaffected by rename-command
      statements in redis.conf.
      
      A new API lookupCommandOrOriginal() was added that checks both tables,
      new first, old later, so that rewriteClientCommandVector() and friends
      can lookup commands with their new or original name in order to fix the
      client->cmd pointer when the argument vector is renamed.
      
      This fixes the segfault of issue #986, but does not fix a wider range of
      problems resulting from renaming commands that actually operate on data
      and are registered into the AOF file or propagated to slaves... That is
      command renaming should be handled with care.
      7b190a08