|
@@ -123,17 +123,11 @@ func (ss *ServerStats) SendAppendReq(reqSize int) {
|
|
|
ss.Lock()
|
|
ss.Lock()
|
|
|
defer ss.Unlock()
|
|
defer ss.Unlock()
|
|
|
|
|
|
|
|
- now := time.Now()
|
|
|
|
|
-
|
|
|
|
|
- if ss.State != raft.StateLeader {
|
|
|
|
|
- ss.State = raft.StateLeader
|
|
|
|
|
- ss.LeaderInfo.Name = ss.ID
|
|
|
|
|
- ss.LeaderInfo.StartTime = now
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ ss.becomeLeader()
|
|
|
|
|
|
|
|
ss.sendRateQueue.Insert(
|
|
ss.sendRateQueue.Insert(
|
|
|
&RequestStats{
|
|
&RequestStats{
|
|
|
- SendingTime: now,
|
|
|
|
|
|
|
+ SendingTime: time.Now(),
|
|
|
Size: reqSize,
|
|
Size: reqSize,
|
|
|
},
|
|
},
|
|
|
)
|
|
)
|
|
@@ -144,7 +138,10 @@ func (ss *ServerStats) SendAppendReq(reqSize int) {
|
|
|
func (ss *ServerStats) BecomeLeader() {
|
|
func (ss *ServerStats) BecomeLeader() {
|
|
|
ss.Lock()
|
|
ss.Lock()
|
|
|
defer ss.Unlock()
|
|
defer ss.Unlock()
|
|
|
|
|
+ ss.becomeLeader()
|
|
|
|
|
+}
|
|
|
|
|
|
|
|
|
|
+func (ss *ServerStats) becomeLeader() {
|
|
|
if ss.State != raft.StateLeader {
|
|
if ss.State != raft.StateLeader {
|
|
|
ss.State = raft.StateLeader
|
|
ss.State = raft.StateLeader
|
|
|
ss.LeaderInfo.Name = ss.ID
|
|
ss.LeaderInfo.Name = ss.ID
|