1. 18 Jul, 2016 1 commit
    • antirez's avatar
      LFU: Initial naive eviction cycle. · a8e2d084
      antirez authored
      It is possible to get better results by using the pool like in the LRU
      case. Also from tests during the morning I believe the current
      implementation has issues in the frequency decay function that should
      decrease the counter at periodic intervals.
      a8e2d084
  2. 15 Jul, 2016 1 commit
  3. 13 Jul, 2016 1 commit
    • antirez's avatar
      LRU: Make cross-database choices for eviction. · e423f76e
      antirez authored
      The LRU eviction code used to make local choices: for each DB visited it
      selected the best key to evict. This was repeated for each DB. However
      this means that there could be DBs with very frequently accessed keys
      that are targeted by the LRU algorithm while there were other DBs with
      many better candidates to expire.
      
      This commit attempts to fix this problem for the LRU policy. However the
      TTL policy is still not fixed by this commit. The TTL policy will be
      fixed in a successive commit.
      
      This is an initial (partial because of TTL policy) fix for issue #2647.
      e423f76e
  4. 12 Jul, 2016 3 commits
  5. 11 Jul, 2016 1 commit
    • antirez's avatar
      Remove useless memmove() from freeMemoryIfNeeded(). · 382991f8
      antirez authored
      We start from the end of the pool to the initial item, zero-ing
      every entry we use or every ghost entry, there is nothing to memmove
      since to the right everything should be already set to NULL.
      382991f8
  6. 06 Jul, 2016 1 commit