1. 03 Nov, 2019 1 commit
    • Oran Agra's avatar
      Module API for loading and saving long double · 779aebc9
      Oran Agra authored
      looks like each platform implements long double differently (different bit count)
      so we can't save them as binary, and we also want to avoid creating a new RDB
      format version, so we save these are hex strings using "%La".
      
      This commit includes a change in the arguments of ld2string to support this.
      as well as tests for coverage and short reads.
      
      coded by @guybe7
      779aebc9
  2. 04 Oct, 2019 1 commit
  3. 20 Sep, 2019 1 commit
  4. 18 Sep, 2019 1 commit
  5. 31 Jul, 2019 1 commit
  6. 22 Jul, 2019 1 commit
  7. 04 Jul, 2019 1 commit
  8. 14 Mar, 2019 2 commits
  9. 12 Feb, 2019 1 commit
    • Guy Benoish's avatar
      Trim SDS free space of retained module strings · bdd9a800
      Guy Benoish authored
      In some cases processMultibulkBuffer uses sdsMakeRoomFor to
      expand the querybuf, but later in some cases it uses that query
      buffer as is for an argv element (see "Optimization"), which means
      that the sds in argv may have a lot of wasted space, and then in case
      modules keep that argv RedisString inside their data structure, this
      space waste will remain for long (until restarted from rdb).
      bdd9a800
  10. 09 Jan, 2019 2 commits
  11. 28 Nov, 2018 1 commit
    • zhaozhao.zz's avatar
      MEMORY command: make USAGE more accurate · d56c6313
      zhaozhao.zz authored
      In MEMORY USAGE command, we count the key argv[2] into usage,
      but the argument in command may contains free spaces because of
      sdsMakeRoomFor. But the key in db never contains free spaces
      because we use sdsdup when dbAdd, so using the real key to
      count the usage is more accurate.
      d56c6313
  12. 06 Nov, 2018 1 commit
  13. 16 Oct, 2018 2 commits
  14. 11 Sep, 2018 1 commit
  15. 13 Aug, 2018 1 commit
  16. 23 Jul, 2018 1 commit
  17. 22 Jul, 2018 1 commit
  18. 02 Jul, 2018 1 commit
  19. 21 Jun, 2018 1 commit
  20. 20 Jun, 2018 1 commit
    • Guy Benoish's avatar
      Enhance RESTORE with RDBv9 new features · b5197f1f
      Guy Benoish authored
      RESTORE now supports:
      1. Setting LRU/LFU
      2. Absolute-time TTL
      
      Other related changes:
      1. RDB loading will not override LRU bits when RDB file
         does not contain the LRU opcode.
      2. RDB loading will not set LRU/LFU bits if the server's
         maxmemory-policy does not match.
      b5197f1f
  21. 18 Jun, 2018 1 commit
  22. 07 Jun, 2018 1 commit
  23. 31 May, 2018 1 commit
  24. 27 May, 2018 1 commit
  25. 20 Mar, 2018 1 commit
  26. 12 Mar, 2018 1 commit
    • Oran Agra's avatar
      Adding real allocator fragmentation to INFO and MEMORY command + active defrag test · 806736cd
      Oran Agra authored
      other fixes / improvements:
      - LUA script memory isn't taken from zmalloc (taken from libc malloc)
        so it can cause high fragmentation ratio to be displayed (which is false)
      - there was a problem with "fragmentation" info being calculated from
        RSS and used_memory sampled at different times (now sampling them together)
      
      other details:
      - adding a few more allocator info fields to INFO and MEMORY commands
      - improve defrag test to measure defrag latency of big keys
      - increasing the accuracy of the defrag test (by looking at real grag info)
        this way we can use an even lower threshold and still avoid false positives
      - keep the old (total) "fragmentation" field unchanged, but add new ones for spcific things
      - add these the MEMORY DOCTOR command
      - deduct LUA memory from the rss in case of non jemalloc allocator (one for which we don't "allocator active/used")
      - reduce sampling rate of the rss and allocator info
      806736cd
  27. 23 Feb, 2018 1 commit
  28. 05 Jan, 2018 1 commit
  29. 15 Dec, 2017 2 commits
  30. 10 Dec, 2017 1 commit
  31. 06 Dec, 2017 1 commit
    • antirez's avatar
      Change indentation and other minor details of PR #4489. · 522760fa
      antirez authored
      The main change introduced by this commit is pretending that help
      arrays are more text than code, thus indenting them at level 0. This
      improves readability, and is an old practice when defining arrays of
      C strings describing text.
      
      Additionally a few useless return statements are removed, and the HELP
      subcommand capitalized when printed to the user.
      522760fa
  32. 01 Dec, 2017 3 commits
  33. 28 Nov, 2017 1 commit
    • Itamar Haber's avatar
      Standardizes the 'help' subcommand · 59d52f7f
      Itamar Haber authored
      This adds a new `addReplyHelp` helper that's used by commands
      when returning a help text. The following commands have been
      touched: DEBUG, OBJECT, COMMAND, PUBSUB, SCRIPT and SLOWLOG.
      
      WIP
      
      Fix entry command table entry for OBJECT for HELP option.
      
      After #4472 the command may have just 2 arguments.
      
      Improve OBJECT HELP descriptions.
      
      See #4472.
      
      WIP 2
      
      WIP 3
      59d52f7f
  34. 27 Nov, 2017 1 commit
    • zhaozhao.zz's avatar
      LFU: do some changes about LFU to find hotkeys · 583c3147
      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.
      583c3147