- 23 6月, 2014 9 次提交
-
-
由 antirez 提交于
-
由 antirez 提交于
-
由 antirez 提交于
-
由 Matt Stancliff 提交于
Some deployments need traffic sent from a specific address. This change uses the same policy as Cluster where the first listed bindaddr becomes the source address for outgoing Sentinel communication. Fixes #1667
-
由 Matt Stancliff 提交于
We need to access (bindaddr[0] || NULL) in a few places, so centralize access with a nice macro.
-
由 antirez 提交于
-
由 Matt Stancliff 提交于
This is hiredis f225c276be7fd0646019b51023e3f41566633dfe This update includes all changes that diverged inside of Redis since the last update. This version also allows optional source address binding for connections which we need for some Sentinel deployments.
-
由 Matt Stancliff 提交于
Fixes #1826 (and many other reports of the same problem)
-
由 antirez 提交于
-
- 21 6月, 2014 15 次提交
-
-
由 antirez 提交于
The bug was triggered by running the test with Valgrind (which is a lot slower and more sensible to timing issues) after the recent changes that made Redis more promptly able to reply with the -LOADING error.
-
由 antirez 提交于
-
由 antirez 提交于
-
由 antirez 提交于
This implements the new Sentinel-Client protocol for the Sentinel part: now instances are reconfigured using a transaction that ensures that the config is rewritten in the target instance, and that clients lose the connection with the instance, in order to be forced to: ask Sentinel, reconnect to the instance, and verify the instance role with the new ROLE command.
-
由 antirez 提交于
Added a new SKIPME option that is true by default, that prevents the client sending the command to be killed, unless SKIPME NO is sent.
-
由 antirez 提交于
-
由 antirez 提交于
-
由 antirez 提交于
This will be used by CLIENT KILL and is also a good way to ensure a given client is still the same across CLIENT LIST calls. The output of CLIENT LIST was modified to include the new ID, but this change is considered to be backward compatible as the API does not imply you can do positional parsing, since each filed as a different name.
-
由 antirez 提交于
Because of output buffer limits Redis internals had this idea of type of clients: normal, pubsub, slave. It is possible to set different output buffer limits for the three kinds of clients. However all the macros and API were named after output buffer limit classes, while the idea of a client type is a generic one that can be reused. This commit does two things: 1) Rename the API and defines with more general names. 2) Change the class of clients executing the MONITOR command from "slave" to "normal". "2" is a good idea because you want to have very special settings for slaves, that are not a good idea for MONITOR clients that are instead normal clients even if they are conceptually slave-alike (since it is a push protocol). The backward-compatibility breakage resulting from "2" is considered to be minimal to care, since MONITOR is a debugging command, and because anyway this change is not going to break the format or the behavior, but just when a connection is closed on big output buffer issues.
-
由 antirez 提交于
Info about the replication state with the master added.
-
由 antirez 提交于
The new ROLE command is designed in order to provide a client with informations about the replication in a fast and easy to use way compared to the INFO command where the same information is also available.
-
由 antirez 提交于
This commit adds peer ID caching in the client structure plus an API change and the use of sdsMakeRoomFor() in order to improve the reallocation pattern to generate the CLIENT LIST output. Both the changes account for a very significant speedup.
-
由 antirez 提交于
-
由 antirez 提交于
This commit also fixes a bug in the implementation of sdscatfmt() resulting from stale references to the SDS string header after sdsMakeRoomFor() calls.
-
由 antirez 提交于
sdscatprintf() relies on printf() family libc functions and is sometimes too slow in critical code paths. sdscatfmt() is an alternative which is: 1) Far less capable. 2) Format specifier uncompatible. 3) Faster. It is suitable to be used in those speed critical code paths such as CLIENT LIST output generation.
-
- 20 6月, 2014 2 次提交
- 19 6月, 2014 5 次提交
-
-
由 antirez 提交于
-
由 antirez 提交于
-
由 antirez 提交于
Eventual configuration convergence is guaranteed by our periodic hello messages to all the instances, however when there are important notices to share, better make a phone call. With this commit we force an hello message to other Sentinal and Redis instances within the next 100 milliseconds of a config update, which is practically better than waiting a few seconds.
-
由 antirez 提交于
Lack of check of the SRI_PROMOTED flag caused Sentienl to act with the promoted slave turned into a master during failover like if it was a normal instance. Normally this problem was not apparent because during real failovers the old master is down so the bugged code path was not entered, however with manual failovers via the SENTINEL FAILOVER command, the problem was easily triggered. This commit prevents promoted slaves from getting reconfigured, moreover we now explicitly check that during a failover the slave turning into a master is the one we selected for promotion and not a different one.
-
由 antirez 提交于
-
- 18 6月, 2014 8 次提交
-
-
由 antirez 提交于
-
由 antirez 提交于
-
由 antirez 提交于
-
由 antirez 提交于
-
由 antirez 提交于
Functionally the same, but makes cherry picking simpler.
-
由 Matt Stancliff 提交于
(Note from @antirez: modified to apply to 2.8)
-
由 Alex Suraci 提交于
-
由 Matt Stancliff 提交于
If we run a long latency session and want to Ctrl-C out of it, it's nice to still get the summary output at the end.
-
- 16 6月, 2014 1 次提交
-
-
由 antirez 提交于
-