mirror of
https://github.com/fluencelabs/redis
synced 2025-04-12 04:06:04 +00:00
RESP3: Use new deferred len API in replication.c.
This commit is contained in:
parent
073293693e
commit
07bce54093
@ -263,7 +263,7 @@ void replicationFeedSlaves(list *slaves, int dictid, robj **argv, int argc) {
|
|||||||
* or are already in sync with the master. */
|
* or are already in sync with the master. */
|
||||||
|
|
||||||
/* Add the multi bulk length. */
|
/* Add the multi bulk length. */
|
||||||
addReplyMultiBulkLen(slave,argc);
|
addReplyArrayLen(slave,argc);
|
||||||
|
|
||||||
/* Finally any additional argument that was not stored inside the
|
/* Finally any additional argument that was not stored inside the
|
||||||
* static buffer if any (from j to argc). */
|
* static buffer if any (from j to argc). */
|
||||||
@ -2062,10 +2062,10 @@ void roleCommand(client *c) {
|
|||||||
void *mbcount;
|
void *mbcount;
|
||||||
int slaves = 0;
|
int slaves = 0;
|
||||||
|
|
||||||
addReplyMultiBulkLen(c,3);
|
addReplyArrayLen(c,3);
|
||||||
addReplyBulkCBuffer(c,"master",6);
|
addReplyBulkCBuffer(c,"master",6);
|
||||||
addReplyLongLong(c,server.master_repl_offset);
|
addReplyLongLong(c,server.master_repl_offset);
|
||||||
mbcount = addDeferredMultiBulkLength(c);
|
mbcount = addReplyDeferredLen(c);
|
||||||
listRewind(server.slaves,&li);
|
listRewind(server.slaves,&li);
|
||||||
while((ln = listNext(&li))) {
|
while((ln = listNext(&li))) {
|
||||||
client *slave = ln->value;
|
client *slave = ln->value;
|
||||||
@ -2077,17 +2077,17 @@ void roleCommand(client *c) {
|
|||||||
slaveip = ip;
|
slaveip = ip;
|
||||||
}
|
}
|
||||||
if (slave->replstate != SLAVE_STATE_ONLINE) continue;
|
if (slave->replstate != SLAVE_STATE_ONLINE) continue;
|
||||||
addReplyMultiBulkLen(c,3);
|
addReplyArrayLen(c,3);
|
||||||
addReplyBulkCString(c,slaveip);
|
addReplyBulkCString(c,slaveip);
|
||||||
addReplyBulkLongLong(c,slave->slave_listening_port);
|
addReplyBulkLongLong(c,slave->slave_listening_port);
|
||||||
addReplyBulkLongLong(c,slave->repl_ack_off);
|
addReplyBulkLongLong(c,slave->repl_ack_off);
|
||||||
slaves++;
|
slaves++;
|
||||||
}
|
}
|
||||||
setDeferredMultiBulkLength(c,mbcount,slaves);
|
setDeferredArrayLen(c,mbcount,slaves);
|
||||||
} else {
|
} else {
|
||||||
char *slavestate = NULL;
|
char *slavestate = NULL;
|
||||||
|
|
||||||
addReplyMultiBulkLen(c,5);
|
addReplyArrayLen(c,5);
|
||||||
addReplyBulkCBuffer(c,"slave",5);
|
addReplyBulkCBuffer(c,"slave",5);
|
||||||
addReplyBulkCString(c,server.masterhost);
|
addReplyBulkCString(c,server.masterhost);
|
||||||
addReplyLongLong(c,server.masterport);
|
addReplyLongLong(c,server.masterport);
|
||||||
@ -2116,7 +2116,7 @@ void replicationSendAck(void) {
|
|||||||
|
|
||||||
if (c != NULL) {
|
if (c != NULL) {
|
||||||
c->flags |= CLIENT_MASTER_FORCE_REPLY;
|
c->flags |= CLIENT_MASTER_FORCE_REPLY;
|
||||||
addReplyMultiBulkLen(c,3);
|
addReplyArrayLen(c,3);
|
||||||
addReplyBulkCString(c,"REPLCONF");
|
addReplyBulkCString(c,"REPLCONF");
|
||||||
addReplyBulkCString(c,"ACK");
|
addReplyBulkCString(c,"ACK");
|
||||||
addReplyBulkLongLong(c,c->reploff);
|
addReplyBulkLongLong(c,c->reploff);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user