Skip to content

switch to diff-based updates for tpool

David Vorick requested to merge tpool-sub into master

This PR builds off of #1910, and is an attempt to greatly improve the performance of Sia when the transaction pool is full. These upgrades will help to improve the stability of Sia, and also allow us to bump out the transaction pool to 5mb or even 20mb if the optimizations are robust enough. I'm continuing to boost performance and test edge cases before we increase the size of the transaction pool, but this should be ready soon. Even a jump to 5mb would really help the transaction pool pressure that's on our network, but really I'm targeting 20mb.

Transaction pool was previously updating subscribers on the new state of the transaction pool by sending the entire transaction pool to them every single time a new transaction got added. This was incredibly slow, especially considering all of the IDs and stuff that was happening behind the scenes.

Now only the diffs are sent whenever there's a transaction pool update, instead of sending everything. This has resulted in huge speedups that should allow us to safely increase the transaction pool from 2mb to something larger.

Merge request reports