summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorantirez <antirez@gmail.com>2015-07-27 14:55:45 +0200
committerantirez <antirez@gmail.com>2015-07-27 15:03:10 +0200
commit3325a9b11f9761aaee5f7993b555be44e3d51342 (patch)
tree19b41a6ea2ca7b31bcaca652198375b1b1f07c06
parent32f80e2f1bf42d0508f1114a9dddd91c4719eb8e (diff)
downloadredis-3325a9b11f9761aaee5f7993b555be44e3d51342.tar.gz
RDMF: more names updated.
-rw-r--r--src/aof.c6
-rw-r--r--src/bio.c22
-rw-r--r--src/bio.h6
-rw-r--r--src/cluster.c352
-rw-r--r--src/cluster.h124
-rw-r--r--src/config.c8
-rw-r--r--src/server.c14
-rw-r--r--src/syncio.c10
8 files changed, 271 insertions, 271 deletions
diff --git a/src/aof.c b/src/aof.c
index 03b6a3670..7a80a9355 100644
--- a/src/aof.c
+++ b/src/aof.c
@@ -198,7 +198,7 @@ ssize_t aofRewriteBufferWrite(int fd) {
/* Starts a background task that performs fsync() against the specified
* file descriptor (the one of the AOF file) in another thread. */
void aof_background_fsync(int fd) {
- bioCreateBackgroundJob(REDIS_BIO_AOF_FSYNC,(void*)(long)fd,NULL,NULL);
+ bioCreateBackgroundJob(BIO_AOF_FSYNC,(void*)(long)fd,NULL,NULL);
}
/* Called when the user switches from "appendonly yes" to "appendonly no"
@@ -278,7 +278,7 @@ void flushAppendOnlyFile(int force) {
if (sdslen(server.aof_buf) == 0) return;
if (server.aof_fsync == AOF_FSYNC_EVERYSEC)
- sync_in_progress = bioPendingJobsOfType(REDIS_BIO_AOF_FSYNC) != 0;
+ sync_in_progress = bioPendingJobsOfType(BIO_AOF_FSYNC) != 0;
if (server.aof_fsync == AOF_FSYNC_EVERYSEC && !force) {
/* With this append fsync policy we do background fsyncing.
@@ -1454,7 +1454,7 @@ void backgroundRewriteDoneHandler(int exitcode, int bysignal) {
server.aof_state = AOF_ON;
/* Asynchronously close the overwritten AOF. */
- if (oldfd != -1) bioCreateBackgroundJob(REDIS_BIO_CLOSE_FILE,(void*)(long)oldfd,NULL,NULL);
+ if (oldfd != -1) bioCreateBackgroundJob(BIO_CLOSE_FILE,(void*)(long)oldfd,NULL,NULL);
serverLog(LL_VERBOSE,
"Background AOF rewrite signal handler took %lldus", ustime()-now);
diff --git a/src/bio.c b/src/bio.c
index 5eb803212..a4962e005 100644
--- a/src/bio.c
+++ b/src/bio.c
@@ -61,17 +61,17 @@
#include "server.h"
#include "bio.h"
-static pthread_t bio_threads[REDIS_BIO_NUM_OPS];
-static pthread_mutex_t bio_mutex[REDIS_BIO_NUM_OPS];
-static pthread_cond_t bio_condvar[REDIS_BIO_NUM_OPS];
-static list *bio_jobs[REDIS_BIO_NUM_OPS];
+static pthread_t bio_threads[BIO_NUM_OPS];
+static pthread_mutex_t bio_mutex[BIO_NUM_OPS];
+static pthread_cond_t bio_condvar[BIO_NUM_OPS];
+static list *bio_jobs[BIO_NUM_OPS];
/* The following array is used to hold the number of pending jobs for every
* OP type. This allows us to export the bioPendingJobsOfType() API that is
* useful when the main thread wants to perform some operation that may involve
* objects shared with the background thread. The main thread will just wait
* that there are no longer jobs of this type to be executed before performing
* the sensible operation. This data is also useful for reporting. */
-static unsigned long long bio_pending[REDIS_BIO_NUM_OPS];
+static unsigned long long bio_pending[BIO_NUM_OPS];
/* This structure represents a background Job. It is only used locally to this
* file as the API does not expose the internals at all. */
@@ -96,7 +96,7 @@ void bioInit(void) {
int j;
/* Initialization of state vars and objects */
- for (j = 0; j < REDIS_BIO_NUM_OPS; j++) {
+ for (j = 0; j < BIO_NUM_OPS; j++) {
pthread_mutex_init(&bio_mutex[j],NULL);
pthread_cond_init(&bio_condvar[j],NULL);
bio_jobs[j] = listCreate();
@@ -113,7 +113,7 @@ void bioInit(void) {
/* Ready to spawn our threads. We use the single argument the thread
* function accepts in order to pass the job ID the thread is
* responsible of. */
- for (j = 0; j < REDIS_BIO_NUM_OPS; j++) {
+ for (j = 0; j < BIO_NUM_OPS; j++) {
void *arg = (void*)(unsigned long) j;
if (pthread_create(&thread,&attr,bioProcessBackgroundJobs,arg) != 0) {
serverLog(LL_WARNING,"Fatal: Can't initialize Background Jobs.");
@@ -143,7 +143,7 @@ void *bioProcessBackgroundJobs(void *arg) {
sigset_t sigset;
/* Check that the type is within the right interval. */
- if (type >= REDIS_BIO_NUM_OPS) {
+ if (type >= BIO_NUM_OPS) {
serverLog(LL_WARNING,
"Warning: bio thread started with wrong type %lu",type);
return NULL;
@@ -179,9 +179,9 @@ void *bioProcessBackgroundJobs(void *arg) {
pthread_mutex_unlock(&bio_mutex[type]);
/* Process the job accordingly to its type. */
- if (type == REDIS_BIO_CLOSE_FILE) {
+ if (type == BIO_CLOSE_FILE) {
close((long)job->arg1);
- } else if (type == REDIS_BIO_AOF_FSYNC) {
+ } else if (type == BIO_AOF_FSYNC) {
aof_fsync((long)job->arg1);
} else {
serverPanic("Wrong job type in bioProcessBackgroundJobs().");
@@ -212,7 +212,7 @@ unsigned long long bioPendingJobsOfType(int type) {
void bioKillThreads(void) {
int err, j;
- for (j = 0; j < REDIS_BIO_NUM_OPS; j++) {
+ for (j = 0; j < BIO_NUM_OPS; j++) {
if (pthread_cancel(bio_threads[j]) == 0) {
if ((err = pthread_join(bio_threads[j],NULL)) != 0) {
serverLog(LL_WARNING,
diff --git a/src/bio.h b/src/bio.h
index 85f03ad1a..dc284e77e 100644
--- a/src/bio.h
+++ b/src/bio.h
@@ -36,6 +36,6 @@ time_t bioOlderJobOfType(int type);
void bioKillThreads(void);
/* Background job opcodes */
-#define REDIS_BIO_CLOSE_FILE 0 /* Deferred close(2) syscall. */
-#define REDIS_BIO_AOF_FSYNC 1 /* Deferred AOF fsync. */
-#define REDIS_BIO_NUM_OPS 2
+#define BIO_CLOSE_FILE 0 /* Deferred close(2) syscall. */
+#define BIO_AOF_FSYNC 1 /* Deferred AOF fsync. */
+#define BIO_NUM_OPS 2
diff --git a/src/cluster.c b/src/cluster.c
index 089d85992..caa2271a5 100644
--- a/src/cluster.c
+++ b/src/cluster.c
@@ -117,8 +117,8 @@ int clusterLoadConfig(char *filename) {
* present in a single line, possibly in importing or migrating state, so
* together with the node ID of the sender/receiver.
*
- * To simplify we allocate 1024+REDIS_CLUSTER_SLOTS*128 bytes per line. */
- maxline = 1024+REDIS_CLUSTER_SLOTS*128;
+ * To simplify we allocate 1024+CLUSTER_SLOTS*128 bytes per line. */
+ maxline = 1024+CLUSTER_SLOTS*128;
line = zmalloc(maxline);
while(fgets(line,maxline,fp) != NULL) {
int argc;
@@ -178,20 +178,20 @@ int clusterLoadConfig(char *filename) {
if (!strcasecmp(s,"myself")) {
serverAssert(server.cluster->myself == NULL);
myself = server.cluster->myself = n;
- n->flags |= REDIS_NODE_MYSELF;
+ n->flags |= CLUSTER_NODE_MYSELF;
} else if (!strcasecmp(s,"master")) {
- n->flags |= REDIS_NODE_MASTER;
+ n->flags |= CLUSTER_NODE_MASTER;
} else if (!strcasecmp(s,"slave")) {
- n->flags |= REDIS_NODE_SLAVE;
+ n->flags |= CLUSTER_NODE_SLAVE;
} else if (!strcasecmp(s,"fail?")) {
- n->flags |= REDIS_NODE_PFAIL;
+ n->flags |= CLUSTER_NODE_PFAIL;
} else if (!strcasecmp(s,"fail")) {
- n->flags |= REDIS_NODE_FAIL;
+ n->flags |= CLUSTER_NODE_FAIL;
n->fail_time = mstime();
} else if (!strcasecmp(s,"handshake")) {
- n->flags |= REDIS_NODE_HANDSHAKE;
+ n->flags |= CLUSTER_NODE_HANDSHAKE;
} else if (!strcasecmp(s,"noaddr")) {
- n->flags |= REDIS_NODE_NOADDR;
+ n->flags |= CLUSTER_NODE_NOADDR;
} else if (!strcasecmp(s,"noflags")) {
/* nothing to do */
} else {
@@ -304,7 +304,7 @@ int clusterSaveConfig(int do_fsync) {
/* Get the nodes description and concatenate our "vars" directive to
* save currentEpoch and lastVoteEpoch. */
- ci = clusterGenNodesDescription(REDIS_NODE_HANDSHAKE);
+ ci = clusterGenNodesDescription(CLUSTER_NODE_HANDSHAKE);
ci = sdscatprintf(ci,"vars currentEpoch %llu lastVoteEpoch %llu\n",
(unsigned long long) server.cluster->currentEpoch,
(unsigned long long) server.cluster->lastVoteEpoch);
@@ -401,7 +401,7 @@ void clusterInit(void) {
server.cluster = zmalloc(sizeof(clusterState));
server.cluster->myself = NULL;
server.cluster->currentEpoch = 0;
- server.cluster->state = REDIS_CLUSTER_FAIL;
+ server.cluster->state = CLUSTER_FAIL;
server.cluster->size = 1;
server.cluster->todo_before_sleep = 0;
server.cluster->nodes = dictCreate(&clusterNodesDictType,NULL);
@@ -411,7 +411,7 @@ void clusterInit(void) {
server.cluster->failover_auth_count = 0;
server.cluster->failover_auth_rank = 0;
server.cluster->failover_auth_epoch = 0;
- server.cluster->cant_failover_reason = REDIS_CLUSTER_CANT_FAILOVER_NONE;
+ server.cluster->cant_failover_reason = CLUSTER_CANT_FAILOVER_NONE;
server.cluster->lastVoteEpoch = 0;
server.cluster->stats_bus_messages_sent = 0;
server.cluster->stats_bus_messages_received = 0;
@@ -428,7 +428,7 @@ void clusterInit(void) {
/* No configuration found. We will just use the random name provided
* by the createClusterNode() function. */
myself = server.cluster->myself =
- createClusterNode(NULL,REDIS_NODE_MYSELF|REDIS_NODE_MASTER);
+ createClusterNode(NULL,CLUSTER_NODE_MYSELF|CLUSTER_NODE_MASTER);
serverLog(LL_NOTICE,"No cluster configuration found, I'm %.40s",
myself->name);
clusterAddNode(myself);
@@ -442,7 +442,7 @@ void clusterInit(void) {
/* Port sanity check II
* The other handshake port check is triggered too late to stop
* us from trying to use a too-high cluster port number. */
- if (server.port > (65535-REDIS_CLUSTER_PORT_INCR)) {
+ if (server.port > (65535-CLUSTER_PORT_INCR)) {
serverLog(LL_WARNING, "Redis port number too high. "
"Cluster communication port is 10,000 port "
"numbers higher than your Redis port. "
@@ -451,7 +451,7 @@ void clusterInit(void) {
exit(1);
}
- if (listenToPort(server.port+REDIS_CLUSTER_PORT_INCR,
+ if (listenToPort(server.port+CLUSTER_PORT_INCR,
server.cfd,&server.cfd_count) == C_ERR)
{
exit(1);
@@ -503,7 +503,7 @@ void clusterReset(int hard) {
resetManualFailover();
/* Unassign all the slots. */
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) clusterDelSlot(j);
+ for (j = 0; j < CLUSTER_SLOTS; j++) clusterDelSlot(j);
/* Forget all the nodes, but myself. */
di = dictGetSafeIterator(server.cluster->nodes);
@@ -526,10 +526,10 @@ void clusterReset(int hard) {
/* To change the Node ID we need to remove the old name from the
* nodes table, change the ID, and re-add back with new name. */
- oldname = sdsnewlen(myself->name, REDIS_CLUSTER_NAMELEN);
+ oldname = sdsnewlen(myself->name, CLUSTER_NAMELEN);
dictDelete(server.cluster->nodes,oldname);
sdsfree(oldname);
- getRandomHexChars(myself->name, REDIS_CLUSTER_NAMELEN);
+ getRandomHexChars(myself->name, CLUSTER_NAMELEN);
clusterAddNode(myself);
}
@@ -653,9 +653,9 @@ clusterNode *createClusterNode(char *nodename, int flags) {
clusterNode *node = zmalloc(sizeof(*node));
if (nodename)
- memcpy(node->name, nodename, REDIS_CLUSTER_NAMELEN);
+ memcpy(node->name, nodename, CLUSTER_NAMELEN);
else
- getRandomHexChars(node->name, REDIS_CLUSTER_NAMELEN);
+ getRandomHexChars(node->name, CLUSTER_NAMELEN);
node->ctime = mstime();
node->configEpoch = 0;
node->flags = flags;
@@ -723,7 +723,7 @@ void clusterNodeCleanupFailureReports(clusterNode *node) {
listIter li;
clusterNodeFailReport *fr;
mstime_t maxtime = server.cluster_node_timeout *
- REDIS_CLUSTER_FAIL_REPORT_VALIDITY_MULT;
+ CLUSTER_FAIL_REPORT_VALIDITY_MULT;
mstime_t now = mstime();
listRewind(l,&li);
@@ -832,7 +832,7 @@ void freeClusterNode(clusterNode *n) {
if (nodeIsSlave(n) && n->slaveof) clusterNodeRemoveSlave(n->slaveof,n);
/* Unlink from the set of nodes. */
- nodename = sdsnewlen(n->name, REDIS_CLUSTER_NAMELEN);
+ nodename = sdsnewlen(n->name, CLUSTER_NAMELEN);
serverAssert(dictDelete(server.cluster->nodes,nodename) == DICT_OK);
sdsfree(nodename);
@@ -848,7 +848,7 @@ int clusterAddNode(clusterNode *node) {
int retval;
retval = dictAdd(server.cluster->nodes,
- sdsnewlen(node->name,REDIS_CLUSTER_NAMELEN), node);
+ sdsnewlen(node->name,CLUSTER_NAMELEN), node);
return (retval == DICT_OK) ? C_OK : C_ERR;
}
@@ -869,7 +869,7 @@ void clusterDelNode(clusterNode *delnode) {
dictEntry *de;
/* 1) Mark slots as unassigned. */
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
if (server.cluster->importing_slots_from[j] == delnode)
server.cluster->importing_slots_from[j] = NULL;
if (server.cluster->migrating_slots_to[j] == delnode)
@@ -894,7 +894,7 @@ void clusterDelNode(clusterNode *delnode) {
/* Node lookup by name */
clusterNode *clusterLookupNode(char *name) {
- sds s = sdsnewlen(name, REDIS_CLUSTER_NAMELEN);
+ sds s = sdsnewlen(name, CLUSTER_NAMELEN);
dictEntry *de;
de = dictFind(server.cluster->nodes,s);
@@ -909,14 +909,14 @@ clusterNode *clusterLookupNode(char *name) {
* this function. */
void clusterRenameNode(clusterNode *node, char *newname) {
int retval;
- sds s = sdsnewlen(node->name, REDIS_CLUSTER_NAMELEN);
+ sds s = sdsnewlen(node->name, CLUSTER_NAMELEN);
serverLog(LL_DEBUG,"Renaming node %.40s into %.40s",
node->name, newname);
retval = dictDelete(server.cluster->nodes, s);
sdsfree(s);
serverAssert(retval == DICT_OK);
- memcpy(node->name, newname, REDIS_CLUSTER_NAMELEN);
+ memcpy(node->name, newname, CLUSTER_NAMELEN);
clusterAddNode(node);
}
@@ -1040,7 +1040,7 @@ void clusterHandleConfigEpochCollision(clusterNode *sender) {
if (sender->configEpoch != myself->configEpoch ||
!nodeIsMaster(sender) || !nodeIsMaster(myself)) return;
/* Don't act if the colliding node has a smaller Node ID. */
- if (memcmp(sender->name,myself->name,REDIS_CLUSTER_NAMELEN) <= 0) return;
+ if (memcmp(sender->name,myself->name,CLUSTER_NAMELEN) <= 0) return;
/* Get the next ID available at the best of this node knowledge. */
server.cluster->currentEpoch++;
myself->configEpoch = server.cluster->currentEpoch;
@@ -1057,14 +1057,14 @@ void clusterHandleConfigEpochCollision(clusterNode *sender) {
*
* The nodes blacklist is just a way to ensure that a given node with a given
* Node ID is not readded before some time elapsed (this time is specified
- * in seconds in REDIS_CLUSTER_BLACKLIST_TTL).
+ * in seconds in CLUSTER_BLACKLIST_TTL).
*
* This is useful when we want to remove a node from the cluster completely:
* when CLUSTER FORGET is called, it also puts the node into the blacklist so
* that even if we receive gossip messages from other nodes that still remember
* about the node we want to remove, we don't re-add it before some time.
*
- * Currently the REDIS_CLUSTER_BLACKLIST_TTL is set to 1 minute, this means
+ * Currently the CLUSTER_BLACKLIST_TTL is set to 1 minute, this means
* that redis-trib has 60 seconds to send CLUSTER FORGET messages to nodes
* in the cluster without dealing with the problem of other nodes re-adding
* back the node to nodes we already sent the FORGET command to.
@@ -1074,7 +1074,7 @@ void clusterHandleConfigEpochCollision(clusterNode *sender) {
* value.
* -------------------------------------------------------------------------- */
-#define REDIS_CLUSTER_BLACKLIST_TTL 60 /* 1 minute. */
+#define CLUSTER_BLACKLIST_TTL 60 /* 1 minute. */
/* Before of the addNode() or Exists() operations we always remove expired
@@ -1100,7 +1100,7 @@ void clusterBlacklistCleanup(void) {
/* Cleanup the blacklist and add a new node ID to the black list. */
void clusterBlacklistAddNode(clusterNode *node) {
dictEntry *de;
- sds id = sdsnewlen(node->name,REDIS_CLUSTER_NAMELEN);
+ sds id = sdsnewlen(node->name,CLUSTER_NAMELEN);
clusterBlacklistCleanup();
if (dictAdd(server.cluster->nodes_black_list,id,NULL) == DICT_OK) {
@@ -1109,7 +1109,7 @@ void clusterBlacklistAddNode(clusterNode *node) {
id = sdsdup(id);
}
de = dictFind(server.cluster->nodes_black_list,id);
- dictSetUnsignedIntegerVal(de,time(NULL)+REDIS_CLUSTER_BLACKLIST_TTL);
+ dictSetUnsignedIntegerVal(de,time(NULL)+CLUSTER_BLACKLIST_TTL);
sdsfree(id);
}
@@ -1117,7 +1117,7 @@ void clusterBlacklistAddNode(clusterNode *node) {
* You don't need to pass an sds string here, any pointer to 40 bytes
* will work. */
int clusterBlacklistExists(char *nodeid) {
- sds id = sdsnewlen(nodeid,REDIS_CLUSTER_NAMELEN);
+ sds id = sdsnewlen(nodeid,CLUSTER_NAMELEN);
int retval;
clusterBlacklistCleanup();
@@ -1167,8 +1167,8 @@ void markNodeAsFailingIfNeeded(clusterNode *node) {
"Marking node %.40s as failing (quorum reached).", node->name);
/* Mark the node as failing. */
- node->flags &= ~REDIS_NODE_PFAIL;
- node->flags |= REDIS_NODE_FAIL;
+ node->flags &= ~CLUSTER_NODE_PFAIL;
+ node->flags |= CLUSTER_NODE_FAIL;
node->fail_time = mstime();
/* Broadcast the failing node name to everybody, forcing all the other
@@ -1192,7 +1192,7 @@ void clearNodeFailureIfNeeded(clusterNode *node) {
"Clear FAIL state for node %.40s: %s is reachable again.",
node->name,
nodeIsSlave(node) ? "slave" : "master without slots");
- node->flags &= ~REDIS_NODE_FAIL;
+ node->flags &= ~CLUSTER_NODE_FAIL;
clusterDoBeforeSleep(CLUSTER_TODO_UPDATE_STATE|CLUSTER_TODO_SAVE_CONFIG);
}
@@ -1202,12 +1202,12 @@ void clearNodeFailureIfNeeded(clusterNode *node) {
* Apparently no one is going to fix these slots, clear the FAIL flag. */
if (nodeIsMaster(node) && node->numslots > 0 &&
(now - node->fail_time) >
- (server.cluster_node_timeout * REDIS_CLUSTER_FAIL_UNDO_TIME_MULT))
+ (server.cluster_node_timeout * CLUSTER_FAIL_UNDO_TIME_MULT))
{
serverLog(LL_NOTICE,
"Clear FAIL state for node %.40s: is reachable again and nobody is serving its slots after some time.",
node->name);
- node->flags &= ~REDIS_NODE_FAIL;
+ node->flags &= ~CLUSTER_NODE_FAIL;
clusterDoBeforeSleep(CLUSTER_TODO_UPDATE_STATE|CLUSTER_TODO_SAVE_CONFIG);
}
}
@@ -1257,7 +1257,7 @@ int clusterStartHandshake(char *ip, int port) {
}
/* Port sanity check */
- if (port <= 0 || port > (65535-REDIS_CLUSTER_PORT_INCR)) {
+ if (port <= 0 || port > (65535-CLUSTER_PORT_INCR)) {
errno = EINVAL;
return 0;
}
@@ -1282,7 +1282,7 @@ int clusterStartHandshake(char *ip, int port) {
/* Add the node with a random address (NULL as first argument to
* createClusterNode()). Everything will be fixed during the
* handshake. */
- n = createClusterNode(NULL,REDIS_NODE_HANDSHAKE|REDIS_NODE_MEET);
+ n = createClusterNode(NULL,CLUSTER_NODE_HANDSHAKE|CLUSTER_NODE_MEET);
memcpy(n->ip,norm_ip,sizeof(n->ip));
n->port = port;
clusterAddNode(n);
@@ -1317,7 +1317,7 @@ void clusterProcessGossipSection(clusterMsg *hdr, clusterLink *link) {
/* We already know this node.
Handle failure reports, only when the sender is a master. */
if (sender && nodeIsMaster(sender) && node != myself) {
- if (flags & (REDIS_NODE_FAIL|REDIS_NODE_PFAIL)) {
+ if (flags & (CLUSTER_NODE_FAIL|CLUSTER_NODE_PFAIL)) {
if (clusterNodeAddFailureReport(node,sender)) {
serverLog(LL_VERBOSE,
"Node %.40s reported node %.40s as not reachable.",
@@ -1338,7 +1338,7 @@ void clusterProcessGossipSection(clusterMsg *hdr, clusterLink *link) {
* handshake with the (possibly) new address: this will result
* into a node address update if the handshake will be
* successful. */
- if (node->flags & (REDIS_NODE_FAIL|REDIS_NODE_PFAIL) &&
+ if (node->flags & (CLUSTER_NODE_FAIL|CLUSTER_NODE_PFAIL) &&
(strcasecmp(node->ip,g->ip) || node->port != ntohs(g->port)))
{
clusterStartHandshake(g->ip,ntohs(g->port));
@@ -1351,7 +1351,7 @@ void clusterProcessGossipSection(clusterMsg *hdr, clusterLink *link) {
* is a well known node in our cluster, otherwise we risk
* joining another cluster. */
if (sender &&
- !(flags & REDIS_NODE_NOADDR) &&
+ !(flags & CLUSTER_NODE_NOADDR) &&
!clusterBlacklistExists(g->nodename))
{
clusterStartHandshake(g->ip,ntohs(g->port));
@@ -1396,7 +1396,7 @@ int nodeUpdateAddressIfNeeded(clusterNode *node, clusterLink *link, int port) {
memcpy(node->ip,ip,sizeof(ip));
node->port = port;
if (node->link) freeClusterLink(node->link);
- node->flags &= ~REDIS_NODE_NOADDR;
+ node->flags &= ~CLUSTER_NODE_NOADDR;
serverLog(LL_WARNING,"Address updated for node %.40s, now %s:%d",
node->name, node->ip, node->port);
@@ -1414,8 +1414,8 @@ void clusterSetNodeAsMaster(clusterNode *n) {
if (nodeIsMaster(n)) return;
if (n->slaveof) clusterNodeRemoveSlave(n->slaveof,n);
- n->flags &= ~REDIS_NODE_SLAVE;
- n->flags |= REDIS_NODE_MASTER;
+ n->flags &= ~CLUSTER_NODE_SLAVE;
+ n->flags |= CLUSTER_NODE_MASTER;
n->slaveof = NULL;
/* Update config and state. */
@@ -1444,7 +1444,7 @@ void clusterUpdateSlotsConfigWith(clusterNode *sender, uint64_t senderConfigEpoc
* If the update message is not able to demote a master to slave (in this
* case we'll resync with the master updating the whole key space), we
* need to delete all the keys in the slots we lost ownership. */
- uint16_t dirty_slots[REDIS_CLUSTER_SLOTS];
+ uint16_t dirty_slots[CLUSTER_SLOTS];
int dirty_slots_count = 0;
/* Here we set curmaster to this node or the node this node
@@ -1457,7 +1457,7 @@ void clusterUpdateSlotsConfigWith(clusterNode *sender, uint64_t senderConfigEpoc
return;
}
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
if (bitmapTestBit(slots,j)) {
/* The slot is already bound to the sender of this message. */
if (server.cluster->slots[j] == sender) continue;
@@ -1654,7 +1654,7 @@ int clusterProcessPacket(clusterLink *link) {
if (!sender && type == CLUSTERMSG_TYPE_MEET) {
clusterNode *node;
- node = createClusterNode(NULL,REDIS_NODE_HANDSHAKE);
+ node = createClusterNode(NULL,CLUSTER_NODE_HANDSHAKE);
nodeIp2String(node->ip,link);
node->port = ntohs(hdr->port);
clusterAddNode(node);
@@ -1702,17 +1702,17 @@ int clusterProcessPacket(clusterLink *link) {
clusterRenameNode(link->node, hdr->sender);
serverLog(LL_DEBUG,"Handshake with node %.40s completed.",
link->node->name);
- link->node->flags &= ~REDIS_NODE_HANDSHAKE;
- link->node->flags |= flags&(REDIS_NODE_MASTER|REDIS_NODE_SLAVE);
+ link->node->flags &= ~CLUSTER_NODE_HANDSHAKE;
+ link->node->flags |= flags&(CLUSTER_NODE_MASTER|CLUSTER_NODE_SLAVE);
clusterDoBeforeSleep(CLUSTER_TODO_SAVE_CONFIG);
} else if (memcmp(link->node->name,hdr->sender,
- REDIS_CLUSTER_NAMELEN) != 0)
+ CLUSTER_NAMELEN) != 0)
{
/* If the reply has a non matching node ID we
* disconnect this node and set it as not having an associated
* address. */
serverLog(LL_DEBUG,"PONG contains mismatching sender ID");
- link->node->flags |= REDIS_NODE_NOADDR;
+ link->node->flags |= CLUSTER_NODE_NOADDR;
link->node->ip[0] = '\0';
link->node->port = 0;
freeClusterLink(link);
@@ -1742,7 +1742,7 @@ int clusterProcessPacket(clusterLink *link) {
* The FAIL condition is also reversible under specific
* conditions detected by clearNodeFailureIfNeeded(). */
if (nodeTimedOut(link->node)) {
- link->node->flags &= ~REDIS_NODE_PFAIL;
+ link->node->flags &= ~CLUSTER_NODE_PFAIL;
clusterDoBeforeSleep(CLUSTER_TODO_SAVE_CONFIG|
CLUSTER_TODO_UPDATE_STATE);
} else if (nodeFailed(link->node)) {
@@ -1752,7 +1752,7 @@ int clusterProcessPacket(clusterLink *link) {
/* Check for role switch: slave -> master or master -> slave. */
if (sender) {
- if (!memcmp(hdr->slaveof,REDIS_NODE_NULL_NAME,
+ if (!memcmp(hdr->slaveof,CLUSTER_NODE_NULL_NAME,
sizeof(hdr->slaveof)))
{
/* Node is a master. */
@@ -1764,8 +1764,8 @@ int clusterProcessPacket(clusterLink *link) {
if (nodeIsMaster(sender)) {
/* Master turned into a slave! Reconfigure the node. */
clusterDelNodeSlots(sender);
- sender->flags &= ~REDIS_NODE_MASTER;
- sender->flags |= REDIS_NODE_SLAVE;
+ sender->flags &= ~CLUSTER_NODE_MASTER;
+ sender->flags |= CLUSTER_NODE_SLAVE;
/* Remove the list of slaves from the node. */
if (sender->numslaves) clusterNodeResetSlaves(sender);
@@ -1791,7 +1791,7 @@ int clusterProcessPacket(clusterLink *link) {
/* Update our info about served slots.
*
* Note: this MUST happen after we update the master/slave state
- * so that REDIS_NODE_MASTER flag will be set. */
+ * so that CLUSTER_NODE_MASTER flag will be set. */
/* Many checks are only needed if the set of served slots this
* instance claims is different compared to the set of slots we have
@@ -1835,7 +1835,7 @@ int clusterProcessPacket(clusterLink *link) {
if (sender && dirty_slots) {
int j;
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
if (bitmapTestBit(hdr->myslots,j)) {
if (server.cluster->slots[j] == sender ||
server.cluster->slots[j] == NULL) continue;
@@ -1875,14 +1875,14 @@ int clusterProcessPacket(clusterLink *link) {
if (sender) {
failing = clusterLookupNode(hdr->data.fail.about.nodename);
if (failing &&
- !(failing->flags & (REDIS_NODE_FAIL|REDIS_NODE_MYSELF)))
+ !(failing->flags & (CLUSTER_NODE_FAIL|CLUSTER_NODE_MYSELF)))
{
serverLog(LL_NOTICE,
"FAIL message received from %.40s about %.40s",
hdr->sender, hdr->data.fail.about.nodename);
- failing->flags |= REDIS_NODE_FAIL;
+ failing->flags |= CLUSTER_NODE_FAIL;
failing->fail_time = mstime();
- failing->flags &= ~REDIS_NODE_PFAIL;
+ failing->flags &= ~CLUSTER_NODE_PFAIL;
clusterDoBeforeSleep(CLUSTER_TODO_SAVE_CONFIG|
CLUSTER_TODO_UPDATE_STATE);
}
@@ -1934,9 +1934,9 @@ int clusterProcessPacket(clusterLink *link) {
/* Manual failover requested from slaves. Initialize the state
* accordingly. */
resetManualFailover();
- server.cluster->mf_end = mstime() + REDIS_CLUSTER_MF_TIMEOUT;
+ server.cluster->mf_end = mstime() + CLUSTER_MF_TIMEOUT;
server.cluster->mf_slave = sender;
- pauseClients(mstime()+(REDIS_CLUSTER_MF_TIMEOUT*2));
+ pauseClients(mstime()+(CLUSTER_MF_TIMEOUT*2));
serverLog(LL_WARNING,"Manual failover requested by slave %.40s.",
sender->name);
} else if (type == CLUSTERMSG_TYPE_UPDATE) {
@@ -2093,7 +2093,7 @@ void clusterBroadcastMessage(void *buf, size_t len) {
clusterNode *node = dictGetVal(de);
if (!node->link) continue;
- if (node->flags & (REDIS_NODE_MYSELF|REDIS_NODE_HANDSHAKE))
+ if (node->flags & (CLUSTER_NODE_MYSELF|CLUSTER_NODE_HANDSHAKE))
continue;
clusterSendMessage(node->link,buf,len);
}
@@ -2121,12 +2121,12 @@ void clusterBuildMessageHdr(clusterMsg *hdr, int type) {
hdr->sig[2] = 'm';
hdr->sig[3] = 'b';
hdr->type = htons(type);
- memcpy(hdr->sender,myself->name,REDIS_CLUSTER_NAMELEN);
+ memcpy(hdr->sender,myself->name,CLUSTER_NAMELEN);
memcpy(hdr->myslots,master->slots,sizeof(hdr->myslots));
- memset(hdr->slaveof,0,REDIS_CLUSTER_NAMELEN);
+ memset(hdr->slaveof,0,CLUSTER_NAMELEN);
if (myself->slaveof != NULL)
- memcpy(hdr->slaveof,myself->slaveof->name, REDIS_CLUSTER_NAMELEN);
+ memcpy(hdr->slaveof,myself->slaveof->name, CLUSTER_NAMELEN);
hdr->port = htons(server.port);
hdr->flags = htons(myself->flags);
hdr->state = server.cluster->state;
@@ -2233,7 +2233,7 @@ void clusterSendPing(clusterLink *link, int type) {
/* Give a bias to FAIL/PFAIL nodes. */
if (maxiterations > wanted*2 &&
- !(this->flags & (REDIS_NODE_PFAIL|REDIS_NODE_FAIL)))
+ !(this->flags & (CLUSTER_NODE_PFAIL|CLUSTER_NODE_FAIL)))
continue;
/* In the gossip section don't include:
@@ -2241,7 +2241,7 @@ void clusterSendPing(clusterLink *link, int type) {
* 3) Nodes with the NOADDR flag set.
* 4) Disconnected nodes if they don't have configured slots.
*/
- if (this->flags & (REDIS_NODE_HANDSHAKE|REDIS_NODE_NOADDR) ||
+ if (this->flags & (CLUSTER_NODE_HANDSHAKE|CLUSTER_NODE_NOADDR) ||
(this->link == NULL && this->numslots == 0))
{
freshnodes--; /* Tecnically not correct, but saves CPU. */
@@ -2251,14 +2251,14 @@ void clusterSendPing(clusterLink *link, int type) {
/* Check if we already added this node */
for (j = 0; j < gossipcount; j++) {
if (memcmp(hdr->data.ping.gossip[j].nodename,this->name,
- REDIS_CLUSTER_NAMELEN) == 0) break;
+ CLUSTER_NAMELEN) == 0) break;
}
if (j != gossipcount) continue;
/* Add it */
freshnodes--;
gossip = &(hdr->data.ping.gossip[gossipcount]);
- memcpy(gossip->nodename,this->name,REDIS_CLUSTER_NAMELEN);
+ memcpy(gossip->nodename,this->name,CLUSTER_NAMELEN);
gossip->ping_sent = htonl(this->ping_sent);
gossip->pong_received = htonl(this->pong_received);
memcpy(gossip->ip,this->ip,sizeof(this->ip));
@@ -2362,15 +2362,15 @@ void clusterSendPublish(clusterLink *link, robj *channel, robj *message) {
/* Send a FAIL message to all the nodes we are able to contact.
* The FAIL message is sent when we detect that a node is failing
- * (REDIS_NODE_PFAIL) and we also receive a gossip confirmation of this:
- * we switch the node state to REDIS_NODE_FAIL and ask all the other
+ * (CLUSTER_NODE_PFAIL) and we also receive a gossip confirmation of this:
+ * we switch the node state to CLUSTER_NODE_FAIL and ask all the other
* nodes to do the same ASAP. */
void clusterSendFail(char *nodename) {
unsigned char buf[sizeof(clusterMsg)];
clusterMsg *hdr = (clusterMsg*) buf;
clusterBuildMessageHdr(hdr,CLUSTERMSG_TYPE_FAIL);
- memcpy(hdr->data.fail.about.nodename,nodename,REDIS_CLUSTER_NAMELEN);
+ memcpy(hdr->data.fail.about.nodename,nodename,CLUSTER_NAMELEN);
clusterBroadcastMessage(buf,ntohl(hdr->totlen));
}
@@ -2383,7 +2383,7 @@ void clusterSendUpdate(clusterLink *link, clusterNode *node) {
if (link == NULL) return;
clusterBuildMessageHdr(hdr,CLUSTERMSG_TYPE_UPDATE);
- memcpy(hdr->data.update.nodecfg.nodename,node->name,REDIS_CLUSTER_NAMELEN);
+ memcpy(hdr->data.update.nodecfg.nodename,node->name,CLUSTER_NAMELEN);
hdr->data.update.nodecfg.configEpoch = htonu64(node->configEpoch);
memcpy(hdr->data.update.nodecfg.slots,node->slots,sizeof(node->slots));
clusterSendMessage(link,buf,ntohl(hdr->totlen));
@@ -2527,7 +2527,7 @@ void clusterSendFailoverAuthIfNeeded(clusterNode *node, clusterMsg *request) {
/* The slave requesting the vote must have a configEpoch for the claimed
* slots that is >= the one of the masters currently serving the same
* slots in the current configuration. */
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
if (bitmapTestBit(claimed_slots, j) == 0) continue;
if (server.cluster->slots[j] == NULL ||
server.cluster->slots[j]->configEpoch <= requestConfigEpoch)
@@ -2595,13 +2595,13 @@ int clusterGetSlaveRank(void) {
* when the slave finds that its master is fine (no FAIL flag).
* 2) Also, the log is emitted again if the master is still down and
* the reason for not failing over is still the same, but more than
- * REDIS_CLUSTER_CANT_FAILOVER_RELOG_PERIOD seconds elapsed.
+ * CLUSTER_CANT_FAILOVER_RELOG_PERIOD seconds elapsed.
* 3) Finally, the function only logs if the slave is down for more than
* five seconds + NODE_TIMEOUT. This way nothing is logged when a
* failover starts in a reasonable time.
*
* The function is called with the reason why the slave can't failover
- * which is one of the integer macros REDIS_CLUSTER_CANT_FAILOVER_*.
+ * which is one of the integer macros CLUSTER_CANT_FAILOVER_*.
*
* The function is guaranteed to be called only if 'myself' is a slave. */
void clusterLogCantFailover(int reason) {
@@ -2611,7 +2611,7 @@ void clusterLogCantFailover(int reason) {
/* Don't log if we have the same reason for some time. */
if (reason == server.cluster->cant_failover_reason &&
- time(NULL)-lastlog_time < REDIS_CLUSTER_CANT_FAILOVER_RELOG_PERIOD)
+ time(NULL)-lastlog_time < CLUSTER_CANT_FAILOVER_RELOG_PERIOD)
return;
server.cluster->cant_failover_reason = reason;
@@ -2624,16 +2624,16 @@ void clusterLogCantFailover(int reason) {
(mstime() - myself->slaveof->fail_time) < nolog_fail_time) return;
switch(reason) {
- case REDIS_CLUSTER_CANT_FAILOVER_DATA_AGE:
+ case CLUSTER_CANT_FAILOVER_DATA_AGE:
msg = "Disconnected from master for longer than allowed.";
break;
- case REDIS_CLUSTER_CANT_FAILOVER_WAITING_DELAY:
+ case CLUSTER_CANT_FAILOVER_WAITING_DELAY:
msg = "Waiting the delay before I can start a new failover.";
break;
- case REDIS_CLUSTER_CANT_FAILOVER_EXPIRED:
+ case CLUSTER_CANT_FAILOVER_EXPIRED:
msg = "Failover attempt expired.";
break;
- case REDIS_CLUSTER_CANT_FAILOVER_WAITING_VOTES:
+ case CLUSTER_CANT_FAILOVER_WAITING_VOTES:
msg = "Waiting for votes, but majority still not reached.";
break;
default:
@@ -2661,7 +2661,7 @@ void clusterFailoverReplaceYourMaster(void) {
replicationUnsetMaster();
/* 2) Claim all the slots assigned to our master. */
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
if (clusterNodeGetSlotBit(oldmaster,j)) {
clusterDelSlot(j);
clusterAddSlot(myself,j);
@@ -2721,7 +2721,7 @@ void clusterHandleSlaveFailover(void) {
{
/* There are no reasons to failover, so we set the reason why we
* are returning without failing over to NONE. */
- server.cluster->cant_failover_reason = REDIS_CLUSTER_CANT_FAILOVER_NONE;
+ server.cluster->cant_failover_reason = CLUSTER_CANT_FAILOVER_NONE;
return;
}
@@ -2750,7 +2750,7 @@ void clusterHandleSlaveFailover(void) {
(server.cluster_node_timeout * server.cluster_slave_validity_factor)))
{
if (!manual_failover) {
- clusterLogCantFailover(REDIS_CLUSTER_CANT_FAILOVER_DATA_AGE);
+ clusterLogCantFailover(CLUSTER_CANT_FAILOVER_DATA_AGE);
return;
}
}
@@ -2809,13 +2809,13 @@ void clusterHandleSlaveFailover(void) {
/* Return ASAP if we can't still start the election. */
if (mstime() < server.cluster->failover_auth_time) {
- clusterLogCantFailover(REDIS_CLUSTER_CANT_FAILOVER_WAITING_DELAY);
+ clusterLogCantFailover(CLUSTER_CANT_FAILOVER_WAITING_DELAY);
return;
}
/* Return ASAP if the election is too old to be valid. */
if (auth_age > auth_timeout) {
- clusterLogCantFailover(REDIS_CLUSTER_CANT_FAILOVER_EXPIRED);
+ clusterLogCantFailover(CLUSTER_CANT_FAILOVER_EXPIRED);
return;
}
@@ -2851,7 +2851,7 @@ void clusterHandleSlaveFailover(void) {
/* Take responsability for the cluster slots. */
clusterFailoverReplaceYourMaster();
} else {
- clusterLogCantFailover(REDIS_CLUSTER_CANT_FAILOVER_WAITING_VOTES);
+ clusterLogCantFailover(CLUSTER_CANT_FAILOVER_WAITING_VOTES);
}
}
@@ -2889,7 +2889,7 @@ void clusterHandleSlaveMigration(int max_slaves) {
dictEntry *de;
/* Step 1: Don't migrate if the cluster state is not ok. */
- if (server.cluster->state != REDIS_CLUSTER_OK) return;
+ if (server.cluster->state != CLUSTER_OK) return;
/* Step 2: Don't migrate if my master will not be left with at least
* 'migration-barrier' slaves after my migration. */
@@ -2929,7 +2929,7 @@ void clusterHandleSlaveMigration(int max_slaves) {
for (j = 0; j < node->numslaves; j++) {
if (memcmp(node->slaves[j]->name,
candidate->name,
- REDIS_CLUSTER_NAMELEN) < 0)
+ CLUSTER_NAMELEN) < 0)
{
candidate = node->slaves[j];
}
@@ -2955,7 +2955,7 @@ void clusterHandleSlaveMigration(int max_slaves) {
* setting mf_end to the millisecond unix time at which we'll abort the
* attempt.
* 2) Slave sends a MFSTART message to the master requesting to pause clients
- * for two times the manual failover timeout REDIS_CLUSTER_MF_TIMEOUT.
+ * for two times the manual failover timeout CLUSTER_MF_TIMEOUT.
* When master is paused for manual failover, it also starts to flag
* packets with CLUSTERMSG_FLAG0_PAUSED.
* 3) Slave waits for master to send its replication offset flagged as PAUSED.
@@ -3053,7 +3053,7 @@ void clusterCron(void) {
while((de = dictNext(di)) != NULL) {
clusterNode *node = dictGetVal(de);
- if (node->flags & (REDIS_NODE_MYSELF|REDIS_NODE_NOADDR)) continue;
+ if (node->flags & (CLUSTER_NODE_MYSELF|CLUSTER_NODE_NOADDR)) continue;
/* A Node in HANDSHAKE state has a limited lifespan equal to the
* configured node timeout. */
@@ -3068,7 +3068,7 @@ void clusterCron(void) {
clusterLink *link;
fd = anetTcpNonBlockBindConnect(server.neterr, node->ip,
- node->port+REDIS_CLUSTER_PORT_INCR, NET_FIRST_BIND_ADDR);
+ node->port+CLUSTER_PORT_INCR, NET_FIRST_BIND_ADDR);
if (fd == -1) {
/* We got a synchronous error from connect before
* clusterSendPing() had a chance to be called.
@@ -3078,7 +3078,7 @@ void clusterCron(void) {
if (node->ping_sent == 0) node->ping_sent = mstime();
serverLog(LL_DEBUG, "Unable to connect to "
"Cluster Node [%s]:%d -> %s", node->ip,
- node->port+REDIS_CLUSTER_PORT_INCR,
+ node->port+CLUSTER_PORT_INCR,
server.neterr);
continue;
}
@@ -3094,7 +3094,7 @@ void clusterCron(void) {
* of a PING one, to force the receiver to add us in its node
* table. */
old_ping_sent = node->ping_sent;
- clusterSendPing(link, node->flags & REDIS_NODE_MEET ?
+ clusterSendPing(link, node->flags & CLUSTER_NODE_MEET ?
CLUSTERMSG_TYPE_MEET : CLUSTERMSG_TYPE_PING);
if (old_ping_sent) {
/* If there was an active ping before the link was
@@ -3107,10 +3107,10 @@ void clusterCron(void) {
* to this node. Instead after the PONG is received and we
* are no longer in meet/handshake status, we want to send
* normal PING packets. */
- node->flags &= ~REDIS_NODE_MEET;
+ node->flags &= ~CLUSTER_NODE_MEET;
serverLog(LL_DEBUG,"Connecting with Node %.40s at %s:%d",
- node->name, node->ip, node->port+REDIS_CLUSTER_PORT_INCR);
+ node->name, node->ip, node->port+CLUSTER_PORT_INCR);
}
}
dictReleaseIterator(di);
@@ -3128,7 +3128,7 @@ void clusterCron(void) {
/* Don't ping nodes disconnected or with a ping currently active. */
if (this->link == NULL || this->ping_sent != 0) continue;
- if (this->flags & (REDIS_NODE_MYSELF|REDIS_NODE_HANDSHAKE))
+ if (this->flags & (CLUSTER_NODE_MYSELF|CLUSTER_NODE_HANDSHAKE))
continue;
if (min_pong_node == NULL || min_pong > this->pong_received) {
min_pong_node = this;
@@ -3157,7 +3157,7 @@ void clusterCron(void) {
mstime_t delay;
if (node->flags &
- (REDIS_NODE_MYSELF|REDIS_NODE_NOADDR|REDIS_NODE_HANDSHAKE))
+ (CLUSTER_NODE_MYSELF|CLUSTER_NODE_NOADDR|CLUSTER_NODE_HANDSHAKE))
continue;
/* Orphaned master check, useful only if the current instance
@@ -3224,10 +3224,10 @@ void clusterCron(void) {
if (delay > server.cluster_node_timeout) {
/* Timeout reached. Set the node as possibly failing if it is
* not already in this state. */
- if (!(node->flags & (REDIS_NODE_PFAIL|REDIS_NODE_FAIL))) {
+ if (!(node->flags & (CLUSTER_NODE_PFAIL|CLUSTER_NODE_FAIL))) {
serverLog(LL_DEBUG,"*** NODE %.40s possibly failing",
node->name);
- node->flags |= REDIS_NODE_PFAIL;
+ node->flags |= CLUSTER_NODE_PFAIL;
update_state = 1;
}
}
@@ -3260,7 +3260,7 @@ void clusterCron(void) {
clusterHandleSlaveMigration(max_slaves);
}
- if (update_state || server.cluster->state == REDIS_CLUSTER_FAIL)
+ if (update_state || server.cluster->state == CLUSTER_FAIL)
clusterUpdateState();
}
@@ -3370,7 +3370,7 @@ int clusterDelSlot(int slot) {
int clusterDelNodeSlots(clusterNode *node) {
int deleted = 0, j;
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
if (clusterNodeGetSlotBit(node,j)) clusterDelSlot(j);
deleted++;
}
@@ -3394,9 +3394,9 @@ void clusterCloseAllSlots(void) {
* and are based on heuristics. Actaully the main point about the rejoin and
* writable delay is that they should be a few orders of magnitude larger
* than the network latency. */
-#define REDIS_CLUSTER_MAX_REJOIN_DELAY 5000
-#define REDIS_CLUSTER_MIN_REJOIN_DELAY 500
-#define REDIS_CLUSTER_WRITABLE_DELAY 2000
+#define CLUSTER_MAX_REJOIN_DELAY 5000
+#define CLUSTER_MIN_REJOIN_DELAY 500
+#define CLUSTER_WRITABLE_DELAY 2000
void clusterUpdateState(void) {
int j, new_state;
@@ -3414,20 +3414,20 @@ void clusterUpdateState(void) {
* to don't count the DB loading time. */
if (first_call_time == 0) first_call_time = mstime();
if (nodeIsMaster(myself) &&
- server.cluster->state == REDIS_CLUSTER_FAIL &&
- mstime() - first_call_time < REDIS_CLUSTER_WRITABLE_DELAY) return;
+ server.cluster->state == CLUSTER_FAIL &&
+ mstime() - first_call_time < CLUSTER_WRITABLE_DELAY) return;
/* Start assuming the state is OK. We'll turn it into FAIL if there
* are the right conditions. */
- new_state = REDIS_CLUSTER_OK;
+ new_state = CLUSTER_OK;
/* Check if all the slots are covered. */
if (server.cluster_require_full_coverage) {
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
if (server.cluster->slots[j] == NULL ||
- server.cluster->slots[j]->flags & (REDIS_NODE_FAIL))
+ server.cluster->slots[j]->flags & (CLUSTER_NODE_FAIL))
{
- new_state = REDIS_CLUSTER_FAIL;
+ new_state = CLUSTER_FAIL;
break;
}
}
@@ -3449,7 +3449,7 @@ void clusterUpdateState(void) {
if (nodeIsMaster(node) && node->numslots) {
server.cluster->size++;
- if ((node->flags & (REDIS_NODE_FAIL|REDIS_NODE_PFAIL)) == 0)
+ if ((node->flags & (CLUSTER_NODE_FAIL|CLUSTER_NODE_PFAIL)) == 0)
reachable_masters++;
}
}
@@ -3462,7 +3462,7 @@ void clusterUpdateState(void) {
int needed_quorum = (server.cluster->size / 2) + 1;
if (reachable_masters < needed_quorum) {
- new_state = REDIS_CLUSTER_FAIL;
+ new_state = CLUSTER_FAIL;
among_minority_time = mstime();
}
}
@@ -3475,12 +3475,12 @@ void clusterUpdateState(void) {
* minority, don't let it accept queries for some time after the
* partition heals, to make sure there is enough time to receive
* a configuration update. */
- if (rejoin_delay > REDIS_CLUSTER_MAX_REJOIN_DELAY)
- rejoin_delay = REDIS_CLUSTER_MAX_REJOIN_DELAY;
- if (rejoin_delay < REDIS_CLUSTER_MIN_REJOIN_DELAY)
- rejoin_delay = REDIS_CLUSTER_MIN_REJOIN_DELAY;
+ if (rejoin_delay > CLUSTER_MAX_REJOIN_DELAY)
+ rejoin_delay = CLUSTER_MAX_REJOIN_DELAY;
+ if (rejoin_delay < CLUSTER_MIN_REJOIN_DELAY)
+ rejoin_delay = CLUSTER_MIN_REJOIN_DELAY;
- if (new_state == REDIS_CLUSTER_OK &&
+ if (new_state == CLUSTER_OK &&
nodeIsMaster(myself) &&
mstime() - among_minority_time < rejoin_delay)
{
@@ -3489,7 +3489,7 @@ void clusterUpdateState(void) {
/* Change the state and log the event. */
serverLog(LL_WARNING,"Cluster state changed: %s",
- new_state == REDIS_CLUSTER_OK ? "ok" : "fail");
+ new_state == CLUSTER_OK ? "ok" : "fail");
server.cluster->state = new_state;
}
}
@@ -3531,7 +3531,7 @@ int verifyClusterConfigWithData(void) {
/* Check that all the slots we see populated memory have a corresponding
* entry in the cluster table. Otherwise fix the table. */
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
if (!countKeysInSlot(j)) continue; /* No keys in this slot. */
/* Check if we are assigned to this slot or if we are importing it.
* In both cases check the next slot as the configuration makes
@@ -3571,8 +3571,8 @@ void clusterSetMaster(clusterNode *n) {
serverAssert(myself->numslots == 0);
if (nodeIsMaster(myself)) {
- myself->flags &= ~REDIS_NODE_MASTER;
- myself->flags |= REDIS_NODE_SLAVE;
+ myself->flags &= ~CLUSTER_NODE_MASTER;
+ myself->flags |= CLUSTER_NODE_SLAVE;
clusterCloseAllSlots();
} else {
if (myself->slaveof)
@@ -3594,13 +3594,13 @@ struct redisNodeFlags {
};
static struct redisNodeFlags redisNodeFlagsTable[] = {
- {REDIS_NODE_MYSELF, "myself,"},
- {REDIS_NODE_MASTER, "master,"},
- {REDIS_NODE_SLAVE, "slave,"},
- {REDIS_NODE_PFAIL, "fail?,"},
- {REDIS_NODE_FAIL, "fail,"},
- {REDIS_NODE_HANDSHAKE, "handshake,"},
- {REDIS_NODE_NOADDR, "noaddr,"}
+ {CLUSTER_NODE_MYSELF, "myself,"},
+ {CLUSTER_NODE_MASTER, "master,"},
+ {CLUSTER_NODE_SLAVE, "slave,"},
+ {CLUSTER_NODE_PFAIL, "fail?,"},
+ {CLUSTER_NODE_FAIL, "fail,"},
+ {CLUSTER_NODE_HANDSHAKE, "handshake,"},
+ {CLUSTER_NODE_NOADDR, "noaddr,"}
};
/* Concatenate the comma separated list of node flags to the given SDS
@@ -3647,19 +3647,19 @@ sds clusterGenNodeDescription(clusterNode *node) {
(long long) node->ping_sent,
(long long) node->pong_received,
(unsigned long long) node->configEpoch,
- (node->link || node->flags & REDIS_NODE_MYSELF) ?
+ (node->link || node->flags & CLUSTER_NODE_MYSELF) ?
"connected" : "disconnected");
/* Slots served by this instance */
start = -1;
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
int bit;
if ((bit = clusterNodeGetSlotBit(node,j)) != 0) {
if (start == -1) start = j;
}
- if (start != -1 && (!bit || j == REDIS_CLUSTER_SLOTS-1)) {
- if (bit && j == REDIS_CLUSTER_SLOTS-1) j++;
+ if (start != -1 && (!bit || j == CLUSTER_SLOTS-1)) {
+ if (bit && j == CLUSTER_SLOTS-1) j++;
if (start == j-1) {
ci = sdscatprintf(ci," %d",start);
@@ -3673,8 +3673,8 @@ sds clusterGenNodeDescription(clusterNode *node) {
/* Just for MYSELF node we also dump info about slots that
* we are migrating to other instances or importing from other
* instances. */
- if (node->flags & REDIS_NODE_MYSELF) {
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ if (node->flags & CLUSTER_NODE_MYSELF) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
if (server.cluster->migrating_slots_to[j]) {
ci = sdscatprintf(ci," [%d->-%.40s]",j,
server.cluster->migrating_slots_to[j]->name);
@@ -3726,7 +3726,7 @@ int getSlotOrReply(client *c, robj *o) {
long long slot;
if (getLongLongFromObject(o,&slot) != C_OK ||
- slot < 0 || slot >= REDIS_CLUSTER_SLOTS)
+ slot < 0 || slot >= CLUSTER_SLOTS)
{
addReplyError(c,"Invalid or out of range slot");
return -1;
@@ -3757,17 +3757,17 @@ void clusterReplyMultiBulkSlots(client *c) {
* master) and masters not serving any slot. */
if (!nodeIsMaster(node) || node->numslots == 0) continue;
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
int bit, i;
if ((bit = clusterNodeGetSlotBit(node,j)) != 0) {
if (start == -1) start = j;
}
- if (start != -1 && (!bit || j == REDIS_CLUSTER_SLOTS-1)) {
+ if (start != -1 && (!bit || j == CLUSTER_SLOTS-1)) {
int nested_elements = 3; /* slots (2) + master addr (1). */
void *nested_replylen = addDeferredMultiBulkLength(c);
- if (bit && j == REDIS_CLUSTER_SLOTS-1) j++;
+ if (bit && j == CLUSTER_SLOTS-1) j++;
/* If slot exists in output map, add to it's list.
* else, create a new output map for this slot */
@@ -3837,7 +3837,7 @@ void clusterCommand(client *c) {
decrRefCount(o);
} else if (!strcasecmp(c->argv[1]->ptr,"myid") && c->argc == 2) {
/* CLUSTER MYID */
- addReplyBulkCBuffer(c,myself->name, REDIS_CLUSTER_NAMELEN);
+ addReplyBulkCBuffer(c,myself->name, CLUSTER_NAMELEN);
} else if (!strcasecmp(c->argv[1]->ptr,"slots") && c->argc == 2) {
/* CLUSTER SLOTS */
clusterReplyMultiBulkSlots(c);
@@ -3856,10 +3856,10 @@ void clusterCommand(client *c) {
/* CLUSTER ADDSLOTS <slot> [slot] ... */
/* CLUSTER DELSLOTS <slot> [slot] ... */
int j, slot;
- unsigned char *slots = zmalloc(REDIS_CLUSTER_SLOTS);
+ unsigned char *slots = zmalloc(CLUSTER_SLOTS);
int del = !strcasecmp(c->argv[1]->ptr,"delslots");
- memset(slots,0,REDIS_CLUSTER_SLOTS);
+ memset(slots,0,CLUSTER_SLOTS);
/* Check that all the arguments are parseable and that all the
* slots are not already busy. */
for (j = 2; j < c->argc; j++) {
@@ -3883,7 +3883,7 @@ void clusterCommand(client *c) {
return;
}
}
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
if (slots[j]) {
int retval;
@@ -3999,7 +3999,7 @@ void clusterCommand(client *c) {
uint64_t myepoch;
int j;
- for (j = 0; j < REDIS_CLUSTER_SLOTS; j++) {
+ for (j = 0; j < CLUSTER_SLOTS; j++) {
clusterNode *n = server.cluster->slots[j];
if (n == NULL) continue;
@@ -4063,7 +4063,7 @@ void clusterCommand(client *c) {
if (getLongLongFromObjectOrReply(c,c->argv[2],&slot,NULL) != C_OK)
return;
- if (slot < 0 || slot >= REDIS_CLUSTER_SLOTS) {
+ if (slot < 0 || slot >= CLUSTER_SLOTS) {
addReplyError(c,"Invalid slot");
return;
}
@@ -4079,7 +4079,7 @@ void clusterCommand(client *c) {
if (getLongLongFromObjectOrReply(c,c->argv[3],&maxkeys,NULL)
!= C_OK)
return;
- if (slot < 0 || slot >= REDIS_CLUSTER_SLOTS || maxkeys < 0) {
+ if (slot < 0 || slot >= CLUSTER_SLOTS || maxkeys < 0) {
addReplyError(c,"Invalid slot or number of keys");
return;
}
@@ -4213,7 +4213,7 @@ void clusterCommand(client *c) {
return;
}
resetManualFailover();
- server.cluster->mf_end = mstime() + REDIS_CLUSTER_MF_TIMEOUT;
+ server.cluster->mf_end = mstime() + CLUSTER_MF_TIMEOUT;
if (takeover) {
/* A takeover does not perform any initial check. It just
@@ -4760,22 +4760,22 @@ void readwriteCommand(client *c) {
* On success the function returns the node that is able to serve the request.
* If the node is not 'myself' a redirection must be perfomed. The kind of
* redirection is specified setting the integer passed by reference
- * 'error_code', which will be set to REDIS_CLUSTER_REDIR_ASK or
- * REDIS_CLUSTER_REDIR_MOVED.
+ * 'error_code', which will be set to CLUSTER_REDIR_ASK or
+ * CLUSTER_REDIR_MOVED.
*
- * When the node is 'myself' 'error_code' is set to REDIS_CLUSTER_REDIR_NONE.
+ * When the node is 'myself' 'error_code' is set to CLUSTER_REDIR_NONE.
*
* If the command fails NULL is returned, and the reason of the failure is
* provided via 'error_code', which will be set to:
*
- * REDIS_CLUSTER_REDIR_CROSS_SLOT if the request contains multiple keys that
+ * CLUSTER_REDIR_CROSS_SLOT if the request contains multiple keys that
* don't belong to the same hash slot.
*
- * REDIS_CLUSTER_REDIR_UNSTABLE if the request contains mutliple keys
+ * CLUSTER_REDIR_UNSTABLE if the request contains mutliple keys
* belonging to the same slot, but the slot is not stable (in migration or
* importing state, likely because a resharding is in progress).
*
- * REDIS_CLUSTER_REDIR_DOWN_UNBOUND if the request addresses a slot which is
+ * CLUSTER_REDIR_DOWN_UNBOUND if the request addresses a slot which is
* not bound to any node. In this case the cluster global state should be
* already "down" but it is fragile to rely on the update of the global state,
* so we also handle it here. */
@@ -4788,7 +4788,7 @@ clusterNode *getNodeByQuery(client *c, struct redisCommand *cmd, robj **argv, in
int i, slot = 0, migrating_slot = 0, importing_slot = 0, missing_keys = 0;
/* Set error code optimistically for the base case. */
- if (error_code) *error_code = REDIS_CLUSTER_REDIR_NONE;
+ if (error_code) *error_code = CLUSTER_REDIR_NONE;
/* We handle all the cases as if they were EXEC commands, so we have
* a common code path for everything */
@@ -4840,7 +4840,7 @@ clusterNode *getNodeByQuery(client *c, struct redisCommand *cmd, robj **argv, in
if (n == NULL) {
getKeysFreeResult(keyindex);
if (error_code)
- *error_code = REDIS_CLUSTER_REDIR_DOWN_UNBOUND;
+ *error_code = CLUSTER_REDIR_DOWN_UNBOUND;
return NULL;
}
@@ -4864,7 +4864,7 @@ clusterNode *getNodeByQuery(client *c, struct redisCommand *cmd, robj **argv, in
/* Error: multiple keys from different slots. */
getKeysFreeResult(keyindex);
if (error_code)
- *error_code = REDIS_CLUSTER_REDIR_CROSS_SLOT;
+ *error_code = CLUSTER_REDIR_CROSS_SLOT;
return NULL;
} else {
/* Flag this request as one with multiple different
@@ -4897,7 +4897,7 @@ clusterNode *getNodeByQuery(client *c, struct redisCommand *cmd, robj **argv, in
/* If we don't have all the keys and we are migrating the slot, send
* an ASK redirection. */
if (migrating_slot && missing_keys) {
- if (error_code) *error_code = REDIS_CLUSTER_REDIR_ASK;
+ if (error_code) *error_code = CLUSTER_REDIR_ASK;
return server.cluster->migrating_slots_to[slot];
}
@@ -4909,7 +4909,7 @@ clusterNode *getNodeByQuery(client *c, struct redisCommand *cmd, robj **argv, in
(c->flags & CLIENT_ASKING || cmd->flags & CMD_ASKING))
{
if (multiple_keys && missing_keys) {
- if (error_code) *error_code = REDIS_CLUSTER_REDIR_UNSTABLE;
+ if (error_code) *error_code = CLUSTER_REDIR_UNSTABLE;
return NULL;
} else {
return myself;
@@ -4929,35 +4929,35 @@ clusterNode *getNodeByQuery(client *c, struct redisCommand *cmd, robj **argv, in
/* Base case: just return the right node. However if this node is not
* myself, set error_code to MOVED since we need to issue a rediretion. */
- if (n != myself && error_code) *error_code = REDIS_CLUSTER_REDIR_MOVED;
+ if (n != myself && error_code) *error_code = CLUSTER_REDIR_MOVED;
return n;
}
/* Send the client the right redirection code, according to error_code
- * that should be set to one of REDIS_CLUSTER_REDIR_* macros.
+ * that should be set to one of CLUSTER_REDIR_* macros.
*
- * If REDIS_CLUSTER_REDIR_ASK or REDIS_CLUSTER_REDIR_MOVED error codes
+ * If CLUSTER_REDIR_ASK or CLUSTER_REDIR_MOVED error codes
* are used, then the node 'n' should not be NULL, but should be the
* node we want to mention in the redirection. Moreover hashslot should
* be set to the hash slot that caused the redirection. */
void clusterRedirectClient(client *c, clusterNode *n, int hashslot, int error_code) {
- if (error_code == REDIS_CLUSTER_REDIR_CROSS_SLOT) {
+ if (error_code == CLUSTER_REDIR_CROSS_SLOT) {
addReplySds(c,sdsnew("-CROSSSLOT Keys in request don't hash to the same slot\r\n"));
- } else if (error_code == REDIS_CLUSTER_REDIR_UNSTABLE) {
+ } else if (error_code == CLUSTER_REDIR_UNSTABLE) {
/* The request spawns mutliple keys in the same slot,
* but the slot is not "stable" currently as there is
* a migration or import in progress. */
addReplySds(c,sdsnew("-TRYAGAIN Multiple keys request during rehashing of slot\r\n"));
- } else if (error_code == REDIS_CLUSTER_REDIR_DOWN_STATE) {
+ } else if (error_code == CLUSTER_REDIR_DOWN_STATE) {
addReplySds(c,sdsnew("-CLUSTERDOWN The cluster is down\r\n"));
- } else if (error_code == REDIS_CLUSTER_REDIR_DOWN_UNBOUND) {
+ } else if (error_code == CLUSTER_REDIR_DOWN_UNBOUND) {
addReplySds(c,sdsnew("-CLUSTERDOWN Hash slot not served\r\n"));
- } else if (error_code == REDIS_CLUSTER_REDIR_MOVED ||
- error_code == REDIS_CLUSTER_REDIR_ASK)
+ } else if (error_code == CLUSTER_REDIR_MOVED ||
+ error_code == CLUSTER_REDIR_ASK)
{
addReplySds(c,sdscatprintf(sdsempty(),
"-%s %d %s:%d\r\n",
- (error_code == REDIS_CLUSTER_REDIR_ASK) ? "ASK" : "MOVED",
+ (error_code == CLUSTER_REDIR_ASK) ? "ASK" : "MOVED",
hashslot,n->ip,n->port));
} else {
serverPanic("getNodeByQuery() unknown error.");
@@ -4981,8 +4981,8 @@ int clusterRedirectBlockedClientIfNeeded(client *c) {
dictIterator *di;
/* If the cluster is down, unblock the client with the right error. */
- if (server.cluster->state == REDIS_CLUSTER_FAIL) {
- clusterRedirectClient(c,NULL,0,REDIS_CLUSTER_REDIR_DOWN_STATE);
+ if (server.cluster->state == CLUSTER_FAIL) {
+ clusterRedirectClient(c,NULL,0,CLUSTER_REDIR_DOWN_STATE);
return 1;
}
@@ -5000,10 +5000,10 @@ int clusterRedirectBlockedClientIfNeeded(client *c) {
{
if (node == NULL) {
clusterRedirectClient(c,NULL,0,
- REDIS_CLUSTER_REDIR_DOWN_UNBOUND);
+ CLUSTER_REDIR_DOWN_UNBOUND);
} else {
clusterRedirectClient(c,node,slot,
- REDIS_CLUSTER_REDIR_MOVED);
+ CLUSTER_REDIR_MOVED);
}
return 1;
}
diff --git a/src/cluster.h b/src/cluster.h
index ef0bba805..d22d55e96 100644
--- a/src/cluster.h
+++ b/src/cluster.h
@@ -1,37 +1,37 @@
-#ifndef __REDIS_CLUSTER_H
-#define __REDIS_CLUSTER_H
+#ifndef __CLUSTER_H
+#define __CLUSTER_H
/*-----------------------------------------------------------------------------
* Redis cluster data structures, defines, exported API.
*----------------------------------------------------------------------------*/
-#define REDIS_CLUSTER_SLOTS 16384
-#define REDIS_CLUSTER_OK 0 /* Everything looks ok */
-#define REDIS_CLUSTER_FAIL 1 /* The cluster can't work */
-#define REDIS_CLUSTER_NAMELEN 40 /* sha1 hex length */
-#define REDIS_CLUSTER_PORT_INCR 10000 /* Cluster port = baseport + PORT_INCR */
+#define CLUSTER_SLOTS 16384
+#define CLUSTER_OK 0 /* Everything looks ok */
+#define CLUSTER_FAIL 1 /* The cluster can't work */
+#define CLUSTER_NAMELEN 40 /* sha1 hex length */
+#define CLUSTER_PORT_INCR 10000 /* Cluster port = baseport + PORT_INCR */
/* The following defines are amount of time, sometimes expressed as
* multiplicators of the node timeout value (when ending with MULT). */
-#define REDIS_CLUSTER_DEFAULT_NODE_TIMEOUT 15000
-#define REDIS_CLUSTER_DEFAULT_SLAVE_VALIDITY 10 /* Slave max data age factor. */
-#define REDIS_CLUSTER_DEFAULT_REQUIRE_FULL_COVERAGE 1
-#define REDIS_CLUSTER_FAIL_REPORT_VALIDITY_MULT 2 /* Fail report validity. */
-#define REDIS_CLUSTER_FAIL_UNDO_TIME_MULT 2 /* Undo fail if master is back. */
-#define REDIS_CLUSTER_FAIL_UNDO_TIME_ADD 10 /* Some additional time. */
-#define REDIS_CLUSTER_FAILOVER_DELAY 5 /* Seconds */
-#define REDIS_CLUSTER_DEFAULT_MIGRATION_BARRIER 1
-#define REDIS_CLUSTER_MF_TIMEOUT 5000 /* Milliseconds to do a manual failover. */
-#define REDIS_CLUSTER_MF_PAUSE_MULT 2 /* Master pause manual failover mult. */
+#define CLUSTER_DEFAULT_NODE_TIMEOUT 15000
+#define CLUSTER_DEFAULT_SLAVE_VALIDITY 10 /* Slave max data age factor. */
+#define CLUSTER_DEFAULT_REQUIRE_FULL_COVERAGE 1
+#define CLUSTER_FAIL_REPORT_VALIDITY_MULT 2 /* Fail report validity. */
+#define CLUSTER_FAIL_UNDO_TIME_MULT 2 /* Undo fail if master is back. */
+#define CLUSTER_FAIL_UNDO_TIME_ADD 10 /* Some additional time. */
+#define CLUSTER_FAILOVER_DELAY 5 /* Seconds */
+#define CLUSTER_DEFAULT_MIGRATION_BARRIER 1
+#define CLUSTER_MF_TIMEOUT 5000 /* Milliseconds to do a manual failover. */
+#define CLUSTER_MF_PAUSE_MULT 2 /* Master pause manual failover mult. */
/* Redirection errors returned by getNodeByQuery(). */
-#define REDIS_CLUSTER_REDIR_NONE 0 /* Node can serve the request. */
-#define REDIS_CLUSTER_REDIR_CROSS_SLOT 1 /* -CROSSSLOT request. */
-#define REDIS_CLUSTER_REDIR_UNSTABLE 2 /* -TRYAGAIN redirection required */
-#define REDIS_CLUSTER_REDIR_ASK 3 /* -ASK redirection required. */
-#define REDIS_CLUSTER_REDIR_MOVED 4 /* -MOVED redirection required. */
-#define REDIS_CLUSTER_REDIR_DOWN_STATE 5 /* -CLUSTERDOWN, global state. */
-#define REDIS_CLUSTER_REDIR_DOWN_UNBOUND 6 /* -CLUSTERDOWN, unbound slot. */
+#define CLUSTER_REDIR_NONE 0 /* Node can serve the request. */
+#define CLUSTER_REDIR_CROSS_SLOT 1 /* -CROSSSLOT request. */
+#define CLUSTER_REDIR_UNSTABLE 2 /* -TRYAGAIN redirection required */
+#define CLUSTER_REDIR_ASK 3 /* -ASK redirection required. */
+#define CLUSTER_REDIR_MOVED 4 /* -MOVED redirection required. */
+#define CLUSTER_REDIR_DOWN_STATE 5 /* -CLUSTERDOWN, global state. */
+#define CLUSTER_REDIR_DOWN_UNBOUND 6 /* -CLUSTERDOWN, unbound slot. */
struct clusterNode;
@@ -45,32 +45,32 @@ typedef struct clusterLink {
} clusterLink;
/* Cluster node flags and macros. */
-#define REDIS_NODE_MASTER 1 /* The node is a master */
-#define REDIS_NODE_SLAVE 2 /* The node is a slave */
-#define REDIS_NODE_PFAIL 4 /* Failure? Need acknowledge */
-#define REDIS_NODE_FAIL 8 /* The node is believed to be malfunctioning */
-#define REDIS_NODE_MYSELF 16 /* This node is myself */
-#define REDIS_NODE_HANDSHAKE 32 /* We have still to exchange the first ping */
-#define REDIS_NODE_NOADDR 64 /* We don't know the address of this node */
-#define REDIS_NODE_MEET 128 /* Send a MEET message to this node */
-#define REDIS_NODE_PROMOTED 256 /* Master was a slave promoted by failover */
-#define REDIS_NODE_NULL_NAME "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
+#define CLUSTER_NODE_MASTER 1 /* The node is a master */
+#define CLUSTER_NODE_SLAVE 2 /* The node is a slave */
+#define CLUSTER_NODE_PFAIL 4 /* Failure? Need acknowledge */
+#define CLUSTER_NODE_FAIL 8 /* The node is believed to be malfunctioning */
+#define CLUSTER_NODE_MYSELF 16 /* This node is myself */
+#define CLUSTER_NODE_HANDSHAKE 32 /* We have still to exchange the first ping */
+#define CLUSTER_NODE_NOADDR 64 /* We don't know the address of this node */
+#define CLUSTER_NODE_MEET 128 /* Send a MEET message to this node */
+#define CLUSTER_NODE_PROMOTED 256 /* Master was a slave promoted by failover */
+#define CLUSTER_NODE_NULL_NAME "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
-#define nodeIsMaster(n) ((n)->flags & REDIS_NODE_MASTER)
-#define nodeIsSlave(n) ((n)->flags & REDIS_NODE_SLAVE)
-#define nodeInHandshake(n) ((n)->flags & REDIS_NODE_HANDSHAKE)
-#define nodeHasAddr(n) (!((n)->flags & REDIS_NODE_NOADDR))
-#define nodeWithoutAddr(n) ((n)->flags & REDIS_NODE_NOADDR)
-#define nodeTimedOut(n) ((n)->flags & REDIS_NODE_PFAIL)
-#define nodeFailed(n) ((n)->flags & REDIS_NODE_FAIL)
+#define nodeIsMaster(n) ((n)->flags & CLUSTER_NODE_MASTER)
+#define nodeIsSlave(n) ((n)->flags & CLUSTER_NODE_SLAVE)
+#define nodeInHandshake(n) ((n)->flags & CLUSTER_NODE_HANDSHAKE)
+#define nodeHasAddr(n) (!((n)->flags & CLUSTER_NODE_NOADDR))
+#define nodeWithoutAddr(n) ((n)->flags & CLUSTER_NODE_NOADDR)
+#define nodeTimedOut(n) ((n)->flags & CLUSTER_NODE_PFAIL)
+#define nodeFailed(n) ((n)->flags & CLUSTER_NODE_FAIL)
/* Reasons why a slave is not able to failover. */
-#define REDIS_CLUSTER_CANT_FAILOVER_NONE 0
-#define REDIS_CLUSTER_CANT_FAILOVER_DATA_AGE 1
-#define REDIS_CLUSTER_CANT_FAILOVER_WAITING_DELAY 2
-#define REDIS_CLUSTER_CANT_FAILOVER_EXPIRED 3
-#define REDIS_CLUSTER_CANT_FAILOVER_WAITING_VOTES 4
-#define REDIS_CLUSTER_CANT_FAILOVER_RELOG_PERIOD (60*5) /* seconds. */
+#define CLUSTER_CANT_FAILOVER_NONE 0
+#define CLUSTER_CANT_FAILOVER_DATA_AGE 1
+#define CLUSTER_CANT_FAILOVER_WAITING_DELAY 2
+#define CLUSTER_CANT_FAILOVER_EXPIRED 3
+#define CLUSTER_CANT_FAILOVER_WAITING_VOTES 4
+#define CLUSTER_CANT_FAILOVER_RELOG_PERIOD (60*5) /* seconds. */
/* This structure represent elements of node->fail_reports. */
typedef struct clusterNodeFailReport {
@@ -80,10 +80,10 @@ typedef struct clusterNodeFailReport {
typedef struct clusterNode {
mstime_t ctime; /* Node object creation time. */
- char name[REDIS_CLUSTER_NAMELEN]; /* Node name, hex string, sha1-size */
- int flags; /* REDIS_NODE_... */
+ char name[CLUSTER_NAMELEN]; /* Node name, hex string, sha1-size */
+ int flags; /* CLUSTER_NODE_... */
uint64_t configEpoch; /* Last configEpoch observed for this node */
- unsigned char slots[REDIS_CLUSTER_SLOTS/8]; /* slots handled by this node */
+ unsigned char slots[CLUSTER_SLOTS/8]; /* slots handled by this node */
int numslots; /* Number of slots handled by this node */
int numslaves; /* Number of slave nodes, if this is a master */
struct clusterNode **slaves; /* pointers to slave nodes */
@@ -103,13 +103,13 @@ typedef struct clusterNode {
typedef struct clusterState {
clusterNode *myself; /* This node */
uint64_t currentEpoch;
- int state; /* REDIS_CLUSTER_OK, REDIS_CLUSTER_FAIL, ... */
+ int state; /* CLUSTER_OK, CLUSTER_FAIL, ... */
int size; /* Num of master nodes with at least one slot */
dict *nodes; /* Hash table of name -> clusterNode structures */
dict *nodes_black_list; /* Nodes we don't re-add for a few seconds. */
- clusterNode *migrating_slots_to[REDIS_CLUSTER_SLOTS];
- clusterNode *importing_slots_from[REDIS_CLUSTER_SLOTS];
- clusterNode *slots[REDIS_CLUSTER_SLOTS];
+ clusterNode *migrating_slots_to[CLUSTER_SLOTS];
+ clusterNode *importing_slots_from[CLUSTER_SLOTS];
+ clusterNode *slots[CLUSTER_SLOTS];
zskiplist *slots_to_keys;
/* The following fields are used to take the slave state on elections. */
mstime_t failover_auth_time; /* Time of previous or next election. */
@@ -162,7 +162,7 @@ typedef struct clusterState {
* to the first node, using the getsockname() function. Then we'll use this
* address for all the next messages. */
typedef struct {
- char nodename[REDIS_CLUSTER_NAMELEN];
+ char nodename[CLUSTER_NAMELEN];
uint32_t ping_sent;
uint32_t pong_received;
char ip[NET_IP_STR_LEN]; /* IP address last time it was seen */
@@ -173,7 +173,7 @@ typedef struct {
} clusterMsgDataGossip;
typedef struct {
- char nodename[REDIS_CLUSTER_NAMELEN];
+ char nodename[CLUSTER_NAMELEN];
} clusterMsgDataFail;
typedef struct {
@@ -187,8 +187,8 @@ typedef struct {
typedef struct {
uint64_t configEpoch; /* Config epoch of the specified instance. */
- char nodename[REDIS_CLUSTER_NAMELEN]; /* Name of the slots owner. */
- unsigned char slots[REDIS_CLUSTER_SLOTS/8]; /* Slots bitmap. */
+ char nodename[CLUSTER_NAMELEN]; /* Name of the slots owner. */
+ unsigned char slots[CLUSTER_SLOTS/8]; /* Slots bitmap. */
} clusterMsgDataUpdate;
union clusterMsgData {
@@ -229,9 +229,9 @@ typedef struct {
slave. */
uint64_t offset; /* Master replication offset if node is a master or
processed replication offset if node is a slave. */
- char sender[REDIS_CLUSTER_NAMELEN]; /* Name of the sender node */
- unsigned char myslots[REDIS_CLUSTER_SLOTS/8];
- char slaveof[REDIS_CLUSTER_NAMELEN];
+ char sender[CLUSTER_NAMELEN]; /* Name of the sender node */
+ unsigned char myslots[CLUSTER_SLOTS/8];
+ char slaveof[CLUSTER_NAMELEN];
char notused1[32]; /* 32 bytes reserved for future usage. */
uint16_t port; /* Sender TCP base port */
uint16_t flags; /* Sender node flags */
@@ -253,4 +253,4 @@ clusterNode *getNodeByQuery(client *c, struct redisCommand *cmd, robj **argv, in
int clusterRedirectBlockedClientIfNeeded(client *c);
void clusterRedirectClient(client *c, clusterNode *n, int hashslot, int error_code);
-#endif /* __REDIS_CLUSTER_H */
+#endif /* __CLUSTER_H */
diff --git a/src/config.c b/src/config.c
index 06cce489e..c77a09973 100644
--- a/src/config.c
+++ b/src/config.c
@@ -1798,10 +1798,10 @@ int rewriteConfig(char *path) {
rewriteConfigNumericalOption(state,"lua-time-limit",server.lua_time_limit,LUA_SCRIPT_TIME_LIMIT);
rewriteConfigYesNoOption(state,"cluster-enabled",server.cluster_enabled,0);
rewriteConfigStringOption(state,"cluster-config-file",server.cluster_configfile,CONFIG_DEFAULT_CLUSTER_CONFIG_FILE);
- rewriteConfigYesNoOption(state,"cluster-require-full-coverage",server.cluster_require_full_coverage,REDIS_CLUSTER_DEFAULT_REQUIRE_FULL_COVERAGE);
- rewriteConfigNumericalOption(state,"cluster-node-timeout",server.cluster_node_timeout,REDIS_CLUSTER_DEFAULT_NODE_TIMEOUT);
- rewriteConfigNumericalOption(state,"cluster-migration-barrier",server.cluster_migration_barrier,REDIS_CLUSTER_DEFAULT_MIGRATION_BARRIER);
- rewriteConfigNumericalOption(state,"cluster-slave-validity-factor",server.cluster_slave_validity_factor,REDIS_CLUSTER_DEFAULT_SLAVE_VALIDITY);
+ rewriteConfigYesNoOption(state,"cluster-require-full-coverage",server.cluster_require_full_coverage,CLUSTER_DEFAULT_REQUIRE_FULL_COVERAGE);
+ rewriteConfigNumericalOption(state,"cluster-node-timeout",server.cluster_node_timeout,CLUSTER_DEFAULT_NODE_TIMEOUT);
+ rewriteConfigNumericalOption(state,"cluster-migration-barrier",server.cluster_migration_barrier,CLUSTER_DEFAULT_MIGRATION_BARRIER);
+ rewriteConfigNumericalOption(state,"cluster-slave-validity-factor",server.cluster_slave_validity_factor,CLUSTER_DEFAULT_SLAVE_VALIDITY);
rewriteConfigNumericalOption(state,"slowlog-log-slower-than",server.slowlog_log_slower_than,CONFIG_DEFAULT_SLOWLOG_LOG_SLOWER_THAN);
rewriteConfigNumericalOption(state,"latency-monitor-threshold",server.latency_monitor_threshold,CONFIG_DEFAULT_LATENCY_MONITOR_THRESHOLD);
rewriteConfigNumericalOption(state,"slowlog-max-len",server.slowlog_max_len,CONFIG_DEFAULT_SLOWLOG_MAX_LEN);
diff --git a/src/server.c b/src/server.c
index 8416bf7e8..775855325 100644
--- a/src/server.c
+++ b/src/server.c
@@ -1486,10 +1486,10 @@ void initServerConfig(void) {
server.repl_min_slaves_to_write = CONFIG_DEFAULT_MIN_SLAVES_TO_WRITE;
server.repl_min_slaves_max_lag = CONFIG_DEFAULT_MIN_SLAVES_MAX_LAG;
server.cluster_enabled = 0;
- server.cluster_node_timeout = REDIS_CLUSTER_DEFAULT_NODE_TIMEOUT;
- server.cluster_migration_barrier = REDIS_CLUSTER_DEFAULT_MIGRATION_BARRIER;
- server.cluster_slave_validity_factor = REDIS_CLUSTER_DEFAULT_SLAVE_VALIDITY;
- server.cluster_require_full_coverage = REDIS_CLUSTER_DEFAULT_REQUIRE_FULL_COVERAGE;
+ server.cluster_node_timeout = CLUSTER_DEFAULT_NODE_TIMEOUT;
+ server.cluster_migration_barrier = CLUSTER_DEFAULT_MIGRATION_BARRIER;
+ server.cluster_slave_validity_factor = CLUSTER_DEFAULT_SLAVE_VALIDITY;
+ server.cluster_require_full_coverage = CLUSTER_DEFAULT_REQUIRE_FULL_COVERAGE;
server.cluster_configfile = zstrdup(CONFIG_DEFAULT_CLUSTER_CONFIG_FILE);
server.lua_caller = NULL;
server.lua_time_limit = LUA_SCRIPT_TIME_LIMIT;
@@ -2226,9 +2226,9 @@ int processCommand(client *c) {
{
int hashslot;
- if (server.cluster->state != REDIS_CLUSTER_OK) {
+ if (server.cluster->state != CLUSTER_OK) {
flagTransaction(c);
- clusterRedirectClient(c,NULL,0,REDIS_CLUSTER_REDIR_DOWN_STATE);
+ clusterRedirectClient(c,NULL,0,CLUSTER_REDIR_DOWN_STATE);
return C_OK;
} else {
int error_code;
@@ -2855,7 +2855,7 @@ sds genRedisInfoString(char *section) {
server.aof_rewrite_scheduled,
sdslen(server.aof_buf),
aofRewriteBufferSize(),
- bioPendingJobsOfType(REDIS_BIO_AOF_FSYNC),
+ bioPendingJobsOfType(BIO_AOF_FSYNC),
server.aof_delayed_fsync);
}
diff --git a/src/syncio.c b/src/syncio.c
index f9504390b..b2843d5fb 100644
--- a/src/syncio.c
+++ b/src/syncio.c
@@ -40,7 +40,7 @@
*
* All the functions take the timeout in milliseconds. */
-#define REDIS_SYNCIO_RESOLUTION 10 /* Resolution in milliseconds */
+#define SYNCIO__RESOLUTION 10 /* Resolution in milliseconds */
/* Write the specified payload to 'fd'. If writing the whole payload will be
* done within 'timeout' milliseconds the operation succeeds and 'size' is
@@ -52,8 +52,8 @@ ssize_t syncWrite(int fd, char *ptr, ssize_t size, long long timeout) {
long long remaining = timeout;
while(1) {
- long long wait = (remaining > REDIS_SYNCIO_RESOLUTION) ?
- remaining : REDIS_SYNCIO_RESOLUTION;
+ long long wait = (remaining > SYNCIO__RESOLUTION) ?
+ remaining : SYNCIO__RESOLUTION;
long long elapsed;
/* Optimistically try to write before checking if the file descriptor
@@ -89,8 +89,8 @@ ssize_t syncRead(int fd, char *ptr, ssize_t size, long long timeout) {
if (size == 0) return 0;
while(1) {
- long long wait = (remaining > REDIS_SYNCIO_RESOLUTION) ?
- remaining : REDIS_SYNCIO_RESOLUTION;
+ long long wait = (remaining > SYNCIO__RESOLUTION) ?
+ remaining : SYNCIO__RESOLUTION;
long long elapsed;
/* Optimistically try to read before checking if the file descriptor