1
0

verifier: better handle reorgs (and storage upgrade)

This commit is contained in:
SomberNight
2018-07-31 15:51:05 +02:00
parent 861640949e
commit 41e088693d
5 changed files with 52 additions and 27 deletions

View File

@@ -26,6 +26,7 @@ from typing import Sequence, Optional
from .util import ThreadJob, bh2u
from .bitcoin import Hash, hash_decode, hash_encode
from .transaction import Transaction
from .blockchain import hash_header
class MerkleVerificationFailure(Exception): pass
@@ -108,7 +109,8 @@ class SPV(ThreadJob):
self.requested_merkle.remove(tx_hash)
except KeyError: pass
self.print_error("verified %s" % tx_hash)
self.wallet.add_verified_tx(tx_hash, (tx_height, header.get('timestamp'), pos))
header_hash = hash_header(header)
self.wallet.add_verified_tx(tx_hash, (tx_height, header.get('timestamp'), pos, header_hash))
if self.is_up_to_date() and self.wallet.is_up_to_date():
self.wallet.save_verified_tx(write=True)