1. 30 Nov, 2017 13 commits
    • antirez's avatar
      Redis 4.0.4. · cb2f001f
      antirez authored
      cb2f001f
    • antirez's avatar
      8449227f
    • antirez's avatar
      PSYNC2: just store script bodies into RDB. · eeac1d35
      antirez authored
      Related to #4483. As suggested by @soloestoy, we can retrieve the SHA1
      from the body. Given that in the new implementation using AUX fields we
      ended copying around a lot to create new objects and strings, extremize
      such concept and trade CPU for space inside the RDB file.
      eeac1d35
    • antirez's avatar
      PSYNC2: luaCreateFunction() should handle NULL client parameter. · fb0441a8
      antirez authored
      See #4483. This is needed because luaCreateFunction() is now called
      from RDB loading code outside a client context.
      fb0441a8
    • antirez's avatar
      PSYNC2: Save Lua scripts state into RDB file. · 0429db3c
      antirez authored
      This is currently needed in order to fix #4483, but this can be
      useful in other contexts, so maybe later we may want to remove the
      conditionals and always save/load scripts.
      
      Note that we are using the "lua" AUX field here, in order to guarantee
      backward compatibility of the RDB file. The unknown AUX fields must be
      discarded by past versions of Redis.
      0429db3c
    • antirez's avatar
      Prevent corruption of server.executable after DEBUG RESTART. · ab3d3aca
      antirez authored
      Doing the following ended with a broken server.executable:
      
      1. Start Redis with src/redis-server
      2. Send CONFIG SET DIR /tmp/
      3. Send DEBUG RESTART
      
      At this point we called execve with an argv[0] that is no longer related
      to the new path. So after the restart the absolute path of the
      executable is recomputed in the wrong way. With this fix we pass the
      absolute path already computed as argv[0].
      ab3d3aca
    • antirez's avatar
      Be more verbose when DEBUG RESTART fails. · b7c7edf9
      antirez authored
      b7c7edf9
    • antirez's avatar
      Redis 4.0.3. · cbb6f457
      antirez authored
      cbb6f457
    • antirez's avatar
      LFU: Fix LFUDecrAndReturn() to just decrement. · d766322e
      antirez authored
      Splitting the popularity in half actually just needs decrementing the
      counter because the counter is logarithmic.
      d766322e
    • zhaozhao.zz's avatar
      LFU: add hotkeys option to redis-cli · 6544796a
      zhaozhao.zz authored
      6544796a
    • zhaozhao.zz's avatar
      LFU: do some changes about LFU to find hotkeys · e2355c19
      zhaozhao.zz authored
      Firstly, use access time to replace the decreas time of LFU.
      For function LFUDecrAndReturn,
      it should only try to get decremented counter,
      not update LFU fields, we will update it in an explicit way.
      And we will times halve the counter according to the times of
      elapsed time than server.lfu_decay_time.
      Everytime a key is accessed, we should update the LFU
      including update access time, and increment the counter after
      call function LFUDecrAndReturn.
      If a key is overwritten, the LFU should be also updated.
      Then we can use `OBJECT freq` command to get a key's frequence,
      and LFUDecrAndReturn should be called in `OBJECT freq` command
      in case of the key has not been accessed for a long time,
      because we update the access time only when the key is read or
      overwritten.
      e2355c19
    • zhaozhao.zz's avatar
      LFU: change lfu* parameters to int · 22969a13
      zhaozhao.zz authored
      22969a13
    • zhaozhao.zz's avatar
      6b71f714
  2. 28 Nov, 2017 9 commits
  3. 27 Nov, 2017 3 commits
  4. 24 Nov, 2017 10 commits
  5. 23 Nov, 2017 2 commits
  6. 21 Nov, 2017 1 commit
  7. 08 Nov, 2017 2 commits