Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Transaction pool wastes CPU #12903

@arkpar

Description

@arkpar

I've noticed that when doing full sync, all transaction from all imported blocks are re-validated by the transaction pool after the block has been imported. This happens here:

.validate_transaction(parent, TransactionSource::InBlock, extrinsic.clone())

This wastes a lot of resources and hurts sync performance. Transaction pool should only re-validate transactions that are actually in the pool, shouldn't it?. Or at least skip the whole thing when the pool is empty.

Metadata

Metadata

Labels

I4-annoyanceThe client behaves within expectations, however this “expected behaviour” itself is at issue.Z1-easyCan be fixed primarily by duplicating and adapting code by an intermediate coder

Type

No type

Projects

Status

done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions