antirez
1375b0611b
Cluster: slaves start failover with a small delay.
...
Redis Cluster can cope with a minority of nodes not informed about the
failure of a master in time for some reason (netsplit or node not
functioning properly, blocked, ...) however to wait a few seconds before
to start the failover will make most "normal" failovers simpler as the
FAIL message will propagate before the slave election happens.
2013-03-15 16:39:49 +01:00
antirez
acddbd3000
Cluster: a bit more serious node role change handling.
2013-03-15 16:35:16 +01:00
antirez
d512a09c20
Cluster: a bit more serious node role change handling.
2013-03-15 16:35:16 +01:00
antirez
e9f97a54c5
Cluster: remove node from master slaves when it turns into a master.
...
Also, a few nearby comments improved.
2013-03-15 16:16:19 +01:00
antirez
004fbef847
Cluster: remove node from master slaves when it turns into a master.
...
Also, a few nearby comments improved.
2013-03-15 16:16:19 +01:00
antirez
5a86ea09a8
Cluster: slave failover implemented.
2013-03-15 16:11:34 +01:00
antirez
44c92f5aeb
Cluster: slave failover implemented.
2013-03-15 16:11:34 +01:00
antirez
fa4c42f230
Cluster: election -> promotion in two comments.
2013-03-15 15:44:49 +01:00
antirez
1d8f302e0d
Cluster: election -> promotion in two comments.
2013-03-15 15:44:49 +01:00
antirez
24625432b5
Cluster: added function to broadcast pings.
...
See the function top-comment for info why this is useful sometimes.
2013-03-15 15:43:58 +01:00
antirez
bf82195467
Cluster: added function to broadcast pings.
...
See the function top-comment for info why this is useful sometimes.
2013-03-15 15:43:58 +01:00
antirez
b0497233f1
Cluster: don't broadcast messages to HANDSHAKE nodes.
...
Also don't check for NOADDR as we check that node->link is not NULL
that's enough.
2013-03-15 15:36:36 +01:00
antirez
892e98548a
Cluster: don't broadcast messages to HANDSHAKE nodes.
...
Also don't check for NOADDR as we check that node->link is not NULL
that's enough.
2013-03-15 15:36:36 +01:00
antirez
e2662bdfcd
Cluster: fix clusterHandleSlaveFailover() conditional: quorum is enough.
2013-03-15 13:20:34 +01:00
antirez
76a3954f4a
Cluster: fix clusterHandleSlaveFailover() conditional: quorum is enough.
2013-03-15 13:20:34 +01:00
antirez
943e41223c
Cluster: two lame bugs fixed in FAILOVER AUTH messages generation.
2013-03-14 21:27:12 +01:00
antirez
90e99a2082
Cluster: two lame bugs fixed in FAILOVER AUTH messages generation.
2013-03-14 21:27:12 +01:00
antirez
2160788260
Cluster: code to process messages moved in the right if-else chain.
2013-03-14 21:21:58 +01:00
antirez
aeacaa57e6
Cluster: code to process messages moved in the right if-else chain.
2013-03-14 21:21:58 +01:00
antirez
63e3bc7cb3
Cluster: handle FAILOVER_AUTH_ACK messages.
...
That's trivial as we just need to increment the count of masters that
received with an ACK.
2013-03-14 16:43:13 +01:00
antirez
35f05c66b6
Cluster: handle FAILOVER_AUTH_ACK messages.
...
That's trivial as we just need to increment the count of masters that
received with an ACK.
2013-03-14 16:43:13 +01:00
antirez
0ef025313a
Cluster: request failover authorization, log if we have quorum.
...
However the failover is yet not really performed.
2013-03-14 16:39:02 +01:00
antirez
c2595500ac
Cluster: request failover authorization, log if we have quorum.
...
However the failover is yet not really performed.
2013-03-14 16:39:02 +01:00
antirez
6aec70fbc4
Cluster: clusterSendFailoverAuth() implementation.
2013-03-14 16:31:57 +01:00
antirez
7fa42b801d
Cluster: clusterSendFailoverAuth() implementation.
2013-03-14 16:31:57 +01:00
NanXiao
7b7ebdc11c
Update config.c
...
Fix bug in configGetCommand function: get correct masterauth value.
2013-03-14 13:52:43 +08:00
NanXiao
79a13b46fb
Update config.c
...
Fix bug in configGetCommand function: get correct masterauth value.
2013-03-14 13:52:43 +08:00
antirez
8b90a5ebb2
Cluster: clusterSendFailoverAuthIfNeeded() work in progress.
2013-03-13 19:08:03 +01:00
antirez
f59ff6fe61
Cluster: clusterSendFailoverAuthIfNeeded() work in progress.
2013-03-13 19:08:03 +01:00
antirez
3e23f6b2bf
Cluster: handle FAILOVER_AUTH_REQUEST in clusterProcessPacket().
...
However currently the control is passed to a function doing nothing at
all.
2013-03-13 18:38:08 +01:00
antirez
44f6fdab60
Cluster: handle FAILOVER_AUTH_REQUEST in clusterProcessPacket().
...
However currently the control is passed to a function doing nothing at
all.
2013-03-13 18:38:08 +01:00
antirez
9975fac7bb
Cluster: sanity check FAILOVER_AUTH_REQUEST messages for proper length.
2013-03-13 17:31:26 +01:00
antirez
ece95b2dea
Cluster: sanity check FAILOVER_AUTH_REQUEST messages for proper length.
2013-03-13 17:31:26 +01:00
antirez
95f0799010
Cluster: use 'else if' for mutually exclusive conditionals.
2013-03-13 17:27:06 +01:00
antirez
66144337bf
Cluster: use 'else if' for mutually exclusive conditionals.
2013-03-13 17:27:06 +01:00
antirez
444fd457d2
Cluster: FAILOVER_AUTH_REQUEST message type introduced.
...
This message is sent by a slave that is ready to failover its master to
other nodes to get the authorization from the majority of masters.
2013-03-13 17:21:20 +01:00
antirez
db7c17e969
Cluster: FAILOVER_AUTH_REQUEST message type introduced.
...
This message is sent by a slave that is ready to failover its master to
other nodes to get the authorization from the majority of masters.
2013-03-13 17:21:20 +01:00
antirez
80158107bd
Cluster: clusterHandleSlaveFailover() stub.
2013-03-13 13:10:49 +01:00
antirez
575cbc9990
Cluster: clusterHandleSlaveFailover() stub.
2013-03-13 13:10:49 +01:00
antirez
dab342a215
Replication: master_link_down_since_seconds initial value should be huge.
...
server.repl_down_since used to be initialized to the current time at
startup. This is wrong since the replication never started. Clients
testing this filed to check if data is uptodate should never believe
data is recent if we never ever connected to our master.
2013-03-13 12:54:48 +01:00
antirez
1902a9c532
Replication: master_link_down_since_seconds initial value should be huge.
...
server.repl_down_since used to be initialized to the current time at
startup. This is wrong since the replication never started. Clients
testing this filed to check if data is uptodate should never believe
data is recent if we never ever connected to our master.
2013-03-13 12:54:48 +01:00
antirez
d1d1f6cad4
Cluster: call clusterHandleSlaveFailover() when our master is down.
2013-03-13 12:44:02 +01:00
antirez
3d448bda39
Cluster: call clusterHandleSlaveFailover() when our master is down.
2013-03-13 12:44:02 +01:00
antirez
306dfee10d
rdbLoad(): rework code to save vertical space.
2013-03-12 19:46:33 +01:00
antirez
79a6844e44
rdbLoad(): rework code to save vertical space.
2013-03-12 19:46:33 +01:00
Salvatore Sanfilippo
1e1afe05ed
Merge pull request #1001 from djanowski/fatal-errors-rdb-load
...
Abort when opening the RDB file results in an error other than ENOENT.
2013-03-12 11:40:36 -07:00
Salvatore Sanfilippo
9925c7c670
Merge pull request #1001 from djanowski/fatal-errors-rdb-load
...
Abort when opening the RDB file results in an error other than ENOENT.
2013-03-12 11:40:36 -07:00
Damian Janowski
cce75561a0
Abort when opening the RDB file results in an error other than ENOENT.
...
This fixes cases where the RDB file does exist but can't be accessed for
any reason. For instance, when the Redis process doesn't have enough
permissions on the file.
2013-03-12 14:37:50 -03:00
Damian Janowski
4178a80282
Abort when opening the RDB file results in an error other than ENOENT.
...
This fixes cases where the RDB file does exist but can't be accessed for
any reason. For instance, when the Redis process doesn't have enough
permissions on the file.
2013-03-12 14:37:50 -03:00
antirez
3ff21be010
Set default for stop_writes_on_bgsave_err in initServerConfig().
...
It was placed for error in initServer() that's called after the
configuation is already loaded, causing issue #1000 .
2013-03-12 18:34:08 +01:00