Skip to content

Commit a893edd

Browse files
committed
Fixed tests.
1 parent 234e9a2 commit a893edd

File tree

2 files changed

+22
-18
lines changed

2 files changed

+22
-18
lines changed

consensus/consensus_v2.go

+15-1
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,21 @@ func (consensus *Consensus) HandleMessageUpdate(ctx context.Context, peer libp2p
138138
return nil
139139
}
140140

141-
func (consensus *Consensus) finalCommit(isLeader bool) {
141+
func (consensus *Consensus) finalCommit(waitTime time.Duration, viewID uint64, isLeader bool) {
142+
consensus.getLogger().Info().Str("waitTime", waitTime.String()).
143+
Msg("[OnCommit] Starting Grace Period")
144+
time.Sleep(waitTime)
145+
utils.Logger().Info().Msg("[OnCommit] Commit Grace Period Ended")
146+
147+
consensus.mutex.Lock()
148+
defer consensus.mutex.Unlock()
149+
consensus.transitions.finalCommit = false
150+
if viewID == consensus.getCurBlockViewID() {
151+
consensus._finalCommit(isLeader)
152+
}
153+
}
154+
155+
func (consensus *Consensus) _finalCommit(isLeader bool) {
142156
numCommits := consensus.decider.SignersCount(quorum.Commit)
143157

144158
consensus.getLogger().Info().

consensus/leader.go

+7-17
Original file line numberDiff line numberDiff line change
@@ -331,23 +331,13 @@ func (consensus *Consensus) onCommit(recvMsg *FBFTMessage) {
331331
consensus.preCommitAndPropose(blockObj)
332332
}
333333

334-
go func(viewID uint64, isLeader bool) {
335-
waitTime := 1000 * time.Millisecond
336-
maxWaitTime := time.Until(consensus.NextBlockDue) - 200*time.Millisecond
337-
if maxWaitTime > waitTime {
338-
waitTime = maxWaitTime
339-
}
340-
consensus.getLogger().Info().Str("waitTime", waitTime.String()).
341-
Msg("[OnCommit] Starting Grace Period")
342-
time.Sleep(waitTime)
343-
logger.Info().Msg("[OnCommit] Commit Grace Period Ended")
344-
345-
consensus.mutex.Lock()
346-
defer consensus.mutex.Unlock()
347-
if viewID == consensus.getCurBlockViewID() {
348-
consensus.finalCommit(isLeader)
349-
}
350-
}(viewID, consensus.isLeader())
334+
consensus.transitions.finalCommit = true
335+
waitTime := 1000 * time.Millisecond
336+
maxWaitTime := time.Until(consensus.NextBlockDue) - 200*time.Millisecond
337+
if maxWaitTime > waitTime {
338+
waitTime = maxWaitTime
339+
}
340+
go consensus.finalCommit(waitTime, viewID, consensus.isLeader())
351341

352342
consensus.msgSender.StopRetry(msg_pb.MessageType_PREPARED)
353343
}

0 commit comments

Comments
 (0)