diff --git a/framework/src/main/java/org/tron/core/net/service/sync/SyncService.java b/framework/src/main/java/org/tron/core/net/service/sync/SyncService.java index 5b8ea730e99..68f113afd9f 100644 --- a/framework/src/main/java/org/tron/core/net/service/sync/SyncService.java +++ b/framework/src/main/java/org/tron/core/net/service/sync/SyncService.java @@ -292,7 +292,7 @@ private void processSyncBlock(BlockCapsule block) { if (peer.getSyncBlockInProcess().remove(blockId)) { if (flag) { peer.setBlockBothHave(blockId); - if (peer.getSyncBlockToFetch().isEmpty()) { + if (peer.getSyncBlockToFetch().isEmpty() && !peer.isFetchAble()) { syncNext(peer); } } else {