- 26 Jan, 2021 1 commit
-
-
Wen Hui authored
This commit fixes a well known and an annoying issue in Sentinel mode. Cause of this issue: Currently, Redis rewrite process works well in server mode, however in sentinel mode, the sentinel config has variant semantics for different configurations, in example configuration https://github.com/redis/redis/blob/unstable/sentinel.conf, we put comments on these. However the rewrite process only treat the sentinel config as a single option. During rewrite process, it will mess up with the lines and comments. Approaches: In order to solve this issue, we need to differentiate different subconfig options in sentinel separately, for example, sentinel monitor <master-name> <ip> <redis-port> <quorum> we can treat it as sentinel monitor option, instead of the sentinel option. This commit also fixes the dependency issue when putting configurations in sentinel.conf. For example before this commit,we must put `sentinel monitor <master-name> <ip> <redis-port> <quorum>` before `sentinel auth-pass <master-name> <password>` for a single master, otherwise the server cannot start and will return error. This commit fixes this issue, as long as the monitoring master was configured, no matter the sequence is, the sentinel can start and run properly.
-
- 22 Jan, 2021 1 commit
-
-
Andy Pan authored
* Print more details about fd leaks * temporarily prevent the leaks from failing the tests Co-authored-by:
Oran Agra <oran@redislabs.com>
-
- 20 Jan, 2021 1 commit
-
-
Andy Pan authored
-
- 19 Jan, 2021 1 commit
-
-
Andy Pan authored
Sentinel uses execve to run scripts, so it needs to use FD_CLOEXEC on all file descriptors, so that they're not accessible by the script it runs. This commit includes a change to the sentinel tests, which verifies no FDs are left opened when the script is executed.
-
- 13 Sep, 2020 1 commit
-
-
Mykhailo Pylyp authored
Co-authored-by:
MemuraiUser <githubuser@janeasystems.com>
-
- 07 Oct, 2019 2 commits
-
-
Yossi Gottlieb authored
Add configuration options for TLS protocol versions, ciphers/cipher suites selection, etc.
-
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.
-
- 26 Aug, 2018 1 commit
-
-
Chris Lamb authored
-
- 26 Jun, 2018 1 commit
-
-
antirez authored
-
- 22 Jul, 2016 2 commits
-
-
antirez authored
-
antirez authored
During the initial handshake with the master a slave will report to have a very high disconnection time from its master (since technically it was disconnected since forever, so the current UNIX time in seconds is reported). However when the slave is connected again the Sentinel may re-scan the INFO output again only after 10 seconds, which is a long time. During this time Sentinels will consider this instance unable to failover, so a useless delay is introduced. Actaully this hardly happened in the practice because when a slave's master is down, the INFO period for slaves changes to 1 second. However when a manual failover is attempted immediately after adding slaves (like in the case of the Sentinel unit test), this problem may happen. This commit changes the INFO period to 1 second even in the case the slave's master is not down, but the slave reported to be disconnected from the master (by publishing, last time we checked, a master disconnection time field in INFO). This change is required as a result of an unrelated change in the replication code that adds a small delay in the master-slave first synchronization.
-
- 19 May, 2015 1 commit
-
-
antirez authored
-
- 30 Mar, 2015 1 commit
-
-
antirez authored
-
- 29 Sep, 2014 1 commit
-
-
Matt Stancliff authored
-
- 23 Jun, 2014 1 commit
-
-
antirez authored
In the initialization test for each instance we used to unregister the old master and register it again to clear the config. However there is a race condition doing this: as soon as we unregister and re-register "mymaster", another Sentinel can update the new configuration with the old state because of gossip "hello" messages. So the correct procedure is instead, unregister "mymaster" from all the sentinel instances, and re-register it everywhere again.
-
- 19 Jun, 2014 3 commits
- 18 Jun, 2014 1 commit
-
-
Matt Stancliff authored
-
- 29 Apr, 2014 1 commit
-
-
antirez authored
-
- 24 Apr, 2014 1 commit
-
-
antirez authored
The test now runs in a self-contained directory. The general abstractions to run the tests in an environment where mutliple instances are executed at the same time was extrapolated into instances.tcl, that will be reused to test Redis Cluster.
-