|
@@ -225,6 +225,9 @@ func startRaft(securityType int) {
|
|
|
raftServer.SetElectionTimeout(ELECTIONTIMTOUT)
|
|
raftServer.SetElectionTimeout(ELECTIONTIMTOUT)
|
|
|
raftServer.SetHeartbeatTimeout(HEARTBEATTIMEOUT)
|
|
raftServer.SetHeartbeatTimeout(HEARTBEATTIMEOUT)
|
|
|
|
|
|
|
|
|
|
+ // start to response to raft requests
|
|
|
|
|
+ go startRaftTransport(info.RaftPort, securityType)
|
|
|
|
|
+
|
|
|
if raftServer.IsLogEmpty() {
|
|
if raftServer.IsLogEmpty() {
|
|
|
|
|
|
|
|
// start as a leader in a new cluster
|
|
// start as a leader in a new cluster
|
|
@@ -249,7 +252,7 @@ func startRaft(securityType int) {
|
|
|
|
|
|
|
|
// start as a follower in a existing cluster
|
|
// start as a follower in a existing cluster
|
|
|
} else {
|
|
} else {
|
|
|
- raftServer.StartFollower()
|
|
|
|
|
|
|
+ raftServer.StartFollower(false)
|
|
|
|
|
|
|
|
for _, machine := range cluster {
|
|
for _, machine := range cluster {
|
|
|
if len(machine) == 0 {
|
|
if len(machine) == 0 {
|
|
@@ -270,7 +273,7 @@ func startRaft(securityType int) {
|
|
|
|
|
|
|
|
} else {
|
|
} else {
|
|
|
// rejoin the previous cluster
|
|
// rejoin the previous cluster
|
|
|
- raftServer.StartFollower()
|
|
|
|
|
|
|
+ raftServer.StartFollower(true)
|
|
|
debug("%s restart as a follower", raftServer.Name())
|
|
debug("%s restart as a follower", raftServer.Name())
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -279,9 +282,6 @@ func startRaft(securityType int) {
|
|
|
go raftServer.Snapshot()
|
|
go raftServer.Snapshot()
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // start to response to raft requests
|
|
|
|
|
- go startRaftTransport(info.RaftPort, securityType)
|
|
|
|
|
-
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// Create transporter using by raft server
|
|
// Create transporter using by raft server
|