Taraxa Weekly UPD — Week 45
New fixes and refactorings to VDF-DAG, node syncing, and Taraxa EVM.
Nov 9, 2020
Taraxa enables rapid finalization of block DAG to maximize the network’s throughput. Most of the week, we were working on fixing bugs in DAG-PBFT and EVM transaction layer.
VDF-DAG proposal.
- Fixed the issue of DAG proposing multiple blocks on each level (the result of a change in the DAG pivot chain due to other incoming blocks).
- Moved the VDF parameters from config files to the chain config.
- Cleaned up the DAG proposal legacy parameters.
- Fixed slow syncing issue in PBFT due to a large number of blocks: investigated and analyzed the VDF mutative lambda and difficulty values for computation and verification time, generated the diagrams to figure out the best values range to reduce the VDF verification time.
Node syncing.
- Implemented the state/database snapshot testing functionality that allows to easily create snapshots and revert a node to a specific period if needed.
- Fixed the sender issue in the RPC-DAG block.
- Looking into the RPC issues with web sockets disconnecting.
- Testing performance on the testnet and node memory, and CPU profiling.
EVM transaction layer.
We keep working on a more asynchronous pipelined design to make transaction execution and PBFT consensus asynchronous. Done this week:
- Optimized the PBFT by removing the ‘schedule’ from the PBFT block and deriving ‘schedule’ information at PBFT finalization — full description at https://github.com/Taraxa-project/taraxa-node/pull/585
- Imporved the project structure — full description at https://github.com/Taraxa-project/taraxa-node/pull/589