This past week Devnet did its duty by failing when applications were trying out the new Compute Budget instruction. Promptly fixed, the cluster returned to normal. Thank you for testing out the Compute Budget program in Devnet!
When a leader produces multiple blocks for the same slot, the number of potential forks increase. For each fork, the cluster has to do work in order to come to consensus. In order to remove that extra work, slashing is proposed.
This proposal breaks down how:
Devnet went down twice last week due to a consensus halting bug around the Compute Budget Program. Users that were submitting transactions with invalid Compute budget instructions were incrementing the bank's signature count even if the transaction was not executed.
If the Banking stage incremented the signature count with transactions that were never executed, the replay stage later(with only valid executed transactions) would have a signature count mismatch, causing consensus to fail.
This change is important to note, as the failure did not occur in Testnet, but in Devnet.
Want to get these updates as a newsletter? Be sure to signup here to get this update once a week sent to you.