From d80b3c96714d939bc91fca0b970fa218ba523fd1 Mon Sep 17 00:00:00 2001 From: blindchaser Date: Mon, 28 Oct 2024 14:46:32 -0400 Subject: [PATCH] rever block sync logic --- internal/blocksync/pool.go | 6 ++++++ internal/state/execution.go | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/internal/blocksync/pool.go b/internal/blocksync/pool.go index 0a1f5b1eb..d43e506a4 100644 --- a/internal/blocksync/pool.go +++ b/internal/blocksync/pool.go @@ -358,6 +358,12 @@ func (pool *BlockPool) SetPeerRange(peerID types.NodeID, base int64, height int6 pool.mtx.Lock() defer pool.mtx.Unlock() + blockSyncPeers := pool.peerManager.GetBlockSyncPeers() + if len(blockSyncPeers) > 0 && !blockSyncPeers[peerID] { + pool.logger.Info(fmt.Sprintf("Skip adding peer %s for blocksync, num of blocksync peers: %d, num of pool peers: %d", peerID, len(blockSyncPeers), len(pool.peers))) + return + } + peer := pool.peers[peerID] if peer != nil { peer.base = base diff --git a/internal/state/execution.go b/internal/state/execution.go index bebac2640..3fa356008 100644 --- a/internal/state/execution.go +++ b/internal/state/execution.go @@ -332,6 +332,7 @@ func (blockExec *BlockExecutor) ApplyBlock( defer commitSpan.End() } // Lock mempool, commit app state, update mempoool. + commitStart := time.Now() retainHeight, err := blockExec.Commit(ctx, state, block, fBlockRes.TxResults) if err != nil { return state, fmt.Errorf("commit failed for application: %w", err) @@ -339,6 +340,9 @@ func (blockExec *BlockExecutor) ApplyBlock( if commitSpan != nil { commitSpan.End() } + if time.Since(commitStart) > 1000*time.Millisecond { + blockExec.logger.Info("Commit in blockExec took %s for height %d\n", time.Since(commitStart), block.Height) + } // Update evpool with the latest state. blockExec.evpool.Update(ctx, state, block.Evidence)