HeightVoteSet type 변수 hvs에서 파라미터로 준 vote에 해당하는 값으로 VoteSet을 찾은 후,
vote 추가를 진행
dir : consensus/types/height_vote_set.go
// dir : consensus/types/height_vote_set.go
type HeightVoteSet struct {
chainID string
height int64
valSet *types.ValidatorSet
round int32
// round에 대한 Prevote, precommit voteset을 전부 각각 가지고 있
roundVoteSets map[int32]RoundVoteSet
peerCatchupRounds map[p2p.ID][]int32
}
// dir : consensus/types/height_vote_set.go
type RoundVoteSet struct {
Prevotes *types.VoteSet
Precommits *types.VoteSet
}
매개변수 vote 인스턴스의 round, type에 대응하는 voteSet을 가져온다.
voteSet := hvs.getVoteSet(vote.Round, vote.Type)
추가적인 검증을 시작
added, err = voteSet.Addvote(vote)
return added, err
consensus.addVote