Weekly Tech Update: Taraxa’s consensus, Marinate’s UX, and open API.
In the run up to the testnet launch, we’ve been fixing bugs and polishing up node syncing.
Consensus and PBFT:
- Debugged the testnet and fixed the next phase votes syncing issues:
- Only update vrf_pbft_chain_last_block_hash_ at the start of a round, or when syncing PBFT blocks into the chain;
- Whenever updating vrf_pbft_chain_last_block_hash_ due to syncing need to remove all verified votes since the last PBFT block hash has been changed;
- Checked any bundle of 2t+1 votes to be internally consistent. All have the same last PBFT block hash for VRF sortition.
- Fixed the bug incorrectly handle peers with the wrong network version or the DAG genesis hash.
- Fixed the bug not to update VRF-PBFT’s last block hash when syncing a block certified in the current round.
- Removed checking the last PBFT block hash in vote validation to fix the testnet stalled issue.
- Fixed the DPOS max proposal period consistent for the node restart issue.
Application: Marinate’s UX and API.
- Finishing Marinate DB and Wallet DB removal from the BE service.
- Changed the docker environment variables to be loaded via env file instead of each service of the Docker-compose file.
- Testing a full Mongo DB integration with microservices, along with the Open API in local environment + bug fixes.
- Finished the Mongo DB worker migration.
- Connected with the current FE service.