We announced a new product!

Solana Tech Roundup - #2

by Jacob Creech ยท January 28, 2022

Solana Tech Roundup

This week there has been a flurry of activity regarding performance on the Solana network. The discussion and commits have been fun to follow. Be sure to check out the recent Twitter space with Anatoly, @buffalu__, @leolukde, and @dadadadaffy found here.

Proposal Highlight:

Comprehensive Compute Fees

Documentation

Currently transaction fees are only based on the number of signatures in a transaction, but this does not account for the validator's work involved to validate this transaction.

The new fee will be calculated based on:

  1. Number of signatures
  2. Number of account write locks
  3. Transaction byte size
  4. Account size
  5. Total Compute budget
  6. Number of precompiled programs

The max transaction fee can be computed beforehand, and a rebate for any unused compute or write locks will be sent back as a rebate. This may change fees to not be deterministic in the future.

Discussion Highlight:

Exponentially increase fees for unused write-locked accounts

Discussion

When a transaction is made on a program, a number of accounts become write-locked and can slow down other transactions from being made on that account. A great example is liquidators. Liquidators will write lock a number of accounts to attempt to liquidate any pending eligible orders. If there's no current eligible orders for liquidation, the transaction locked accounts but didn't use them.

Not paying for unused write locked accounts can incentivize spamming the network. The discussion proposes the following:

  1. Write-locked accounts will be tracked during transaction execution
  2. Feepayers must pay for all possible write locked accounts. Fee rebates will be given after a transaction is executed
  3. If compute budget for an account is exceeded over N slots, fees for using that account will double for the next 2N slots

Let's take this example:

Let's say Raydium's new IDO pool account has a compute cap of 1m units. When launched, people submitting orders over 10 slots reach a total compute amount of 2m on the IDO pool account. For the next 20 slots, the fees for submitting orders on the IDO pool will double. Exponentially increasing fees forces spam bots to better execute their orders or pay an increasing fine.

If you want to read more or contribute to the discussion, join the issue here.

Commit Highlight:

  • ๐Ÿง๐Ÿง Lots of deduplication packet work ๐Ÿง๐Ÿง

List of changes:

January 21

January 22

January 23

= Community Contribution! Add JSON5 config support to accountsDB

January 24

January 25

January 26

January 27