diff options
author | matt dannenberg <matt.dannenberg@10gen.com> | 2015-09-01 10:00:24 -0400 |
---|---|---|
committer | matt dannenberg <matt.dannenberg@10gen.com> | 2015-09-01 11:48:10 -0400 |
commit | 385864b5974ef5c50060691899065917ae58d7c0 (patch) | |
tree | 84c0ef9461de1bad1db8f2c8d9d725b760051bd1 /src/mongo/db/repl/vote_requester.cpp | |
parent | 141f88aac386baaa510bbe99a1b85bde7bfb102f (diff) | |
download | mongo-385864b5974ef5c50060691899065917ae58d7c0.tar.gz |
SERVER-20249 mark nodes that voted as up before stepping up as PRIMARY
Diffstat (limited to 'src/mongo/db/repl/vote_requester.cpp')
-rw-r--r-- | src/mongo/db/repl/vote_requester.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/mongo/db/repl/vote_requester.cpp b/src/mongo/db/repl/vote_requester.cpp index 5f0683d0aee..7bef97a148f 100644 --- a/src/mongo/db/repl/vote_requester.cpp +++ b/src/mongo/db/repl/vote_requester.cpp @@ -99,6 +99,7 @@ void VoteRequester::Algorithm::processResponse(const RemoteCommandRequest& reque log() << "VoteRequester: Got failed response from " << request.target << ": " << response.getStatus(); } else { + _responders.insert(request.target); ReplSetRequestVotesResponse voteResponse; voteResponse.initialize(response.getValue().data); if (voteResponse.getVoteGranted()) { @@ -129,6 +130,10 @@ VoteRequester::VoteRequestResult VoteRequester::Algorithm::getResult() const { } } +unordered_set<HostAndPort> VoteRequester::Algorithm::getResponders() const { + return _responders; +} + VoteRequester::VoteRequester() : _isCanceled(false) {} VoteRequester::~VoteRequester() {} @@ -154,5 +159,9 @@ VoteRequester::VoteRequestResult VoteRequester::getResult() const { return _algorithm->getResult(); } +unordered_set<HostAndPort> VoteRequester::getResponders() const { + return _algorithm->getResponders(); +} + } // namespace repl } // namespace mongo |