Taraxa Tech Update — Week 42: A major milestone for Taraxa testnet.

October 19, 2020 Blog No Comments »

Consensus and PBFT:

Taraxa enables the rapid finalization of block DAG to maximize the network’s throughput. Most of the week, we were working on fixing bugs in DAG-PBFT node syncing:

- Debugged and investigated on PBFT round stuck issue after the DAG refactoring- Debugged the PBFT syncing issue- Code review on DPOS integration and DAG refactoring- Moved the PBFT config from the top level of node config to the chain config section- Fixed the issue with incorrect sortition table entry that caused the tests failure and nodes getting stuck.

Network configuration:

- Moved the FullNode `boot_node` flag to the node config at path `<root>.network_is_boot_node`- Fixed node logging setup that was not always undone after the node destruction- Made the logging setup/un-setup more robust through encapsulation and immutability- Removed top.cpp, moved its function inside the FullNode. Respectively, removed `destroy_db` and `rebuild_network` with preference to remove those files outside the node code whenever needed- Made node config `ws_port` and `rpc_port` optional: if a port is not set, the respective server won't start  - Refactored FullNode and DBStorage- Moved all test utils in one file, refactored/improved some, in particular the wait function, node config generators and node launching utilities- Fixed the tests accordingly and, in many instances, lifted the timeouts.

EVM Transaction Layer.

We keep working on a more asynchronous pipelined design to make transaction execution and PBFT consensus asynchronous. Done this week:

- Integrated Taraxa-EVM state API DPOS implementation to the PBFT manager- Adapted the code to Taraxa-EVM state API database now being encapsulated- Fixed null value of the account state root in Ethereum JSON-RPC.

Check out our updated Ledger Roadmap and follow GitHub to be in the loop of our latest!

Comments are closed.