From 287f1b2ba0b2bf7fcc661e3663b4a56a3cba5372 Mon Sep 17 00:00:00 2001 From: jangko Date: Wed, 28 Apr 2021 22:05:15 +0700 Subject: [PATCH] fixes `importRlpBlock` algorithm it will skip blocks with blockNumber <= than current head blockNumber --- nimbus/conf_utils.nim | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/nimbus/conf_utils.nim b/nimbus/conf_utils.nim index 9f6dada98..8a001d9d1 100644 --- a/nimbus/conf_utils.nim +++ b/nimbus/conf_utils.nim @@ -33,10 +33,14 @@ proc importRlpBlock*(importFile: string, chainDB: BasechainDB) = # TODO: probably we need to put it in one struct var headers: seq[BlockHeader] var bodies : seq[BlockBody] + let head = chainDB.getCanonicalHead() while true: - headers.add rlp.read(EthHeader).header - bodies.add rlp.readRecordType(BlockBody, false) + let header = rlp.read(EthHeader).header + let body = rlp.readRecordType(BlockBody, false) + if header.blockNumber > head.blockNumber: + headers.add header + bodies.add body if not rlp.hasData: break