HomePhabricator

[Chronik] Non-allocating `ScriptGroupIter` for `ScriptGroup`

Description

[Chronik] Non-allocating ScriptGroupIter for ScriptGroup

Summary:
Removing the need to allocate here and instead iterate over the tx directly improves performance slightly.

In D15552, in the WS loop, applying this diff sped it up to 850.29s from 969.39s when resyncing the first 300000ish blocks. This loop is now removed when empty, but we can predict a similar improvement of 150s-300s based on that benchmark for GroupHistoryWriter and GroupUtxoWriter.

Test Plan: ninja check-crates && ninja check-functional

Reviewers: Fabien, #bitcoin_abc

Reviewed By: Fabien, #bitcoin_abc

Differential Revision: https://reviews.bitcoinabc.org/D15545

Details

Provenance
tobias_ruckAuthored on Feb 26 2024, 08:53
tobias_ruckPushed on Feb 27 2024, 07:52
Reviewer
Restricted Project
Differential Revision
D15545: [Chronik] Non-allocating `ScriptGroupIter` for `ScriptGroup`
Parents
rABC9b6623d0bc1e: [Cashtab] Increase txHistoryCount to 20
Branches
Unknown
Tags
Unknown