add db beginTransaction and dispose to hunter
This commit is contained in:
parent
3619090cb4
commit
c3190f0c7a
|
@ -50,6 +50,9 @@ proc prepareBlockEnv(parent: BlockHeader, thisBlock: Block): TrieDatabaseRef =
|
||||||
let codeStr = request("eth_getCode", %[%address.prefixHex, parentNumber])
|
let codeStr = request("eth_getCode", %[%address.prefixHex, parentNumber])
|
||||||
let code = hexToSeqByte(codeStr.getStr).toRange
|
let code = hexToSeqByte(codeStr.getStr).toRange
|
||||||
accountDB.setCode(address, code)
|
accountDB.setCode(address, code)
|
||||||
|
|
||||||
|
accountDB.setAccount(address, acc)
|
||||||
|
|
||||||
result = memoryDB
|
result = memoryDB
|
||||||
|
|
||||||
proc huntProblematicBlock(blockNumber: Uint256): ValidationResult =
|
proc huntProblematicBlock(blockNumber: Uint256): ValidationResult =
|
||||||
|
@ -66,10 +69,12 @@ proc huntProblematicBlock(blockNumber: Uint256): ValidationResult =
|
||||||
chainDB.setHead(parentBlock.header, true)
|
chainDB.setHead(parentBlock.header, true)
|
||||||
|
|
||||||
let
|
let
|
||||||
|
transaction = memoryDB.beginTransaction()
|
||||||
vmState = newBaseVMState(parentBlock.header, chainDB)
|
vmState = newBaseVMState(parentBlock.header, chainDB)
|
||||||
validationResult = processBlock(chainDB, parentBlock.header, thisBlock.header, thisBlock.body, vmState)
|
validationResult = processBlock(chainDB, parentBlock.header, thisBlock.header, thisBlock.body, vmState)
|
||||||
|
|
||||||
if validationResult != ValidationResult.OK:
|
if validationResult != ValidationResult.OK:
|
||||||
|
transaction.dispose()
|
||||||
dumpDebuggingMetaData(chainDB, thisBlock.header, thisBlock.body, vmState.receipts, false)
|
dumpDebuggingMetaData(chainDB, thisBlock.header, thisBlock.body, vmState.receipts, false)
|
||||||
|
|
||||||
result = validationResult
|
result = validationResult
|
||||||
|
|
Loading…
Reference in New Issue