1. 08 Jul, 2019 2 commits
    • Oran Agra's avatar
      diskless replication on slave side (don't store rdb to file), plus some other related fixes · 2de544cf
      Oran Agra authored
      The implementation of the diskless replication was currently diskless only on the master side.
      The slave side was still storing the received rdb file to the disk before loading it back in and parsing it.
      
      This commit adds two modes to load rdb directly from socket:
      1) when-empty
      2) using "swapdb"
      the third mode of using diskless slave by flushdb is risky and currently not included.
      
      other changes:
      --------------
      distinguish between aof configuration and state so that we can re-enable aof only when sync eventually
      succeeds (and not when exiting from readSyncBulkPayload after a failed attempt)
      also a CONFIG GET and INFO during rdb loading would have lied
      
      When loading rdb from the network, don't kill the server on short read (that can be a network error)
      
      Fix rdb check when performed on preamble AOF
      
      tests:
      run replication tests for diskless slave too
      make replication test a bit more aggressive
      Add test for diskless load swapdb
      2de544cf
    • Angus Pearson's avatar
  2. 05 Jul, 2019 1 commit
  3. 03 Jul, 2019 2 commits
  4. 30 Jun, 2019 2 commits
  5. 13 Jun, 2019 1 commit
  6. 10 Jun, 2019 1 commit
  7. 06 May, 2019 7 commits
  8. 29 Apr, 2019 1 commit
  9. 24 Mar, 2019 1 commit
  10. 21 Mar, 2019 2 commits
  11. 18 Mar, 2019 1 commit
  12. 15 Mar, 2019 1 commit
  13. 07 Mar, 2019 1 commit
  14. 27 Feb, 2019 2 commits
  15. 25 Feb, 2019 1 commit
  16. 21 Feb, 2019 2 commits
  17. 13 Feb, 2019 1 commit
    • zhaozhao.zz's avatar
      ACL: show categories in COMMAND reply · 14507457
      zhaozhao.zz authored
      Adding another new filed categories at the end of
      command reply, it's easy to read and distinguish
      flags and categories, also compatible with old format.
      14507457
  18. 12 Feb, 2019 2 commits
    • 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
    • zhaozhao.zz's avatar
      ACL: add masteruser configuration for replication · ea9d3aef
      zhaozhao.zz authored
      In mostly production environment, normal user's behavior should be
      limited.
      
      Now in redis ACL mechanism we can do it like that:
      
          user default on +@all ~* -@dangerous nopass
          user admin on +@all ~* >someSeriousPassword
      
      Then the default normal user can not execute dangerous commands like
      FLUSHALL/KEYS.
      
      But some admin commands are in dangerous category too like PSYNC,
      and the configurations above will forbid replica from sync with master.
      
      Finally I think we could add a new configuration for replication,
      it is masteruser option, like this:
      
          masteruser admin
          masterauth someSeriousPassword
      
      Then replica will try AUTH admin someSeriousPassword and get privilege
      to execute PSYNC. If masteruser is NULL, replica would AUTH with only
      masterauth like before.
      ea9d3aef
  19. 07 Feb, 2019 1 commit
  20. 05 Feb, 2019 1 commit
  21. 04 Feb, 2019 4 commits
  22. 31 Jan, 2019 1 commit
  23. 23 Jan, 2019 2 commits