Skip to content

Commit 91ef92d

Browse files
committed
SERVER-13645 cleanup heartbeat_info
1 parent f9be10e commit 91ef92d

File tree

9 files changed

+42
-34
lines changed

9 files changed

+42
-34
lines changed

src/mongo/db/repl/heartbeat.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,6 @@ namespace mongo {
5454
MONGO_FP_DECLARE(rsDelayHeartbeatResponse);
5555
MONGO_FP_DECLARE(rsStopHeartbeatRequest);
5656

57-
unsigned int HeartbeatInfo::numPings;
58-
5957
/* { replSetHeartbeat : <setname> } */
6058
class CmdReplSetHeartbeat : public ReplSetCommand {
6159
public:

src/mongo/db/repl/heartbeat_info.cpp

Lines changed: 30 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,36 @@
3434

3535
namespace mongo {
3636

37-
long long HeartbeatInfo::timeDown() const {
38-
if( up() ) return 0;
39-
if( downSince == 0 )
40-
return 0; // still waiting on first heartbeat
41-
return jsTime() - downSince;
37+
unsigned int HeartbeatInfo::numPings;
38+
39+
HeartbeatInfo::HeartbeatInfo() :
40+
hbstate(MemberState::RS_UNKNOWN),
41+
health(-1.0),
42+
upSince(0),
43+
downSince(0),
44+
lastHeartbeat(0),
45+
lastHeartbeatRecv(0),
46+
skew(INT_MIN),
47+
authIssue(false),
48+
ping(0),
49+
_id(0xffffffff) {
50+
}
51+
52+
HeartbeatInfo::HeartbeatInfo(unsigned id) :
53+
hbstate(MemberState::RS_UNKNOWN),
54+
health(-1.0),
55+
upSince(0),
56+
downSince(0),
57+
lastHeartbeat(0),
58+
lastHeartbeatRecv(0),
59+
skew(INT_MIN),
60+
authIssue(false),
61+
ping(0),
62+
_id(id) {
63+
}
64+
65+
bool HeartbeatInfo::changed(const HeartbeatInfo& old) const {
66+
return health != old.health || hbstate != old.hbstate;
4267
}
4368

4469
void HeartbeatInfo::updateFromLastPoll(const HeartbeatInfo& newInfo) {

src/mongo/db/repl/heartbeat_info.h

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,8 @@ namespace mongo {
3939
/* this is supposed to be just basic information on a member,
4040
and copy constructable. */
4141
class HeartbeatInfo {
42-
unsigned _id;
4342
public:
44-
HeartbeatInfo() : _id(0xffffffff), hbstate(MemberState::RS_UNKNOWN), health(-1.0),
45-
downSince(0), lastHeartbeatRecv(0), skew(INT_MIN), authIssue(false), ping(0) { }
43+
HeartbeatInfo();
4644
HeartbeatInfo(unsigned id);
4745
unsigned id() const { return _id; }
4846
MemberState hbstate;
@@ -71,8 +69,6 @@ namespace mongo {
7169
*/
7270
bool maybeUp() const { return health != 0; }
7371

74-
long long timeDown() const; // ms
75-
7672
/* true if changed in a way of interest to the repl set manager. */
7773
bool changed(const HeartbeatInfo& old) const;
7874

@@ -81,22 +77,8 @@ namespace mongo {
8177
* the last replSetHeartbeat.
8278
*/
8379
void updateFromLastPoll(const HeartbeatInfo& newInfo);
80+
private:
81+
unsigned _id;
8482
};
8583

86-
inline HeartbeatInfo::HeartbeatInfo(unsigned id) :
87-
_id(id),
88-
lastHeartbeatRecv(0),
89-
authIssue(false),
90-
ping(0) {
91-
hbstate = MemberState::RS_UNKNOWN;
92-
health = -1.0;
93-
downSince = 0;
94-
lastHeartbeat = upSince = 0;
95-
skew = INT_MIN;
96-
}
97-
98-
inline bool HeartbeatInfo::changed(const HeartbeatInfo& old) const {
99-
return health != old.health || hbstate != old.hbstate;
100-
}
101-
10284
} // namespace mongo

src/mongo/db/repl/manager.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,11 @@
2828

2929
#pragma once
3030

31-
#include "mongo/db/repl/member.h"
31+
#include "mongo/db/jsobj.h"
3232
#include "mongo/db/repl/server.h"
3333

3434
namespace mongo {
35+
class Member;
3536
class ReplSetImpl;
3637

3738
class Manager : public task::Server {

src/mongo/db/repl/repl_set_impl.h

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,18 +28,22 @@
2828

2929
#pragma once
3030

31+
#include "mongo/db/repl/heartbeat_info.h"
32+
#include "mongo/db/repl/member.h"
3133
#include "mongo/db/repl/rs_base.h"
32-
#include "mongo/db/repl/repl_set_health_poll_task.h"
34+
#include "mongo/db/repl/rs_config.h"
3335
#include "mongo/db/repl/state_box.h"
3436
#include "mongo/db/repl/sync_source_feedback.h"
3537
#include "mongo/db/repl/sync_tail.h"
3638
#include "mongo/util/concurrency/thread_pool.h"
39+
#include "mongo/util/concurrency/value.h"
3740

3841
namespace mongo {
3942

4043
class Cloner;
4144
struct FixUpInfo;
4245
class ReplSetCmdline;
46+
class ReplSetHealthPollTask;
4347

4448
class ReplicationStartSynchronizer {
4549
public:

src/mongo/db/repl/rs.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,7 @@
3535
#include "mongo/db/commands.h"
3636
#include "mongo/db/index/index_descriptor.h"
3737
#include "mongo/db/repl/consensus.h"
38-
#include "mongo/db/repl/heartbeat_info.h"
3938
#include "mongo/db/repl/manager.h"
40-
#include "mongo/db/repl/member.h"
4139
#include "mongo/db/repl/oplogreader.h"
4240
#include "mongo/db/repl/repl_set.h"
4341
#include "mongo/db/repl/repl_set_impl.h"

src/mongo/db/repl/server.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ namespace mongo {
6464
virtual bool initClient() { return true; }
6565
virtual string name() const { return _name; }
6666
void doWork();
67-
deque<lam> d;
67+
std::deque<lam> d;
6868
mongo::mutex m;
6969
boost::condition c;
7070
string _name;

src/mongo/db/repl/state_box.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
#pragma once
3030

3131
#include "mongo/db/repl/health.h"
32+
#include "mongo/db/repl/member_state.h"
3233
#include "mongo/util/concurrency/rwlock.h"
3334

3435
namespace mongo {

src/mongo/shell/dbshell.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
#include "mongo/client/clientOnly-private.h"
4141
#include "mongo/client/dbclientinterface.h"
4242
#include "mongo/client/sasl_client_authenticate.h"
43-
#include "mongo/db/repl/heartbeat_info.h"
4443
#include "mongo/logger/console_appender.h"
4544
#include "mongo/logger/logger.h"
4645
#include "mongo/logger/message_event_utf8_encoder.h"

0 commit comments

Comments
 (0)