Hi.
I have the mainnet blockchain updated (block 554227). My app prcesses the whole blockchain and for that I need to read the blocks directly from disk as asking the node for them takes months (to get them and proccess them).
I run python linearize-hashes.py linearize.cfg > hashlist.txt
with max_height=554000
and then I run: python linearize-data.py linearize.cfg
It only processes block 0 cause in blk00000.dat the 2nd block starts with 0000000000000000 instead of f9beb4d9xxxxxxxx. After reading all blkxxxxxx.dat files linearize-data.py ends without finding block 1.
This same thing happened days ago in block around 120000 so I deleted the blockchain and started all over again (wasting almost 3 days).
Why does blk00000.dat have a 0000000000000000 after the 1st block? How can I know where block 1 is?
Needless to say the node is capable of returning block 1 when calling client.getBlockByHash.
Please help.
ps: I think that if I could read the index *.ldb files it would be much easyer that linearize-data.py shots in the dark. Where can I find info on the index files?