1. 10 Jun, 2020 22 commits
  2. 09 Jun, 2020 1 commit
  3. 08 Jun, 2020 3 commits
    • Oran Agra's avatar
      fix disconnectSlaves, to try to free each slave. · 12504105
      Oran Agra authored
      the recent change in that loop (iteration rather than waiting for it to
      be empty) was intended to avoid an endless loop in case some slave would
      refuse to be freed.
      
      but the lookup of the first client remained, which would have caused it
      to try the first one again and again instead of moving on.
      12504105
    • Oran Agra's avatar
      2bb297b1
    • Oran Agra's avatar
      Avoid rejecting WATCH / UNWATCH, like MULTI/EXEC/DISCARD · 2fa077b0
      Oran Agra authored
      Much like MULTI/EXEC/DISCARD, the WATCH and UNWATCH are not actually
      operating on the database or server state, but instead operate on the
      client state. the client may send them all in one long pipeline and check
      all the responses only at the end, so failing them may lead to a
      mismatch between the client state on the server and the one on the
      client end, and execute the wrong commands (ones that were meant to be
      discarded)
      
      the watched keys are not actually stored in the client struct, but they
      are in fact part of the client state. for instance, they're not cleared
      or moved in SWAPDB or FLUSHDB.
      2fa077b0
  4. 07 Jun, 2020 1 commit
  5. 06 Jun, 2020 2 commits
  6. 03 Jun, 2020 1 commit
  7. 02 Jun, 2020 1 commit
  8. 29 May, 2020 1 commit
    • antirez's avatar
      Fix handling of special chars in ACL LOAD. · 1f8ea99b
      antirez authored
      Now it is also possible for ACL SETUSER to accept empty strings
      as valid operations (doing nothing), so for instance
      
          ACL SETUSER myuser ""
      
      Will have just the effect of creating a user in the default state.
      
      This should fix #7329.
      1f8ea99b
  9. 28 May, 2020 1 commit
  10. 27 May, 2020 5 commits
    • antirez's avatar
      Drop useless line from replicationCacheMaster(). · 484af8ed
      antirez authored
      484af8ed
    • Kevin Fwu's avatar
      Fix TLS certificate loading for chained certificates. · 151b12a8
      Kevin Fwu authored
      This impacts client verification for chained certificates (such as Lets
      Encrypt certificates). Client Verify requires the full chain in order to
      properly verify the certificate.
      151b12a8
    • antirez's avatar
      Remove the meaningful offset feature. · 22472fe5
      antirez authored
      After a closer look, the Redis core devleopers all believe that this was
      too fragile, caused many bugs that we didn't expect and that were very
      hard to track. Better to find an alternative solution that is simpler.
      22472fe5
    • antirez's avatar
      Set a protocol error if master use the inline protocol. · 325409a0
      antirez authored
      We want to react a bit more aggressively if we sense that the master is
      sending us some corrupted stream. By setting the protocol error we both
      ensure that the replica will disconnect, and avoid caching the master so
      that a full SYNC will be required. This is protective against
      replication bugs.
      325409a0
    • Liu Zhen's avatar
      fix clusters mixing accidentally by gossip · 3984dc65
      Liu Zhen authored
      `clusterStartHandshake` will start hand handshake
      and eventually send CLUSTER MEET message, which is strictly prohibited
      in the REDIS CLUSTER SPEC.
      Only system administrator can initiate CLUSTER MEET message.
      Futher, according to the SPEC, rather than IP/PORT pairs, only nodeid
      can be trusted.
      3984dc65
  11. 26 May, 2020 2 commits