I am trying to understand the structure of the underlying block chain stored in the core implementation (or rather just the BLK files used by a fullnode). My question is ; does the block chain store the complete tree structure , i.e all the forks which were encountered? Or does it purge the entries once a fork is resolved.
If i were to read the blk files sequentially , can i assume that every single block read is correctly ordered and no forks are present?
Thanks!