aboutsummaryrefslogtreecommitdiffstats
path: root/core/syncer
diff options
context:
space:
mode:
authorJimmy Hu <jimmy.hu@dexon.org>2019-05-03 17:59:47 +0800
committerGitHub <noreply@github.com>2019-05-03 17:59:47 +0800
commit889c61c4ea9a38f627a93f7cea617d5073a26f5f (patch)
tree4a93a5c442262c9bbe0eae9cc3067202e852c6d4 /core/syncer
parentbbd5a1546ae3ee97034a7df820779d866e932346 (diff)
downloaddexon-consensus-889c61c4ea9a38f627a93f7cea617d5073a26f5f.tar
dexon-consensus-889c61c4ea9a38f627a93f7cea617d5073a26f5f.tar.gz
dexon-consensus-889c61c4ea9a38f627a93f7cea617d5073a26f5f.tar.bz2
dexon-consensus-889c61c4ea9a38f627a93f7cea617d5073a26f5f.tar.lz
dexon-consensus-889c61c4ea9a38f627a93f7cea617d5073a26f5f.tar.xz
dexon-consensus-889c61c4ea9a38f627a93f7cea617d5073a26f5f.tar.zst
dexon-consensus-889c61c4ea9a38f627a93f7cea617d5073a26f5f.zip
core: optimize syncer handling agreement result (#581)
Diffstat (limited to 'core/syncer')
-rw-r--r--core/syncer/agreement.go14
1 files changed, 2 insertions, 12 deletions
diff --git a/core/syncer/agreement.go b/core/syncer/agreement.go
index b414e11..d39c246 100644
--- a/core/syncer/agreement.go
+++ b/core/syncer/agreement.go
@@ -176,12 +176,7 @@ func (a *agreement) processAgreementResult(r *types.AgreementResult) {
a.logger.Trace("Agreement result cached", "result", r)
return
}
- notarySet, err := a.cache.GetNotarySet(r.Position.Round)
- if err != nil {
- a.logger.Error("unable to get notary set", "result", r, "error", err)
- return
- }
- if err := core.VerifyAgreementResult(r, notarySet); err != nil {
+ if err := core.VerifyAgreementResult(r, a.cache); err != nil {
a.logger.Error("Agreement result verification failed",
"result", r,
"error", err)
@@ -257,18 +252,13 @@ func (a *agreement) processNewCRS(round uint64) {
a.latestCRSRound = round
// Verify all pending results.
for r := prevRound; r <= a.latestCRSRound; r++ {
- notarySet, err := a.cache.GetNotarySet(r)
- if err != nil {
- a.logger.Error("Unable to get notary set", "round", r, "error", err)
- continue
- }
pendingsForRound := a.pendingAgrs[r]
if pendingsForRound == nil {
continue
}
delete(a.pendingAgrs, r)
for _, res := range pendingsForRound {
- if err := core.VerifyAgreementResult(res, notarySet); err != nil {
+ if err := core.VerifyAgreementResult(res, a.cache); err != nil {
a.logger.Error("Invalid agreement result",
"result", res,
"error", err)