1. 21 Jul, 2021 3 commits
    • Wen Hui's avatar
      redis-cli cluster import support source and target that need auth (#7994) · 3941d2e0
      Wen Hui authored
      Make it possible for redis-cli cluster import to work with source and
      target that require AUTH.
      
      Adding two different flags --cluster-from-user, --cluster-from-pass
      and --cluster-askpass for source node authentication.
      Also for target authentication, using existing --user and --pass flag.
      
      Example:
      
      ./redis-cli --cluster import 127.0.0.1:7000 --cluster-from 127.0.0.1:6379 --pass 1234 --user default --cluster-from-user default --cluster-from-pass 123456
      
      ./redis-cli --cluster import 127.0.0.1:7000 --cluster-from 127.0.0.1:6379 --askpass --cluster-from-user default --cluster-from-askpass
      
      
      (cherry picked from commit 639b73cd)
      3941d2e0
    • Huang Zhw's avatar
      redis-cli cluster import command may issue wrong MIGRATE command. (#8945) · 4f59673d
      Huang Zhw authored
      In clusterManagerCommandImport strcat was used to concat COPY and
      REPLACE, the space maybe not enough.
      If we use --cluster-replace but not --cluster-copy, the MIGRATE
      command contained COPY instead of REPLACE.
      
      (cherry picked from commit a049f629)
      (cherry picked from commit d4771a995e99e61e2e8feb92ede06431195b0300)
      4f59673d
    • Maxim Galushka's avatar
      redis-cli: support for REDIS_REPLY_SET in CSV and RAW output. (#7338) · 981953a6
      Maxim Galushka authored
      Fixes #6792. Added support of REDIS_REPLY_SET in raw and csv output of `./redis-cli`
      
      Test:
      
      run commands to test:
        ./redis-cli -3 --csv COMMAND
        ./redis-cli -3 --raw COMMAND
      
      Now they are returning resuts, were failing with: "Unknown reply type: 10" before the change.
      
      (cherry picked from commit 96bb0785)
      981953a6
  2. 30 May, 2021 1 commit
  3. 03 May, 2021 1 commit
  4. 22 Feb, 2021 1 commit
    • Greg Femec's avatar
      Fix random element selection for large hash tables. (#8133) · cde69883
      Greg Femec authored
      
      
      When a database on a 64 bit build grows past 2^31 keys, the underlying hash table expands to 2^32 buckets. After this point, the algorithms for selecting random elements only return elements from half of the available buckets because they use random() which has a range of 0 to 2^31 - 1. This causes problems for eviction policies which use dictGetSomeKeys or dictGetRandomKey. Over time they cause the hash table to become unbalanced because, while new keys are spread out evenly across all buckets, evictions come from only half of the available buckets. Eventually this half of the table starts to run out of keys and it takes longer and longer to find candidates for eviction. This continues until no more evictions can happen.
      
      This solution addresses this by using a 64 bit PRNG instead of libc random().
      Co-authored-by: default avatarGreg Femec <gfemec@google.com>
      (cherry picked from commit 266949c7)
      cde69883
  5. 12 Jan, 2021 1 commit
    • Oran Agra's avatar
      fix crash in redis-cli after making cluster backup (#8267) · 02e93062
      Oran Agra authored
      getRDB is "designed" to work in two modes: one for redis-cli --rdb and
      one for redis-cli --cluster backup.
      in the later case it uses the hiredis connection from the cluster nodes
      and it used to free it without nullifying the context, so a later
      attempt to free the context would crash.
      
      I suppose the reason it seems to want to free the hiredis context ASAP
      is that it wants to disconnect the replica link, so that replication
      buffers will not be accumulated.
      
      (cherry picked from commit 41b2ed2b)
      02e93062
  6. 27 Oct, 2020 3 commits
    • Andreas Lind's avatar
      Support redis-cli -u rediss://... (#7900) · db9cffe7
      Andreas Lind authored
      
      (cherry picked from commit 8b497881)
      db9cffe7
    • DvirDukhan's avatar
      redis-cli add control on raw format line delimiter (#7841) · 93b4c6b3
      DvirDukhan authored
      
      
      Adding -D option for redis-cli to control newline between command
      responses in raw mode.
      
      Also removing cleanup code before calling exit, just in order
      to avoid adding more adding more cleanup code (redis doesn't
      bother to release allocations before exit anyway)
      Co-authored-by: default avatarOran Agra <oran@redislabs.com>
      (cherry picked from commit 6418d767)
      93b4c6b3
    • Oran Agra's avatar
      Squash merging 125 typo/grammar/comment/doc PRs (#7773) · 2ae7f491
      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>...
      2ae7f491
  7. 10 Sep, 2020 2 commits
  8. 01 Sep, 2020 3 commits
  9. 20 Jul, 2020 4 commits
  10. 22 May, 2020 3 commits
  11. 30 Apr, 2020 4 commits
  12. 25 Mar, 2020 3 commits
  13. 12 Mar, 2020 1 commit
  14. 05 Mar, 2020 1 commit
  15. 12 Feb, 2020 2 commits
  16. 04 Feb, 2020 1 commit
  17. 12 Dec, 2019 1 commit
  18. 31 Oct, 2019 1 commit
  19. 25 Oct, 2019 1 commit
  20. 15 Oct, 2019 1 commit
  21. 08 Oct, 2019 1 commit
    • Yossi Gottlieb's avatar
      TLS: Improve CA certifiate configuration options. · d7f2681a
      Yossi Gottlieb authored
      This adds support for explicit configuration of a CA certs directory (in
      addition to the previously supported bundle file).  For redis-cli, if no
      explicit CA configuration is supplied the system-wide default
      configuration will be adopted.
      d7f2681a
  22. 07 Oct, 2019 1 commit
    • Yossi Gottlieb's avatar
      TLS: Connections refactoring and TLS support. · b087dd1d
      Yossi Gottlieb authored
      * Introduce a connection abstraction layer for all socket operations and
      integrate it across the code base.
      * Provide an optional TLS connections implementation based on OpenSSL.
      * Pull a newer version of hiredis with TLS support.
      * Tests, redis-cli updates for TLS support.
      b087dd1d