diff --git a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/service/BftsmartNodeServer.java b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/service/BftsmartNodeServer.java index eff81047..4a484937 100644 --- a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/service/BftsmartNodeServer.java +++ b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/service/BftsmartNodeServer.java @@ -564,7 +564,7 @@ public class BftsmartNodeServer extends DefaultRecoverable implements NodeServer try { LOGGER.debug("Start replica...[ID=" + getId() + "]"); - this.replica = new ServiceReplica(tomConfig, this, this, (int)(this.stateHolder.lastCid - 1)); + this.replica = new ServiceReplica(tomConfig, this, this, (int)(this.stateHolder.lastCid)); this.topology = new BftsmartTopology(replica.getReplicaContext().getCurrentView()); initOutTopology(); status = Status.RUNNING; diff --git a/source/peer/src/main/java/com/jd/blockchain/peer/web/ManagementController.java b/source/peer/src/main/java/com/jd/blockchain/peer/web/ManagementController.java index 561a9664..12839af6 100644 --- a/source/peer/src/main/java/com/jd/blockchain/peer/web/ManagementController.java +++ b/source/peer/src/main/java/com/jd/blockchain/peer/web/ManagementController.java @@ -249,7 +249,7 @@ public class ManagementController implements LedgerBindingConfigAware, PeerManag // 注册快照状态 consensusStateManager.setupState(ledgerHash.toBase58(), new BlockStateSnapshot( - ledgerRepository.retrieveLatestBlockHeight(), ledgerHash), null); + ledgerRepository.retrieveLatestBlockHeight() - 1, ledgerHash), null); NodeServer server = provider.getServerFactory().setupServer(serverSettings, consensusMessageHandler, consensusStateManager); ledgerPeers.put(ledgerHash, server);