[Shipped] Prepare deploy BFT2

Objective:

  • The BFT2 is deployed smoothly.

Length:

  • 2 month

Resources:

@hyng, @0xkumi

Key results:

  • Better experience in streaming blocks.
  • More unit tests for Highway v3 and BFT2.
  • Documentation for BFT2.

Details:

  • We introduced the Cache feature on Highway, which has many benefits for data synchronization. However, it still does not work well if Blockchain often has forked, so we are rolling out Highway v3 with some updates, mainly the Cache feature.

  • BFTv2 has been presented here. To ensure a smooth deployment, we will add more unit tests and review the entire codebase to make sure there are no particular cases that adversely affect the Incognito-Chain.

10 Likes

Progress update:

  • Currently, we solved “cache fork” problem in Highway by using a heuristic approach. In addition, we improve highway by adding request monitoring. This feature could be used to prevent spam or unusual operation of a node.
  • We also review and document multiview implementation. If you interested in how our node manages multistate, have a look at this.

Next step, we will review the consensus algorithm BFT2 including implementation and simulation. For highway, we continue to improve with monitoring feature.

4 Likes

Progress update:

  • Finished review consensus BFTv2 and simulation tool
  • Finish highway monitor web page

Next week, we focus on adding several scenarios for consensus simulation and develop api for the simulate fork on Highway.

5 Likes

Update 18/10:

  • We finished developing highway fork tool and ready for integrating with our automation test.
  • We also added several scenarios into our consensus simulation
  • We have been improving and reviewing multikey feature (allow running multiple validator key in the same node)

Next step, we will focus on creating automation tests with fork simulation. Also, continuing to improve the multikey codebase.

6 Likes