1. 08 Nov, 2024 1 commit
    • Nugine's avatar
      Optimize PFCOUNT, PFMERGE command by SIMD acceleration (#13558) · fdeb9762
      Nugine authored
      This PR optimizes the performance of HyperLogLog commands (PFCOUNT,
      PFMERGE) by adding AVX2 fast paths.
      
      Two AVX2 functions are added for conversion between raw representation
      and dense representation. They are 15 ~ 30 times faster than scalar
      implementaion. Note that sparse representation is not accelerated.
      
      AVX2 fast paths are enabled when the CPU supports AVX2 (checked at
      runtime) and the hyperloglog configuration is default (HLL_REGISTERS ==
      16384 && HLL_BITS == 6).
      
      When merging 3 dense hll structures, the benchmark shows a 12x speedup
      compared to the scalar version.
      
      ```
      pfcount key1 key2 key3
      pfmerge keyall key1 key2 key3
      ```
      
      ```
      ======================================================================================================
      Type             Ops/sec    Avg. Latency     p50 Latency     p99 Latency   p99.9 Latency       KB/sec 
      ------------------------------------------------------------------------------------------------------
      PFCOUNT-scalar    5570.09        35.89060        32.51100        65.27900        69.11900       299.17
      PFCOUNT-avx2     72604.92         2.82072         2.73500         5.50300         7.13500      3899.68
      ------------------------------------------------------------------------------------------------------
      PFMERGE-scalar    7879.13        25.52156        24.19100        46.33500        48.38300       492.45
      PFMERGE-avx2    126448.64         1.58120         1.53500         3.08700         4.89500      7903.04
      ------------------------------------------------------------------------------------------------------
      
      scalar: redis:unstable   9906daf5
      avx2:   Nugine:hll-simd  02e09f85ac07eace50ebdddd0fd70822f7b9152d 
      
      CPU:    13th Gen Intel® Core™ i9-13900H × 20
      Memory: 32.0 GiB
      OS:     Ubuntu 22.04.5 LTS
      ```
      
      Experiment repo: https://github.com/Nugine/redis-hyperloglog
      Benchmark script:
      https://github.com/Nugine/redis-hyperloglog/blob/main/scripts/memtier.sh
      Algorithm:
      https://github.com/Nugine/redis-hyperloglog/blob/main/cpp/bench.cpp
      
      
      
      resolves #13551
      
      ---------
      Co-authored-by: default avatarYuan Wang <wangyuancode@163.com>
      Co-authored-by: default avatardebing.sun <debing.sun@redis.com>
      fdeb9762
  2. 05 Aug, 2024 1 commit
  3. 01 Aug, 2024 1 commit
  4. 20 Mar, 2024 1 commit
  5. 27 Nov, 2023 1 commit
    • binfeng-xin's avatar
      Call signalModifiedKey after the key modification is completed (#11144) · 56ec1ff1
      binfeng-xin authored
      
      
      Fix `signalModifiedKey()` order, call it after key modification
      completed, to ensure the state of key eventual consistency.
      
      When a key is modified, Redis calls `signalModifiedKey` to notify other
      systems, such as the watch system of transactions and the tracking
      system of client side caching. However, in some commands, the
      `signalModifiedKey` call happens during the key modification process
      instead of after the key modification is completed. This can potentially
      cause issues, as systems relying on `signalModifiedKey` may receive the
      "write in flight" status of the key rather than its final state.
      
      These commands include:
      1. PFADD
      2. LSET, LMOVE, LREM
      3. ZPOPMIN, ZPOPMAX, BZPOPMIN, BZPOPMAX, ZMPOP, BZMPOP
      
      Currently there is no problem with Redis, but it is better to adjust the
      order of `signalModifiedKey()`, to avoid issues in future development on
      Redis.
      
      ---------
      Co-authored-by: default avatarzhaozhao.zz <zhaozhao.zz@alibaba-inc.com>
      56ec1ff1
  6. 16 Mar, 2023 1 commit
  7. 31 Jan, 2023 1 commit
    • uriyage's avatar
      Optimization: sdsRemoveFreeSpace to avoid realloc on noop (#11766) · 46393f98
      uriyage authored
      
      
      In #7875 (Redis 6.2), we changed the sds alloc to be the usable allocation
      size in order to:
      
      > reduce the need for realloc calls by making the sds implicitly take over
      the internal fragmentation
      
      This change was done most sds functions, excluding `sdsRemoveFreeSpace` and
      `sdsResize`, the reason is that in some places (e.g. clientsCronResizeQueryBuffer)
      we call sdsRemoveFreeSpace when we see excessive free space and want to trim it.
      so if we don't trim it exactly to size, the caller may still see excessive free space and
      call it again and again.
      
      However, this resulted in some excessive calls to realloc, even when there's no need
      and it's gonna be a no-op (e.g. when reducing 15 bytes allocation to 13).
      
      It turns out that a call for realloc with jemalloc can be expensive even if it ends up
      doing nothing, so this PR adds a check using `je_nallocx`, which is cheap to avoid
      the call for realloc.
      
      in addition to that this PR unifies sdsResize and sdsRemoveFreeSpace into common
      code. the difference between them was that sdsResize would avoid using SDS_TYPE_5,
      since it want to keep the string ready to be resized again, while sdsRemoveFreeSpace
      would permit using SDS_TYPE_5 and get an optimal memory consumption.
      now both methods take a `would_regrow` argument that makes it more explicit.
      
      the only actual impact of that is that in clientsCronResizeQueryBuffer we call both sdsResize
      and sdsRemoveFreeSpace for in different cases, and we now prevent the use of SDS_TYPE_5 in both.
      
      The new test that was added to cover this concern used to pass before this PR as well,
      this PR is just a performance optimization and cleanup.
      
      Benchmark:
      `redis-benchmark -c 100 -t set  -d 512 -P 10  -n  100000000`
      on i7-9850H with jemalloc, shows improvement from 1021k ops/sec to 1067k (average of 3 runs).
      some 4.5% improvement.
      Co-authored-by: default avatarOran Agra <oran@redislabs.com>
      46393f98
  8. 28 Nov, 2022 1 commit
    • Mingyi Kang's avatar
      Hyperloglog avoid allocate more than 'server.hll_sparse_max_bytes' bytes of... · f8ac5a65
      Mingyi Kang authored
      Hyperloglog avoid allocate more than 'server.hll_sparse_max_bytes' bytes of memory for sparse representation (#11438)
      
      Before this PR, we use sdsMakeRoomFor() to expand the size of hyperloglog
      string (sparse representation). And because sdsMakeRoomFor() uses a greedy
      strategy (allocate about twice what we need), the memory we allocated for the
      hyperloglog may be more than `server.hll_sparse_max_bytes` bytes.
      The memory more than` server.hll_sparse_max_bytes` will be wasted.
      
      In this pull request, tone down the greediness of the allocation growth, and also
      make sure it'll never request more than `server.hll_sparse_max_bytes`.
      
      This could in theory mean the size of the hyperloglog string is insufficient for the
      increment we need, should be ok since in this case we promote the hyperloglog
      to dense representation, an assertion was added to make sure.
      
      This PR also add some tests and fixes some typo and indentation issues.
      f8ac5a65
  9. 03 Aug, 2022 1 commit
    • Moti Cohen's avatar
      Adding parentheses and do-while(0) to macros (#11080) · 1aa6c4ab
      Moti Cohen authored
      Fixing few macros that doesn't follows most basic safety conventions
      which is wrapping any usage of passed variable
      with parentheses and if written more than one command, then wrap
      it with do-while(0) (or parentheses).
      1aa6c4ab
  10. 27 May, 2022 1 commit
    • Binbin's avatar
      Fix some commands key spec in json files (#10779) · 2a099d49
      Binbin authored
      There are some commands that has the wrong key specs.
      This PR adds a key-spec related check in generate-command-code.py.
      Check if the index is valid, or if there is an unused index.
      
      The check result will look like:
      ```
      [root]# python utils/generate-command-code.py
      Processing json files...
      Linking container command to subcommands...
      Checking all commands...
      command: RESTORE_ASKING may have unused key_spec
      command: RENAME may have unused key_spec
      command: PFDEBUG may have unused key_spec
      command: WATCH key_specs missing flags
      command: LCS arg: key2 key_spec_index error
      command: RENAMENX may have unused key_spec
      Error: There are errors in the commands check, please check the above logs.
      ```
      
      The following commands have been fixed according to the check results:
      - RESTORE ASKING: add missing arguments section (and history section)
      - RENAME: newkey's key_spec_index should be 1
      - PFDEBUG: add missing arguments (and change the arity from -3 to 3)
      - WATCH: add missing key_specs flags: RO, like EXIST (it allow you to know the key exists, or is modified, but doesn't "leak" the data)
      - LCS: key2 key_spec_index error, there is only one key-spec
      - RENAMENX: newkey's key_spec_index should be 1
      2a099d49
  11. 28 Nov, 2021 1 commit
    • Viktor Söderqvist's avatar
      Sort out the mess around writable replicas and lookupKeyRead/Write (#9572) · acf3495e
      Viktor Söderqvist authored
      Writable replicas now no longer use the values of expired keys. Expired keys are
      deleted when lookupKeyWrite() is used, even on a writable replica. Previously,
      writable replicas could use the value of an expired key in write commands such
      as INCR, SUNIONSTORE, etc..
      
      This commit also sorts out the mess around the functions lookupKeyRead() and
      lookupKeyWrite() so they now indicate what we intend to do with the key and
      are not affected by the command calling them.
      
      Multi-key commands like SUNIONSTORE, ZUNIONSTORE, COPY and SORT with the
      store option now use lookupKeyRead() for the keys they're reading from (which will
      not allow reading from logically expired keys).
      
      This commit also fixes a bug where PFCOUNT could return a value of an
      expired key.
      
      Test modules commands have their readonly and write flags updated to correctly
      reflect their lookups for reading or writing. Modules are not required to
      correctly reflect this in their command flags, but this change is made for
      consistency since the tests serve as usage examples.
      
      Fixes #6842. Fixes #7475.
      acf3495e
  12. 11 Nov, 2021 1 commit
    • Ozan Tezcan's avatar
      Add sanitizer support and clean up sanitizer findings (#9601) · b91d8b28
      Ozan Tezcan authored
      - Added sanitizer support. `address`, `undefined` and `thread` sanitizers are available.  
      - To build Redis with desired sanitizer : `make SANITIZER=undefined`
      - There were some sanitizer findings, cleaned up codebase
      - Added tests with address and undefined behavior sanitizers to daily CI.
      - Added tests with address sanitizer to the per-PR CI (smoke out mem leaks sooner).
      
      Basically, there are three types of issues : 
      
      **1- Unaligned load/store** : Most probably, this issue may cause a crash on a platform that
      does not support unaligned access. Redis does unaligned access only on supported platforms.
      
      **2- Signed integer overflow.** Although, signed overflow issue can be problematic time to time
      and change how compiler generates code, current findings mostly about signed shift or simple
      addition overflow. For most platforms Redis can be compiled for, this wouldn't cause any issue
      as far as I can tell (checked generated code on godbolt.org).
      
       **3 -Minor leak** (redis-cli), **use-after-free**(just before calling exit());
      
      UB means nothing guaranteed and risky to reason about program behavior but I don't think any
      of the fixes here worth backporting. As sanitizers are now part of the CI, preventing new issues
      will be the real benefit. 
      b91d8b28
  13. 10 Jun, 2021 1 commit
    • Binbin's avatar
      Fixed some typos, add a spell check ci and others minor fix (#8890) · 0bfccc55
      Binbin authored
      This PR adds a spell checker CI action that will fail future PRs if they introduce typos and spelling mistakes.
      This spell checker is based on blacklist of common spelling mistakes, so it will not catch everything,
      but at least it is also unlikely to cause false positives.
      
      Besides that, the PR also fixes many spelling mistakes and types, not all are a result of the spell checker we use.
      
      Here's a summary of other changes:
      1. Scanned the entire source code and fixes all sorts of typos and spelling mistakes (including missing or extra spaces).
      2. Outdated function / variable / argument names in comments
      3. Fix outdated keyspace masks error log when we check `config.notify-keyspace-events` in loadServerConfigFromString.
      4. Trim the white space at the end of line in `module.c`. Check: https://github.com/redis/redis/pull/7751
      5. Some outdated https link URLs.
      6. Fix some outdated comment. Such as:
          - In README: about the rdb, we used to said create a `thread`, change to `process`
          - dbRandomKey function coment (about the dictGetRandomKey, change to dictGetFairRandomKey)
          - notifyKeyspaceEvent fucntion comment (add type arg)
          - Some others minor fix in comment (Most of them are incorrectly quoted by variable names)
      7. Modified the error log so that users can easily distinguish between TCP and TLS in `changeBindAddr`
      0bfccc55
  14. 07 Jun, 2021 1 commit
  15. 24 Dec, 2020 1 commit
  16. 15 Dec, 2020 1 commit
    • sundb's avatar
      Fix some wrong server.dirty increments (#8140) · 7993780d
      sundb authored
      Fix wrong server dirty increment in
      * spopWithCountCommand
      * hsetCommand
      * ltrimCommand
      * pfaddCommand
      
      Some didn't increment the amount of fields (just one per command).
      Others had excessive increments.
      7993780d
  17. 10 Sep, 2020 1 commit
    • Oran Agra's avatar
      Squash merging 125 typo/grammar/comment/doc PRs (#7773) · 1c710385
      Oran Agra authored
      
      
      List of squashed commits or PRs
      ===============================
      
      commit 66801ea
      Author: hwware <wen.hui.ware@gmail.com>
      Date:   Mon Jan 13 00:54:31 2020 -0500
      
          typo fix in acl.c
      
      commit 46f55db
      Author: Itamar Haber <itamar@redislabs.com>
      Date:   Sun Sep 6 18:24:11 2020 +0300
      
          Updates a couple of comments
      
          Specifically:
      
          * RM_AutoMemory completed instead of pointing to docs
          * Updated link to custom type doc
      
      commit 61a2aa0
      Author: xindoo <xindoo@qq.com>
      Date:   Tue Sep 1 19:24:59 2020 +0800
      
          Correct errors in code comments
      
      commit a5871d1
      Author: yz1509 <pro-756@qq.com>
      Date:   Tue Sep 1 18:36:06 2020 +0800
      
          fix typos in module.c
      
      commit 41eede7
      Author: bookug <bookug@qq.com>
      Date:   Sat Aug 15 01:11:33 2020 +0800
      
          docs: fix typos in comments
      
      commit c303c84
      Author: lazy-snail <ws.niu@outlook.com>
      Date:   Fri Aug 7 11:15:44 2020 +0800
      
          fix spelling in redis.conf
      
      commit 1eb76bf
      Author: zhujian <zhujianxyz@gmail.com>
      Date:   Thu Aug 6 15:22:10 2020 +0800
      
          add a missing 'n' in comment
      
      commit 1530ec2
      Author: Daniel Dai <764122422@qq.com>
      Date:   Mon Jul 27 00:46:35 2020 -0400
      
          fix spelling in tracking.c
      
      commit e517b31
      Author: Hunter-Chen <huntcool001@gmail.com>
      Date:   Fri Jul 17 22:33:32 2020 +0800
      
          Update redis.conf
      Co-authored-by: default avatarItamar Haber <itamar@redislabs.com>
      
      commit c300eff
      Author: Hunter-Chen <huntcool001@gmail.com>
      Date:   Fri Jul 17 22:33:23 2020 +0800
      
          Update redis.conf
      Co-authored-by: default avatarItamar Haber <itamar@redislabs.com>
      
      commit 4c058a8
      Author: 陈浩鹏 <chenhaopeng@heytea.com>
      Date:   Thu Jun 25 19:00:56 2020 +0800
      
          Grammar fix and clarification
      
      commit 5fcaa81
      Author: bodong.ybd <bodong.ybd@alibaba-inc.com>
      Date:   Fri Jun 19 10:09:00 2020 +0800
      
          Fix typos
      
      commit 4caca9a
      Author: Pruthvi P <pruthvi@ixigo.com>
      Date:   Fri May 22 00:33:22 2020 +0530
      
          Fix typo eviciton => eviction
      
      commit b2a25f6
      Author: Brad Dunbar <dunbarb2@gmail.com>
      Date:   Sun May 17 12:39:59 2020 -0400
      
          Fix a typo.
      
      commit 12842ae
      Author: hwware <wen.hui.ware@gmail.com>
      Date:   Sun May 3 17:16:59 2020 -0400
      
          fix spelling in redis conf
      
      commit ddba07c
      Author: Chris Lamb <chris@chris-lamb.co.uk>
      Date:   Sat May 2 23:25:34 2020 +0100
      
          Correct a "conflicts" spelling error.
      
      commit 8fc7bf2
      Author: Nao YONASHIRO <yonashiro@r.recruit.co.jp>
      Date:   Thu Apr 30 10:25:27 2020 +0900
      
          docs: fix EXPIRE_FAST_CYCLE_DURATION to ACTIVE_EXPIRE_CYCLE_FAST_DURATION
      
      commit 9b2b67a
      Author: Brad Dunbar <dunbarb2@gmail.com>
      Date:   Fri Apr 24 11:46:22 2020 -0400
      
          Fix a typo.
      
      commit 0746f10
      Author: devilinrust <63737265+devilinrust@users.noreply.github.com>
      Date:   Thu Apr 16 00:17:53 2020 +0200
      
          Fix typos in server.c
      
      commit 92b588d
      Author: benjessop12 <56115861+benjessop12@users.noreply.github.com>
      Date:   Mon Apr 13 13:43:55 2020 +0100
      
          Fix spelling mistake in lazyfree.c
      
      commit 1da37aa
      Merge: 2d4ba28 af347a8c
      Author: hwware <wen.hui.ware@gmail.com>
      Date:   Thu Mar 5 22:41:31 2020 -0500
      
          Merge remote-tracking branch 'upstream/unstable' into expiretypofix
      
      commit 2d4ba28
      Author: hwware <wen.hui.ware@gmail.com>
      Date:   Mon Mar 2 00:09:40 2020 -0500
      
          fix typo in expire.c
      
      commit 1a746f7
      Author: SennoYuki <minakami1yuki@gmail.com>
      Date:   Thu Feb 27 16:54:32 2020 +0800
      
          fix typo
      
      commit 8599b1a
      Author: dongheejeong <donghee950403@gmail.com>
      Date:   Sun Feb 16 20:31:43 2020 +0000
      
          Fix typo in server.c
      
      commit f38d4e8
      Author: hwware <wen.hui.ware@gmail.com>
      Date:   Sun Feb 2 22:58:38 2020 -0500
      
          fix typo in evict.c
      
      commit fe143fc
      Author: Leo Murillo <leonardo.murillo@gmail.com>
      Date:   Sun Feb 2 01:57:22 2020 -0600
      
          Fix a few typos in redis.conf
      
      commit 1ab4d21
      Author: viraja1 <anchan.viraj@gmail.com>
      Date:   Fri Dec 27 17:15:58 2019 +0530
      
          Fix typo in Latency API docstring
      
      commit ca1f70e
      Author: gosth <danxuedexing@qq.com>
      Date:   Wed Dec 18 15:18:02 2019 +0800
      
          fix typo in sort.c
      
      commit a57c06b
      Author: ZYunH <zyunhjob@163.com>
      Date:   Mon Dec 16 22:28:46 2019 +0800
      
          fix-zset-typo
      
      commit b8c92b5
      Author: git-hulk <hulk.website@gmail.com>
      Date:   Mon Dec 16 15:51:42 2019 +0800
      
          FIX: typo in cluster.c, onformation->information
      
      commit 9dd981c
      Author: wujm2007 <jim.wujm@gmail.com>
      Date:   Mon Dec 16 09:37:52 2019 +0800
      
          Fix typo
      
      commit e132d7a
      Author: Sebastien Williams-Wynn <s.williamswynn.mail@gmail.com>
      Date:   Fri Nov 15 00:14:07 2019 +0000
      
          Minor typo change
      
      commit 47f44d5
      Author: happynote3966 <01ssrmikururudevice01@gmail.com>
      Date:   Mon Nov 11 22:08:48 2019 +0900
      
          fix comment typo in redis-cli.c
      
      commit b8bdb0d
      Author: fulei <fulei@kuaishou.com>
      Date:   Wed Oct 16 18:00:17 2019 +0800
      
          Fix a spelling mistake of comments  in defragDictBucketCallback
      
      commit 0def46a
      Author: fulei <fulei@kuaishou.com>
      Date:   Wed Oct 16 13:09:27 2019 +0800
      
          fix some spelling mistakes of comments in defrag.c
      
      commit f3596fd
      Author: Phil Rajchgot <tophil@outlook.com>
      Date:   Sun Oct 13 02:02:32 2019 -0400
      
          Typo and grammar fixes
      
          Redis and its documentation are great -- just wanted to submit a few corrections in the spirit of Hacktoberfest. Thanks for all your work on this project. I use it all the time and it works beautifully.
      
      commit 2b928cd
      Author: KangZhiDong <worldkzd@gmail.com>
      Date:   Sun Sep 1 07:03:11 2019 +0800
      
          fix typos
      
      commit 33aea14
      Author: Axlgrep <axlgrep@gmail.com>
      Date:   Tue Aug 27 11:02:18 2019 +0800
      
          Fixed eviction spelling issues
      
      commit e282a80
      Author: Simen Flatby <simen@oms.no>
      Date:   Tue Aug 20 15:25:51 2019 +0200
      
          Update comments to reflect prop name
      
          In the comments the prop is referenced as replica-validity-factor,
          but it is really named cluster-replica-validity-factor.
      
      commit 74d1f9a
      Author: Jim Green <jimgreen2013@qq.com>
      Date:   Tue Aug 20 20:00:31 2019 +0800
      
          fix comment error, the code is ok
      
      commit eea1407
      Author: Liao Tonglang <liaotonglang@gmail.com>
      Date:   Fri May 31 10:16:18 2019 +0800
      
          typo fix
      
          fix cna't to can't
      
      commit 0da553c
      Author: KAWACHI Takashi <tkawachi@gmail.com>
      Date:   Wed Jul 17 00:38:16 2019 +0900
      
          Fix typo
      
      commit 7fc8fb6
      Author: Michael Prokop <mika@grml.org>
      Date:   Tue May 28 17:58:42 2019 +0200
      
          Typo fixes
      
          s/familar/familiar/
          s/compatiblity/compatibility/
          s/ ot / to /
          s/itsef/itself/
      
      commit 5f46c9d
      Author: zhumoing <34539422+zhumoing@users.noreply.github.com>
      Date:   Tue May 21 21:16:50 2019 +0800
      
          typo-fixes
      
          typo-fixes
      
      commit 321dfe1
      Author: wxisme <850885154@qq.com>
      Date:   Sat Mar 16 15:10:55 2019 +0800
      
          typo fix
      
      commit b4fb131
      Merge: 267e0e6 3df1eb85
      Author: Nikitas Bastas <nikitasbst@gmail.com>
      Date:   Fri Feb 8 22:55:45 2019 +0200
      
          Merge branch 'unstable' of antirez/redis into unstable
      
      commit 267e0e6
      Author: Nikitas Bastas <nikitasbst@gmail.com>
      Date:   Wed Jan 30 21:26:04 2019 +0200
      
          Minor typo fix
      
      commit 30544e7
      Author: inshal96 <39904558+inshal96@users.noreply.github.com>
      Date:   Fri Jan 4 16:54:50 2019 +0500
      
          remove an extra 'a' in the comments
      
      commit 337969d
      Author: BrotherGao <yangdongheng11@gmail.com>
      Date:   Sat Dec 29 12:37:29 2018 +0800
      
          fix typo in redis.conf
      
      commit 9f4b121
      Merge: 423a030 e504583b
      Author: BrotherGao <yangdongheng@xiaomi.com>
      Date:   Sat Dec 29 11:41:12 2018 +0800
      
          Merge branch 'unstable' of antirez/redis into unstable
      
      commit 423a030
      Merge: 42b02b7 46a51cdc
      Author: 杨东衡 <yangdongheng@xiaomi.com>
      Date:   Tue Dec 4 23:56:11 2018 +0800
      
          Merge branch 'unstable' of antirez/redis into unstable
      
      commit 42b02b7
      Merge: 68c0e6e3 b8febe60
      
      
      Author: Dongheng Yang <yangdongheng11@gmail.com>
      Date:   Sun Oct 28 15:54:23 2018 +0800
      
          Merge pull request #1 from antirez/unstable
      
          update local data
      
      commit 714b589
      Author: Christian <crifei93@gmail.com>
      Date:   Fri Dec 28 01:17:26 2018 +0100
      
          fix typo "resulution"
      
      commit e23259d
      Author: garenchan <1412950785@qq.com>
      Date:   Wed Dec 26 09:58:35 2018 +0800
      
          fix typo: segfauls -> segfault
      
      commit a9359f8
      Author: xjp <jianping_xie@aliyun.com>
      Date:   Tue Dec 18 17:31:44 2018 +0800
      
          Fixed REDISMODULE_H spell bug
      
      commit a12c3e4
      Author: jdiaz <jrd.palacios@gmail.com>
      Date:   Sat Dec 15 23:39:52 2018 -0600
      
          Fixes hyperloglog hash function comment block description
      
      commit 770eb11
      Author: 林上耀 <1210tom@163.com>
      Date:   Sun Nov 25 17:16:10 2018 +0800
      
          fix typo
      
      commit fd97fbb
      Author: Chris Lamb <chris@chris-lamb.co.uk>
      Date:   Fri Nov 23 17:14:01 2018 +0100
      
          Correct "unsupported" typo.
      
      commit a85522d
      Author: Jungnam Lee <jungnam.lee@oracle.com>
      Date:   Thu Nov 8 23:01:29 2018 +0900
      
          fix typo in test comments
      
      commit ade8007
      Author: Arun Kumar <palerdot@users.noreply.github.com>
      Date:   Tue Oct 23 16:56:35 2018 +0530
      
          Fixed grammatical typo
      
          Fixed typo for word 'dictionary'
      
      commit 869ee39
      Author: Hamid Alaei <hamid.a85@gmail.com>
      Date:   Sun Aug 12 16:40:02 2018 +0430
      
          fix documentations: (ThreadSafeContextStart/Stop -> ThreadSafeContextLock/Unlock), minor typo
      
      commit f89d158
      Author: Mayank Jain <mayankjain255@gmail.com>
      Date:   Tue Jul 31 23:01:21 2018 +0530
      
          Updated README.md with some spelling corrections.
      
          Made correction in spelling of some misspelled words.
      
      commit 892198e
      Author: dsomeshwar <someshwar.dhayalan@gmail.com>
      Date:   Sat Jul 21 23:23:04 2018 +0530
      
          typo fix
      
      commit 8a4d780
      Author: Itamar Haber <itamar@redislabs.com>
      Date:   Mon Apr 30 02:06:52 2018 +0300
      
          Fixes some typos
      
      commit e3acef6
      Author: Noah Rosamilia <ivoahivoah@gmail.com>
      Date:   Sat Mar 3 23:41:21 2018 -0500
      
          Fix typo in /deps/README.md
      
      commit 04442fb
      Author: WuYunlong <xzsyeb@126.com>
      Date:   Sat Mar 3 10:32:42 2018 +0800
      
          Fix typo in readSyncBulkPayload() comment.
      
      commit 9f36880
      Author: WuYunlong <xzsyeb@126.com>
      Date:   Sat Mar 3 10:20:37 2018 +0800
      
          replication.c comment: run_id -> replid.
      
      commit f866b4a
      Author: Francesco 'makevoid' Canessa <makevoid@gmail.com>
      Date:   Thu Feb 22 22:01:56 2018 +0000
      
          fix comment typo in server.c
      
      commit 0ebc69b
      Author: 줍 <jubee0124@gmail.com>
      Date:   Mon Feb 12 16:38:48 2018 +0900
      
          Fix typo in redis.conf
      
          Fix `five behaviors` to `eight behaviors` in [this sentence ](antirez/redis@unstable/redis.conf#L564)
      
      commit b50a620
      Author: martinbroadhurst <martinbroadhurst@users.noreply.github.com>
      Date:   Thu Dec 28 12:07:30 2017 +0000
      
          Fix typo in valgrind.sup
      
      commit 7d8f349
      Author: Peter Boughton <peter@sorcerersisle.com>
      Date:   Mon Nov 27 19:52:19 2017 +0000
      
          Update CONTRIBUTING; refer doc updates to redis-doc repo.
      
      commit 02dec7e
      Author: Klauswk <klauswk1@hotmail.com>
      Date:   Tue Oct 24 16:18:38 2017 -0200
      
          Fix typo in comment
      
      commit e1efbc8
      Author: chenshi <baiwfg2@gmail.com>
      Date:   Tue Oct 3 18:26:30 2017 +0800
      
          Correct two spelling errors of comments
      
      commit 93327d8
      Author: spacewander <spacewanderlzx@gmail.com>
      Date:   Wed Sep 13 16:47:24 2017 +0800
      
          Update the comment for OBJ_ENCODING_EMBSTR_SIZE_LIMIT's value
      
          The value of OBJ_ENCODING_EMBSTR_SIZE_LIMIT is 44 now instead of 39.
      
      commit 63d361f
      Author: spacewander <spacewanderlzx@gmail.com>
      Date:   Tue Sep 12 15:06:42 2017 +0800
      
          Fix <prevlen> related doc in ziplist.c
      
          According to the definition of ZIP_BIG_PREVLEN and other related code,
          the guard of single byte <prevlen> should be 254 instead of 255.
      
      commit ebe228d
      Author: hanael80 <hanael80@gmail.com>
      Date:   Tue Aug 15 09:09:40 2017 +0900
      
          Fix typo
      
      commit 6b696e6
      Author: Matt Robenolt <matt@ydekproductions.com>
      Date:   Mon Aug 14 14:50:47 2017 -0700
      
          Fix typo in LATENCY DOCTOR output
      
      commit a2ec6ae
      Author: caosiyang <caosiyang@qiyi.com>
      Date:   Tue Aug 15 14:15:16 2017 +0800
      
          Fix a typo: form => from
      
      commit 3ab7699
      Author: caosiyang <caosiyang@qiyi.com>
      Date:   Thu Aug 10 18:40:33 2017 +0800
      
          Fix a typo: replicationFeedSlavesFromMaster() => replicationFeedSlavesFromMasterStream()
      
      commit 72d43ef
      Author: caosiyang <caosiyang@qiyi.com>
      Date:   Tue Aug 8 15:57:25 2017 +0800
      
          fix a typo: servewr => server
      
      commit 707c958
      Author: Bo Cai <charpty@gmail.com>
      Date:   Wed Jul 26 21:49:42 2017 +0800
      
          redis-cli.c typo: conut -> count.
      Signed-off-by: default avatarBo Cai <charpty@gmail.com>
      
      commit b9385b2
      Author: JackDrogon <jack.xsuperman@gmail.com>
      Date:   Fri Jun 30 14:22:31 2017 +0800
      
          Fix some spell problems
      
      commit 20d9230
      Author: akosel <aaronjkosel@gmail.com>
      Date:   Sun Jun 4 19:35:13 2017 -0500
      
          Fix typo
      
      commit b167bfc
      Author: Krzysiek Witkowicz <krzysiekwitkowicz@gmail.com>
      Date:   Mon May 22 21:32:27 2017 +0100
      
          Fix #4008 small typo in comment
      
      commit 2b78ac8
      Author: Jake Clarkson <jacobwclarkson@gmail.com>
      Date:   Wed Apr 26 15:49:50 2017 +0100
      
          Correct typo in tests/unit/hyperloglog.tcl
      
      commit b0f1cdb
      Author: Qi Luo <qiluo-msft@users.noreply.github.com>
      Date:   Wed Apr 19 14:25:18 2017 -0700
      
          Fix typo
      
      commit a90b0f9
      Author: charsyam <charsyam@naver.com>
      Date:   Thu Mar 16 18:19:53 2017 +0900
      
          fix typos
      
          fix typos
      
          fix typos
      
      commit 8430a79
      Author: Richard Hart <richardhart92@gmail.com>
      Date:   Mon Mar 13 22:17:41 2017 -0400
      
          Fixed log message typo in listenToPort.
      
      commit 481a1c2
      Author: Vinod Kumar <kumar003vinod@gmail.com>
      Date:   Sun Jan 15 23:04:51 2017 +0530
      
          src/db.c: Correct "save" -> "safe" typo
      
      commit 586b4d3
      Author: wangshaonan <wshn13@gmail.com>
      Date:   Wed Dec 21 20:28:27 2016 +0800
      
          Fix typo they->the in helloworld.c
      
      commit c1c4b5e
      Author: Jenner <hypxm@qq.com>
      Date:   Mon Dec 19 16:39:46 2016 +0800
      
          typo error
      
      commit 1ee1a3f
      Author: tielei <43289893@qq.com>
      Date:   Mon Jul 18 13:52:25 2016 +0800
      
          fix some comments
      
      commit 11a41fb
      Author: Otto Kekäläinen <otto@seravo.fi>
      Date:   Sun Jul 3 10:23:55 2016 +0100
      
          Fix spelling in documentation and comments
      
      commit 5fb5d82
      Author: francischan <f1ancis621@gmail.com>
      Date:   Tue Jun 28 00:19:33 2016 +0800
      
          Fix outdated comments about redis.c file.
          It should now refer to server.c file.
      
      commit 6b254bc
      Author: lmatt-bit <lmatt123n@gmail.com>
      Date:   Thu Apr 21 21:45:58 2016 +0800
      
          Refine the comment of dictRehashMilliseconds func
      
      SLAVECONF->REPLCONF in comment - by andyli029
      
      commit ee9869f
      Author: clark.kang <charsyam@naver.com>
      Date:   Tue Mar 22 11:09:51 2016 +0900
      
          fix typos
      
      commit f7b3b11
      Author: Harisankar H <harisankarh@gmail.com>
      Date:   Wed Mar 9 11:49:42 2016 +0530
      
          Typo correction: "faield" --> "failed"
      
          Typo correction: "faield" --> "failed"
      
      commit 3fd40fc
      Author: Itamar Haber <itamar@redislabs.com>
      Date:   Thu Feb 25 10:31:51 2016 +0200
      
          Fixes a typo in comments
      
      commit 621c160
      Author: Prayag Verma <prayag.verma@gmail.com>
      Date:   Mon Feb 1 12:36:20 2016 +0530
      
          Fix typo in Readme.md
      
          Spelling mistakes -
          `eviciton` > `eviction`
          `familar` > `familiar`
      
      commit d7d07d6
      Author: WonCheol Lee <toctoc21c@gmail.com>
      Date:   Wed Dec 30 15:11:34 2015 +0900
      
          Typo fixed
      
      commit a4dade7
      Author: Felix Bünemann <buenemann@louis.info>
      Date:   Mon Dec 28 11:02:55 2015 +0100
      
          [ci skip] Improve supervised upstart config docs
      
          This mentions that "expect stop" is required for supervised upstart
          to work correctly. See http://upstart.ubuntu.com/cookbook/#expect-stop
      
      
          for an explanation.
      
      commit d9caba9
      Author: daurnimator <quae@daurnimator.com>
      Date:   Mon Dec 21 18:30:03 2015 +1100
      
          README: Remove trailing whitespace
      
      commit 72d42e5
      Author: daurnimator <quae@daurnimator.com>
      Date:   Mon Dec 21 18:29:32 2015 +1100
      
          README: Fix typo. th => the
      
      commit dd6e957
      Author: daurnimator <quae@daurnimator.com>
      Date:   Mon Dec 21 18:29:20 2015 +1100
      
          README: Fix typo. familar => familiar
      
      commit 3a12b23
      Author: daurnimator <quae@daurnimator.com>
      Date:   Mon Dec 21 18:28:54 2015 +1100
      
          README: Fix typo. eviciton => eviction
      
      commit 2d1d03b
      Author: daurnimator <quae@daurnimator.com>
      Date:   Mon Dec 21 18:21:45 2015 +1100
      
          README: Fix typo. sever => server
      
      commit 3973b06
      Author: Itamar Haber <itamar@garantiadata.com>
      Date:   Sat Dec 19 17:01:20 2015 +0200
      
          Typo fix
      
      commit 4f2e460
      Author: Steve Gao <fu@2token.com>
      Date:   Fri Dec 4 10:22:05 2015 +0800
      
          Update README - fix typos
      
      commit b21667c
      Author: binyan <binbin.yan@nokia.com>
      Date:   Wed Dec 2 22:48:37 2015 +0800
      
          delete redundancy color judge in sdscatcolor
      
      commit 88894c7
      Author: binyan <binbin.yan@nokia.com>
      Date:   Wed Dec 2 22:14:42 2015 +0800
      
          the example output shoule be HelloWorld
      
      commit 2763470
      Author: binyan <binbin.yan@nokia.com>
      Date:   Wed Dec 2 17:41:39 2015 +0800
      
          modify error word keyevente
      Signed-off-by: default avatarbinyan <binbin.yan@nokia.com>
      
      commit 0847b3d
      Author: Bruno Martins <bscmartins@gmail.com>
      Date:   Wed Nov 4 11:37:01 2015 +0000
      
          typo
      
      commit bbb9e9e
      Author: dawedawe <dawedawe@gmx.de>
      Date:   Fri Mar 27 00:46:41 2015 +0100
      
          typo: zimap -> zipmap
      
      commit 5ed297e
      Author: Axel Advento <badwolf.bloodseeker.rev@gmail.com>
      Date:   Tue Mar 3 15:58:29 2015 +0800
      
          Fix 'salve' typos to 'slave'
      
      commit edec9d6
      Author: LudwikJaniuk <ludvig.janiuk@gmail.com>
      Date:   Wed Jun 12 14:12:47 2019 +0200
      
          Update README.md
      Co-Authored-By: default avatarQix <Qix-@users.noreply.github.com>
      
      commit 692a7af
      Author: LudwikJaniuk <ludvig.janiuk@gmail.com>
      Date:   Tue May 28 14:32:04 2019 +0200
      
          grammar
      
      commit d962b0a
      Author: Nick Frost <nickfrostatx@gmail.com>
      Date:   Wed Jul 20 15:17:12 2016 -0700
      
          Minor grammar fix
      
      commit 24fff01aaccaf5956973ada8c50ceb1462e211c6 (typos)
      Author: Chad Miller <chadm@squareup.com>
      Date:   Tue Sep 8 13:46:11 2020 -0400
      
          Fix faulty comment about operation of unlink()
      
      commit 3cd5c1f3326c52aa552ada7ec797c6bb16452355
      Author: Kevin <kevin.xgr@gmail.com>
      Date:   Wed Nov 20 00:13:50 2019 +0800
      
          Fix typo in server.c.
      
      From a83af59 Mon Sep 17 00:00:00 2001
      From: wuwo <wuwo@wacai.com>
      Date: Fri, 17 Mar 2017 20:37:45 +0800
      Subject: [PATCH] falure to failure
      
      From c961896 Mon Sep 17 00:00:00 2001
      From: =?UTF-8?q?=E5=B7=A6=E6=87=B6?= <veficos@gmail.com>
      Date: Sat, 27 May 2017 15:33:04 +0800
      Subject: [PATCH] fix typo
      
      From e600ef2 Mon Sep 17 00:00:00 2001
      From: "rui.zou" <rui.zou@yunify.com>
      Date: Sat, 30 Sep 2017 12:38:15 +0800
      Subject: [PATCH] fix a typo
      
      From c7d07fa Mon Sep 17 00:00:00 2001
      From: Alexandre Perrin <alex@kaworu.ch>
      Date: Thu, 16 Aug 2018 10:35:31 +0200
      Subject: [PATCH] deps README.md typo
      
      From b25cb67 Mon Sep 17 00:00:00 2001
      From: Guy Korland <gkorland@gmail.com>
      Date: Wed, 26 Sep 2018 10:55:37 +0300
      Subject: [PATCH 1/2] fix typos in header
      
      From ad28ca6 Mon Sep 17 00:00:00 2001
      From: Guy Korland <gkorland@gmail.com>
      Date: Wed, 26 Sep 2018 11:02:36 +0300
      Subject: [PATCH 2/2] fix typos
      
      commit 34924cdedd8552466fc22c1168d49236cb7ee915
      Author: Adrian Lynch <adi_ady_ade@hotmail.com>
      Date:   Sat Apr 4 21:59:15 2015 +0100
      
          Typos fixed
      
      commit fd2a1e7
      Author: Jan <jsteemann@users.noreply.github.com>
      Date:   Sat Oct 27 19:13:01 2018 +0200
      
          Fix typos
      
          Fix typos
      
      commit e14e47c1a234b53b0e103c5f6a1c61481cbcbb02
      Author: Andy Lester <andy@petdance.com>
      Date:   Fri Aug 2 22:30:07 2019 -0500
      
          Fix multiple misspellings of "following"
      
      commit 79b948ce2dac6b453fe80995abbcaac04c213d5a
      Author: Andy Lester <andy@petdance.com>
      Date:   Fri Aug 2 22:24:28 2019 -0500
      
          Fix misspelling of create-cluster
      
      commit 1fffde52666dc99ab35efbd31071a4c008cb5a71
      Author: Andy Lester <andy@petdance.com>
      Date:   Wed Jul 31 17:57:56 2019 -0500
      
          Fix typos
      
      commit 204c9ba9651e9e05fd73936b452b9a30be456cfe
      Author: Xiaobo Zhu <xiaobo.zhu@shopee.com>
      Date:   Tue Aug 13 22:19:25 2019 +0800
      
          fix typos
      
      Squashed commit of the following:
      
      commit 1d9aaf8
      Author: danmedani <danmedani@gmail.com>
      Date:   Sun Aug 2 11:40:26 2015 -0700
      
      README typo fix.
      
      Squashed commit of the following:
      
      commit 32bfa7c
      Author: Erik Dubbelboer <erik@dubbelboer.com>
      Date:   Mon Jul 6 21:15:08 2015 +0200
      
      Fixed grammer
      
      Squashed commit of the following:
      
      commit b24f69c
      Author: Sisir Koppaka <sisir.koppaka@gmail.com>
      Date:   Mon Mar 2 22:38:45 2015 -0500
      
      utils/hashtable/rehashing.c: Fix typos
      
      Squashed commit of the following:
      
      commit 4e04082
      Author: Erik Dubbelboer <erik@dubbelboer.com>
      Date:   Mon Mar 23 08:22:21 2015 +0000
      
      Small config file documentation improvements
      
      Squashed commit of the following:
      
      commit acb8773
      Author: ctd1500 <ctd1500@gmail.com>
      Date:   Fri May 8 01:52:48 2015 -0700
      
      Typo and grammar fixes in readme
      
      commit 2eb75b6
      Author: ctd1500 <ctd1500@gmail.com>
      Date:   Fri May 8 01:36:18 2015 -0700
      
      fixed redis.conf comment
      
      Squashed commit of the following:
      
      commit a8249a2
      Author: Masahiko Sawada <sawada.mshk@gmail.com>
      Date:   Fri Dec 11 11:39:52 2015 +0530
      
      Revise correction of typos.
      
      Squashed commit of the following:
      
      commit 3c02028
      Author: zhaojun11 <zhaojun11@jd.com>
      Date:   Wed Jan 17 19:05:28 2018 +0800
      
      Fix typos include two code typos in cluster.c and latency.c
      
      Squashed commit of the following:
      
      commit 9dba47c
      Author: q191201771 <191201771@qq.com>
      Date:   Sat Jan 4 11:31:04 2020 +0800
      
      fix function listCreate comment in adlist.c
      
      Update src/server.c
      
      commit 2c7c2cb536e78dd211b1ac6f7bda00f0f54faaeb
      Author: charpty <charpty@gmail.com>
      Date:   Tue May 1 23:16:59 2018 +0800
      
          server.c typo: modules system dictionary type comment
      Signed-off-by: default avatarcharpty <charpty@gmail.com>
      
      commit a8395323fb63cb59cb3591cb0f0c8edb7c29a680
      Author: Itamar Haber <itamar@redislabs.com>
      Date:   Sun May 6 00:25:18 2018 +0300
      
          Updates test_helper.tcl's help with undocumented options
      
          Specifically:
      
          * Host
          * Port
          * Client
      
      commit bde6f9ced15755cd6407b4af7d601b030f36d60b
      Author: wxisme <850885154@qq.com>
      Date:   Wed Aug 8 15:19:19 2018 +0800
      
          fix comments in deps files
      
      commit 3172474ba991532ab799ee1873439f3402412331
      Author: wxisme <850885154@qq.com>
      Date:   Wed Aug 8 14:33:49 2018 +0800
      
          fix some comments
      
      commit 01b6f2b6858b5cf2ce4ad5092d2c746e755f53f0
      Author: Thor Juhasz <thor@juhasz.pro>
      Date:   Sun Nov 18 14:37:41 2018 +0100
      
          Minor fixes to comments
      
          Found some parts a little unclear on a first read, which prompted me to have a better look at the file and fix some minor things I noticed.
          Fixing minor typos and grammar. There are no changes to configuration options.
          These changes are only meant to help the user better understand the explanations to the various configuration options
      1c710385
  18. 21 Apr, 2020 1 commit
  19. 07 Jan, 2020 1 commit
  20. 16 Sep, 2019 1 commit
  21. 31 Jul, 2019 1 commit
  22. 29 Jul, 2019 1 commit
  23. 16 Mar, 2019 1 commit
  24. 15 Mar, 2019 3 commits
  25. 09 Jan, 2019 1 commit
  26. 03 Jul, 2018 1 commit
  27. 03 Jun, 2018 1 commit
  28. 16 Mar, 2018 1 commit
  29. 14 Mar, 2018 1 commit
  30. 11 Mar, 2018 1 commit
  31. 10 Mar, 2018 4 commits
  32. 22 Dec, 2017 3 commits
  33. 11 Jul, 2017 1 commit