contrib/linearize: Guarantee that output is generated in-order

This was typically ensured implicitly by virtue of normal bitcoind
operation.  Adding an explicit check provides a stronger guarantee, and
it is cheap to add.
This commit is contained in:
Jeff Garzik 2014-08-24 01:18:24 -04:00
parent 087eb43cff
commit 75400a2a41

View File

@ -125,6 +125,12 @@ def copydata(settings, blkindex, blkset):
print("Skipping unknown block " + hash_str) print("Skipping unknown block " + hash_str)
continue continue
if blkindex[blkCount] != hash_str:
print("Out of order block.")
print("Expected " + blkindex[blkCount])
print("Got " + hash_str)
sys.exit(1)
if not fileOutput and ((outsz + inLen) > maxOutSz): if not fileOutput and ((outsz + inLen) > maxOutSz):
outF.close() outF.close()
outF = None outF = None