1. 08 May, 2020 9 commits
    • antirez's avatar
      fc7bc320
    • hwware's avatar
    • antirez's avatar
      Fix NetBSD build by fixing redis_set_thread_title() support. · b062fd52
      antirez authored
      See #7188.
      b062fd52
    • antirez's avatar
      Rework a bit the documentation for CPU pinning. · 4efb25d9
      antirez authored
      4efb25d9
    • zhenwei pi's avatar
      Support setcpuaffinity on linux/bsd · d6436eb7
      zhenwei pi authored
      Currently, there are several types of threads/child processes of a
      redis server. Sometimes we need deeply optimise the performance of
      redis, so we would like to isolate threads/processes.
      
      There were some discussion about cpu affinity cases in the issue:
      https://github.com/antirez/redis/issues/2863
      
      
      
      So implement cpu affinity setting by redis.conf in this patch, then
      we can config server_cpulist/bio_cpulist/aof_rewrite_cpulist/
      bgsave_cpulist by cpu list.
      
      Examples of cpulist in redis.conf:
      server_cpulist 0-7:2      means cpu affinity 0,2,4,6
      bio_cpulist 1,3           means cpu affinity 1,3
      aof_rewrite_cpulist 8-11  means cpu affinity 8,9,10,11
      bgsave_cpulist 1,10-11    means cpu affinity 1,10,11
      
      Test on linux/freebsd, both work fine.
      Signed-off-by: default avatarzhenwei pi <pizhenwei@bytedance.com>
      d6436eb7
    • Guy Benoish's avatar
      XPENDING should not update consumer's seen-time · 3a441c7d
      Guy Benoish authored
      Same goes for XGROUP DELCONSUMER (But in this case, it doesn't
      have any visible effect)
      3a441c7d
    • Oran Agra's avatar
      optimize memory usage of deferred replies - fixed · 75addb4f
      Oran Agra authored
      When deffered reply is added the previous reply node cannot be used so
      all the extra space we allocated in it is wasted. in case someone uses
      deffered replies in a loop, each time adding a small reply, each of
      these reply nodes (the small string reply) would have consumed a 16k
      block.
      now when we add anther diferred reply node, we trim the unused portion
      of the previous reply block.
      
      see #7123
      
      cherry picked from commit fb732f7a
      with fix to handle a crash with LIBC allocator, which apparently can
      return the same pointer despite changing it's size.
      i.e. shrinking an allocation of 16k into 56 bytes without changing the
      pointer.
      75addb4f
    • Deliang Yang's avatar
      reformat code · c57d9146
      Deliang Yang authored
      c57d9146
    • Oran Agra's avatar
      add daily github actions with libc malloc and valgrind · 3d3861dd
      Oran Agra authored
      * fix memlry leaks with diskless replica short read.
      * fix a few timing issues with valgrind runs
      * fix issue with valgrind and watchdog schedule signal
      
      about the valgrind WD issue:
      the stack trace test in logging.tcl, has issues with valgrind:
      ==28808== Can't extend stack to 0x1ffeffdb38 during signal delivery for thread 1:
      ==28808==   too small or bad protection modes
      
      it seems to be some valgrind bug with SA_ONSTACK.
      SA_ONSTACK seems unneeded since WD is not recursive (SA_NODEFER was removed),
      also, not sure if it's even valid without a call to sigaltstack()
      3d3861dd
  2. 01 May, 2020 4 commits
  3. 30 Apr, 2020 19 commits
  4. 28 Apr, 2020 7 commits
  5. 27 Apr, 2020 1 commit
    • Oran Agra's avatar
      optimize memory usage of deferred replies · 8110ba88
      Oran Agra authored
      When deffered reply is added the previous reply node cannot be used so
      all the extra space we allocated in it is wasted. in case someone uses
      deffered replies in a loop, each time adding a small reply, each of
      these reply nodes (the small string reply) would have consumed a 16k
      block.
      now when we add anther diferred reply node, we trim the unused portion
      of the previous reply block.
      
      see #7123
      8110ba88