Optimize transaction pool pruning (#1524)

* Reuse tags of known transactions, avoid reimporting extrinsics from imported block.

* Fix tests for graph.

* Add more detailed docs.

* Avoid cloning and computing hashes twice.
This commit is contained in:
Tomasz Drwięga authored and Gav Wood committed 2019-01-24 15:52:17 +00:00
1 parent 997c8b4020
commit 1b0d90cdf6
7 files changed
+180 -47

No files matched your search

+1 -1
View File
@@ -151,7 +151,7 @@ fn prune_tags_should_work() {
let pending: Vec<_> = pool.ready().map(|a| a.data.transfer().nonce).collect();
assert_eq!(pending, vec![209, 210]);
pool.prune_tags(&BlockId::number(1), vec![vec![209]]).unwrap();
pool.prune_tags(&BlockId::number(1), vec![vec![209]], vec![]).unwrap();
let pending: Vec<_> = pool.ready().map(|a| a.data.transfer().nonce).collect();
assert_eq!(pending, vec![210]);