|
Revision tags: 8.0-m02, 6.2.16, 7.2.6, 7.4.1, 8.0-m01, 7.4.0, 7.4-rc2, 7.4-rc1, 7.2.5, 7.2.4, 7.0.15, 7.2.3, 7.2.2, 7.0.14, 6.2.14, 6.2.15, 7.2.1, 7.0.13, 7.2.0, 7.2-rc3, 7.0.12, 6.2.13, 6.0.20, 7.2-rc2, 6.0.19, 6.2.12, 7.0.11, 7.2-rc1, 7.0.10, 7.0.9, 6.2.11, 6.0.18, 6.2.10, 6.0.17, 6.2.9, 7.0.8, 7.0.7, 7.0.6, 6.2.8, 7.0.5, 7.0.4, 7.0.3, 7.0.2, 7.0.1, 7.0.0, 6.2.7, 7.0-rc3, 7.0-rc2, 7.0-rc1, 6.2.6, 6.0.16, 5.0.14, 5.0.13, 6.0.15, 6.2.5, 6.0.14, 6.2.4, 6.2.3, 6.0.13, 6.2.2, 6.2.1, 6.0.12, 5.0.12, 6.0.11, 6.2.0, 5.0.11, 6.2-rc3, 6.0.10, 6.2-rc2, 6.2-rc1, 6.0.9, 5.0.10, 6.0.8, 6.0.7, 6.0.6, 6.0.5, 6.0.4, 6.0.3, 6.0.2, 6.0.1, 6.0.0, 5.0.9, 6.0-rc4, 6.0-rc3, 5.0.8, 6.0-rc2, 6.0-rc1, 5.0.7, 5.0.6, 5.0.5, 3.2.13, 4.0.14, 5.0.4, 4.0.13, 5.0.3, 4.0.12, 5.0.2, 5.0.1, 5.0.0, 5.0-rc6, 5.0-rc5, 4.0.11, 5.0-rc4, 5.0-rc3, 5.0-rc2, 4.0.10, 3.2.12, 5.0-rc1, 4.0.9, 4.0.8, 4.0.7, 4.0.6, 4.0.5, 4.0.4, 4.0.3, 3.2.11, 4.0.2, 3.2.10, 4.0.1, 4.0.0, 3.2.9, 4.0-rc3, 3.2.8, 3.2.7, 3.2.6, 4.0-rc2, 4.0-rc1, 3.2.5, 3.2.4, 3.2.3, 3.2.2, 3.2.1, 3.2.0, 3.2.0-rc3, 3.0.7, 3.2.0-rc2 |
|
| #
08db7092 |
| 14-Jan-2016 |
antirez <[email protected]> |
Cluster: clarify node->slave may be NULL.
|
|
Revision tags: 3.2-rc1, 3.0.6, 2.8.24 |
|
| #
6b8a6c2a |
| 11-Dec-2015 |
antirez <[email protected]> |
Cluster: replica migration with delay.
We wait a fixed amount of time (5 seconds currently) much greater than the usual Cluster node to node communication latency, before migrating. This way when a
Cluster: replica migration with delay.
We wait a fixed amount of time (5 seconds currently) much greater than the usual Cluster node to node communication latency, before migrating. This way when a failover occurs, before detecting the new master as a target for migration, we give the time to its natural slaves (the slaves of the failed over master) to announce they switched to the new master, preventing an useless migration operation.
show more ...
|
| #
db65f6d3 |
| 09-Dec-2015 |
antirez <[email protected]> |
Fix replicas migration by adding a new flag.
Some time ago I broken replicas migration (reported in #2924). The idea was to prevent masters without replicas from getting replicas because of replica
Fix replicas migration by adding a new flag.
Some time ago I broken replicas migration (reported in #2924). The idea was to prevent masters without replicas from getting replicas because of replica migration, I remember it to create issues with tests, but there is no clue in the commit message about why it was so undesirable.
However my patch as a side effect totally ruined the concept of replicas migration since we want it to work also for instances that, technically, never had slaves in the past: promoted slaves.
So now instead the ability to be targeted by replicas migration, is a new flag "migrate-to". It only applies to masters, and is set in the following two cases:
1. When a master gets a slave, it is set. 2. When a slave turns into a master because of fail over, it is set.
This way replicas migration targets are only masters that used to have slaves, and slaves of masters (that used to have slaves... obviously) and are promoted.
The new flag is only internal, and is never exposed in the output nor persisted in the nodes configuration, since all the information to handle it are implicit in the cluster configuration we already have.
show more ...
|
|
Revision tags: 3.0.5, 2.8.23, 2.8.22, 3.0.4 |
|
| #
3325a9b1 |
| 27-Jul-2015 |
antirez <[email protected]> |
RDMF: more names updated.
|
| #
32f80e2f |
| 27-Jul-2015 |
antirez <[email protected]> |
RDMF: More consistent define names.
|
| #
554bd0e7 |
| 26-Jul-2015 |
antirez <[email protected]> |
RDMF: use client instead of redisClient, like Disque.
|
|
Revision tags: 3.0.3, 3.0.2, 2.8.21, 2.8.20, 3.0.1, 3.0.0, 3.0.0-rc6 |
|
| #
9b7f8b1c |
| 24-Mar-2015 |
antirez <[email protected]> |
Cluster: redirection refactoring + handling of blocked clients.
There was a bug in Redis Cluster caused by clients blocked in a blocking list pop operation, for keys no longer handled by the instanc
Cluster: redirection refactoring + handling of blocked clients.
There was a bug in Redis Cluster caused by clients blocked in a blocking list pop operation, for keys no longer handled by the instance, or in a condition where the cluster became down after the client blocked.
A typical situation is:
1) BLPOP <somekey> 0 2) <somekey> hash slot is resharded to another master.
The client will block forever int this case.
A symmentrical non-cluster-specific bug happens when an instance is turned from master to slave. In that case it is more serious since this will desynchronize data between slaves and masters. This other bug was discovered as a side effect of thinking about the bug explained and fixed in this commit, but will be fixed in a separated commit.
show more ...
|
|
Revision tags: 3.0.0-rc5 |
|
| #
25c0f5ac |
| 20-Mar-2015 |
antirez <[email protected]> |
Cluster: better cluster state transiction handling.
Before we relied on the global cluster state to make sure all the hash slots are linked to some node, when getNodeByQuery() is called. So finding
Cluster: better cluster state transiction handling.
Before we relied on the global cluster state to make sure all the hash slots are linked to some node, when getNodeByQuery() is called. So finding the hash slot unbound was checked with an assertion. However this is fragile. The cluster state is often updated in the clusterBeforeSleep() function, and not ASAP on state change, so it may happen to process clients with a cluster state that is 'ok' but yet certain hash slots set to NULL.
With this commit the condition is also checked in getNodeByQuery() and reported with a identical error code of -CLUSTERDOWN but slightly different error message so that we have more debugging clue in the future.
Root cause of issue #2288.
show more ...
|
|
Revision tags: 3.0.0-rc4, 3.0.0-rc3, 3.0.0-rc2 |
|
| #
5b0f4a83 |
| 13-Jan-2015 |
antirez <[email protected]> |
Cluster: clusterMsgDataGossip structure, explict padding + minor stuff.
Also explicitly set version to 0, add a protocol version define, improve comments in the gossip structure.
Note that the stru
Cluster: clusterMsgDataGossip structure, explict padding + minor stuff.
Also explicitly set version to 0, add a protocol version define, improve comments in the gossip structure.
Note that the structure layout is the same after the change, we are just making the padding explicit with an additional not used 16 bits field. So this commit is still able to talk with the previous versions of cluster nodes.
show more ...
|
|
Revision tags: 2.8.19, 2.8.18 |
|
| #
669aa2a2 |
| 28-Nov-2014 |
antirez <[email protected]> |
Cluster PUBLISH message: fix totlen count.
bulk_data field size was not removed from the count. It is not possible to declare it simply as 'char bulk_data[]' since the structure is nested into anoth
Cluster PUBLISH message: fix totlen count.
bulk_data field size was not removed from the count. It is not possible to declare it simply as 'char bulk_data[]' since the structure is nested into another structure.
show more ...
|
|
Revision tags: 3.0.0-rc1 |
|
| #
edb3987a |
| 07-Oct-2014 |
antirez <[email protected]> |
Cluster: more chatty slaves when failover is stalled.
|
|
Revision tags: 2.8.17, 2.8.16, 2.8.15, 2.8.14 |
|
| #
12d0195b |
| 31-Jul-2014 |
Matt Stancliff <[email protected]> |
Clean up text throughout project
- Remove trailing newlines from redis.conf - Fix comment misspelling - Clarifies zipEncodeLength usage and a C API mention (#1243, #1242) - Fix cluster typos
Clean up text throughout project
- Remove trailing newlines from redis.conf - Fix comment misspelling - Clarifies zipEncodeLength usage and a C API mention (#1243, #1242) - Fix cluster typos (inspired by @papanikge #1507) - Fix rewite -> rewrite in a few places (inspired by #682)
Closes #1243, #1242, #1507
show more ...
|
| #
c89afc8e |
| 17-Sep-2014 |
antirez <[email protected]> |
Cluster: new option to work with partial slots coverage.
|
| #
119a7000 |
| 25-Aug-2014 |
antirez <[email protected]> |
Use modern typedef form in cluster.h.
|
|
Revision tags: 3.0.0-beta8, 2.8.13, 3.0.0-beta7, 2.8.12, 2.8.11, 3.0.0-beta6, 2.8.10, 3.0.0-beta5, 3.0.0-beta4 |
|
| #
39603a7e |
| 22-May-2014 |
antirez <[email protected]> |
Cluster: slave validity factor is now user configurable.
Check the commit changes in the example redis.conf for more information.
|
|
Revision tags: 3.0.0-beta3, 2.8.9 |
|
| #
8f52173b |
| 27-Mar-2014 |
antirez <[email protected]> |
Cluster: last_vote_epoch -> lastVoteEpoch.
Use cammel case for epochs that are persisted on disk.
|
|
Revision tags: 2.8.8, 3.0.0-beta2 |
|
| #
0f1f2578 |
| 10-Mar-2014 |
antirez <[email protected]> |
Cluster: better timeout and retry time for failover.
When node-timeout is too small, in the order of a few milliseconds, there is no way the voting process can terminate during that time, so we set
Cluster: better timeout and retry time for failover.
When node-timeout is too small, in the order of a few milliseconds, there is no way the voting process can terminate during that time, so we set a lower limit for the failover timeout of two seconds.
The retry time is set to two times the failover timeout time, so it is at least 4 seconds.
show more ...
|
| #
36676c23 |
| 07-Mar-2014 |
antirez <[email protected]> |
Redis Cluster: support for multi-key operations.
|
|
Revision tags: 2.8.7 |
|
| #
385c25f7 |
| 26-Feb-2014 |
Matt Stancliff <[email protected]> |
Remove redundant IP length definition
REDIS_CLUSTER_IPLEN had the same value as REDIS_IP_STR_LEN. They were both #define'd to the same INET6_ADDRSTRLEN.
|
| #
d769cad4 |
| 25-Feb-2014 |
Matt Stancliff <[email protected]> |
Fix IP representation in clusterMsgDataGossip
|
|
Revision tags: 2.8.6, 3.0.0-beta1 |
|
| #
f885fa8b |
| 10-Feb-2014 |
antirez <[email protected]> |
Cluster: clusterReadHandler() fixed to work with new message header.
|
| #
7bf7b735 |
| 10-Feb-2014 |
antirez <[email protected]> |
Cluster: signature changed to "RCmb" (Redis Cluster message bus).
Sounds better after all.
|
| #
007e1c7c |
| 10-Feb-2014 |
antirez <[email protected]> |
Cluster: added signature + version in bus packets.
|
| #
b7402bca |
| 05-Feb-2014 |
antirez <[email protected]> |
Cluster: force AUTH ACK on manual failover.
When a slave requests masters vote for a manual failover, the REQUEST_AUTH message is flagged in a special way in order to force the masters to give the a
Cluster: force AUTH ACK on manual failover.
When a slave requests masters vote for a manual failover, the REQUEST_AUTH message is flagged in a special way in order to force the masters to give the authorization even if the master is not marked as failing.
show more ...
|
| #
4cf0cd57 |
| 05-Feb-2014 |
antirez <[email protected]> |
Cluster: manual failover initial implementation.
|