Merge branch 'unstable' of github.com:/antirez/redis into unstable

This commit is contained in:
antirez 2019-08-31 14:41:28 +02:00
commit 2303ba1441
2 changed files with 3 additions and 4 deletions

View File

@ -5389,6 +5389,7 @@ void moduleRegisterCoreAPI(void) {
REGISTER_API(ReplySetArrayLength); REGISTER_API(ReplySetArrayLength);
REGISTER_API(ReplyWithString); REGISTER_API(ReplyWithString);
REGISTER_API(ReplyWithStringBuffer); REGISTER_API(ReplyWithStringBuffer);
REGISTER_API(ReplyWithCString);
REGISTER_API(ReplyWithNull); REGISTER_API(ReplyWithNull);
REGISTER_API(ReplyWithCallReply); REGISTER_API(ReplyWithCallReply);
REGISTER_API(ReplyWithDouble); REGISTER_API(ReplyWithDouble);

View File

@ -2468,7 +2468,6 @@ void flushSlavesOutputBuffers(void) {
listRewind(server.slaves,&li); listRewind(server.slaves,&li);
while((ln = listNext(&li))) { while((ln = listNext(&li))) {
client *slave = listNodeValue(ln); client *slave = listNodeValue(ln);
int events;
/* Note that the following will not flush output buffers of slaves /* Note that the following will not flush output buffers of slaves
* in STATE_ONLINE but having put_online_on_ack set to true: in this * in STATE_ONLINE but having put_online_on_ack set to true: in this
@ -2477,9 +2476,8 @@ void flushSlavesOutputBuffers(void) {
* This is what we want since slaves in this state should not receive * This is what we want since slaves in this state should not receive
* writes before the first ACK (to know the reason, grep for this * writes before the first ACK (to know the reason, grep for this
* flag in this file). */ * flag in this file). */
events = aeGetFileEvents(server.el,slave->fd); if (slave->replstate == SLAVE_STATE_ONLINE &&
if (events & AE_WRITABLE && !slave->repl_put_online_on_ack &&
slave->replstate == SLAVE_STATE_ONLINE &&
clientHasPendingReplies(slave)) clientHasPendingReplies(slave))
{ {
writeToClient(slave->fd,slave,0); writeToClient(slave->fd,slave,0);