Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
BFT Block Puller: delivery client integration (#4373)
* BFT Block Puller: censorship monitor BFT header receivers that pull headers from the orderers, and keep the time and number of the last one. The header receivers verify each block as it arrives. The header receivers will receive (or ask for) full config blocks - in a later commit. The header receivers will maintain their own private block verifier (bundle) - in a later commit. A BFT censorship monitor which periodically compares the progress of headers relative to blocks. The monitor triggers an alert if a header is ahead of the block stream for more than a certain time. The BFTDeliverer is only a skeleton Signed-off-by: Yoav Tock <tock@il.ibm.com> Change-Id: I5180a98640073b87effb478fd86b6fa7d4df5dee * BFT Block Puller: BFTDeliverer - A BFTDeliverer that fetches blocks and maintains a BFTCensorshipMonitor. - Abstract the creation of a BFTCensorshipMonitor via an abstract factory, so that we can use a mock for it in testing. - Add a "shuffledEndpoints" method to the connection source and test it. - Unit testing of BFTDeliverer. Signed-off-by: Yoav Tock <tock@il.ibm.com> Change-Id: Ifead3f9e6c803c4d9fabc63acce11c6da472b88d * BFT Block Puller: integration with delivery client Integrate the BFT block deliverer with the deliver client. If the consensus-type is BFT, the BFTDeliverer is created. Signed-off-by: Yoav Tock <tock@il.ibm.com> Change-Id: I94c4c5ef3060df4119fc079b2b27630e92015d98 --------- Signed-off-by: Yoav Tock <tock@il.ibm.com>
- Loading branch information