bitcoin-s/chain
Chris Stewart 800fdffffb
2020 03 15 chainhandler getnancestor (#1247)
* Rename BlockHeaderDAO.getNChildren() to BlockHeaderDAO.getNAncestor() as that is what it actually does

* This changes the behavior of BlockHeaderDAO.getNAncestors from the previous implementation which just fetched headers in between two heights, to actually validating the headers that are fetched from the database with Blockchain.reconstructFromheaders()

* Run scalafmt

* Replace BlockHeader.getNAncestors call to Blockchain.reconstructFromHeaders() with Blockchain.connectWalkBackwards() so that we don't do full POW validation from the database, just make sure the headers connect to avoid reorg problems. Also add some more informative logs

* Address Roman's code review
2020-03-18 05:51:31 -05:00
..
src/main 2020 03 15 chainhandler getnancestor (#1247) 2020-03-18 05:51:31 -05:00
chain.sbt Bump test coverage (#713) 2019-08-23 18:32:55 +02:00
README.md Node (#490) 2019-06-04 09:53:00 -05:00

chain

This is meant to be a stand alone project that process a new block / transaction and stores it. It also provides a interface to query information related to a blockchain.

The design goal with this project is to be agnostic of how the project is receiving the blockchain data, just that it processes and stores it. For instance you could provide the blockchain data via

  • rpc
  • zmq
  • p2p
  • sattelite

This project just stores relevant block and transaction information and allows for it to be queried via a api.