diff options
author | Tor Brede Vekterli <vekterli@oath.com> | 2018-03-06 13:04:56 +0000 |
---|---|---|
committer | Tor Brede Vekterli <vekterli@oath.com> | 2018-03-06 14:31:04 +0000 |
commit | 01a5247ef6fb29b6639f7c509c9ebe2fca92c517 (patch) | |
tree | b3e04308686691bca68425f5fb730ea53f8f41ef | |
parent | 1cf9712a06eac0606c9f0b7509af07e838b4e2c5 (diff) |
Must explicitly handle setdistributionstates method on reply processing
Otherwise ends up sending unexpected return values to the cluster controller,
which silently fails during response processing. End result is continuous
transmission of cluster states, as the controller does not understand that
the state has been ACKed by the node.
-rw-r--r-- | storage/src/vespa/storage/storageserver/communicationmanager.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/storage/src/vespa/storage/storageserver/communicationmanager.cpp b/storage/src/vespa/storage/storageserver/communicationmanager.cpp index 5b927d36bb5..b9721635c24 100644 --- a/storage/src/vespa/storage/storageserver/communicationmanager.cpp +++ b/storage/src/vespa/storage/storageserver/communicationmanager.cpp @@ -635,7 +635,7 @@ CommunicationManager::sendDirectRPCReply( serializeNodeState(gns, ns, true, true, false); request.addReturnString(ns.str().c_str()); LOGBP(debug, "Sending getnodestate2 reply with no host info."); - } else if (requestName == "setsystemstate2") { + } else if (requestName == "setsystemstate2" || requestName == "setdistributionstates") { // No data to return } else { request.addReturnInt(reply->getResult().getResult()); |