Taraxa Weekly Tech Update: 2019 Week 40

Justin Snapp
Taraxa Project
Published in
2 min readOct 7, 2019

This week was the start of a new sprint to achieve improved stability and persistency. These are important goals that build off the successful completion of our previous big push to reach the launch of Albidum; the initial version release of our testnet. Continuing in our scheme of testnet versions named after dandelion species, we plan to follow that up with the launch of an updated version Aphrogenes by the end of October.

RPC protocols

  • Added new DAG specific methods for getting DAG blocks by level and hash
  • Added period and block number to some existing block retrieval methds
  • Addressed stability of both HTTP and WebSocket RPC methods prevent crashes due to malformed requests
  • Fixed bug with multiple WebSockets

DAG Layer

  • Merged pull request to address node syncing issues when joining network
  • Optimizing DAG block database to only save blocks successfully added to the DAG
  • Aligned nonce table with DAG insertion for proper nonce odering under the Taraxa protocol
  • Synced nonce table state with DAG frontier under pruned DAG operation
  • Updated some remaining flakey integration tests for nonce handling
  • Identified performance issue with PBFT delay caused by pivot chain sync

PBFT Consensus and Execution Schedule Layer

  • Improved asynchronous performance of PBFT threshold and account balance table update
  • Moved certified vote counting for round determination
  • PBFT chain syncing only happens when PBFT block verified queue is empty so that PBFT syncing is not needlessly attempted before underlying DAG sync is complete
  • Removed deprecated functions from code
  • Added unit test for pruning PBFT unverified blocks table
  • Fixed unit test for PBFT database and chain classes
  • Continued work on improving PBFT persistency

Transaction Executor and Concurrent EVM

  • Fixed error handling in the Go transaction engine
  • Discussed optimization for pre-pass validation of transaction proposals
  • Cleaned up various sections of code and tests
  • Worked on fixing integration tests for invalid transactions

“Albidum” Testnet Update

  • Deplyed initial testnet
  • Gained useful performance and bug data from the nodes that joined
  • Started the path towards future named monthly testnet releases and active user community growth

Stay tuned.

--

--

Justin Snapp
Taraxa Project

CTO of Taraxa, a fast, scalable, and device-friendly public ledger designed to help IoT ecosystems become more trusted, autonomous, and valuable.