Taraxa Tech UPD — Week 43.

After launching Aphrogenes in public mode last week, we focus our effort on increasing the network’s throughput and minimizing the latency. On to the updates!

Consensus and PBFT.

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 node syncing:

  • Implemented the shard mutex for PBFT round, next votes bundle, and PBFT chain head;
  • Implemented the PBFT next votes bundle syncing network propagation;
  • Fixed the bug parsing RPC raw data of next votes bundle;
  • Implemented the unit test for PBFT next votes bundle network propagation;
  • Added the checking synced cert votes at the same PBFT round;
  • Debugged the testnet PBFT stuck issue.

Block DAG.

Taraxa enables rapid finalization of the block DAG to maximize the network’s throughput. Done this week:

  • Implemented additional features to network performance logging to measure the network packet processing time individually and aggregated;
  • Found and fixed the issue where Aleth p2p library logging was creating huge delays in sending large packets over the network even with the logs turned off;
  • Removed the dag blocks multithread adding to DAG, as it provided no performance improvement and caused some race conditions;
  • Changed network_id to use chain id instead;
  • Improved the addition to DAG to be a single DB commit.

EVM transaction layer.

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

  • Fixed incorrect gas used in Ethereum receipts;
  • Added some debug utils to investigate the invalid transaction signature exception on the testnet;
  • Added more tests for the stake delegation contract;
  • Removed RocksDB file limit override;
  • Conducted the transaction engine performance testing.




I write about Tech and Design

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Martin Kalungu-Banda 分享關於民主與Ubuntu Lab

How to Set Up a Private Blockchain Network with XDC Network Codebase

Broken by design #2 : Randomness

Beta testing Google’s new Activity Transition API

Adding Default Task Listener on Camunda

Platform lesson #8: Instrument your platform for data-driven decisions

Reactive Programming in Java

Beyond the Bootcamp: How does software look at memory?

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Olya Green

Olya Green

I write about Tech and Design

More from Medium

Microsoft And Metaverse — What Are Microsoft’s Points Of View about Metaverse?

Portfolio project: Smart Energy Management (SEM)

What can Super-XSWAP bring to WEB3.0?

Gmail Smart Compose: Using Neural Networks to Help Write Emails