This PR implements a simple ingest service that watches new blocks, fetch the block information, stores the data in a database and then set the data companion retain height for the block so it can be pruned on the node.
There are a lot of things that would require more complex logic in order to support a real world ingest service, such as proper logic to handle gaps of missed blocks in case the ingest service was not running when blocks were generated. The logic implemented here for now is very naive on that aspect but the goal was to validate the use of the new Data Companion gRPC services
close #15 #18
This PR implements a simple ingest service that watches new blocks, fetch the block information, stores the data in a database and then set the data companion retain height for the block so it can be pruned on the node.
There are a lot of things that would require more complex logic in order to support a real world ingest service, such as proper logic to handle gaps of missed blocks in case the ingest service was not running when blocks were generated. The logic implemented here for now is very naive on that aspect but the goal was to validate the use of the new Data Companion gRPC services