mirror of
https://github.com/XRPLF/rippled.git
synced 2026-09-29 16:28:08 +00:00
Transactor::operator()() set its apply-stage attributes unconditionally, so every transaction applied paid for a TxFormats::findByType() lookup and a 64-char string built from the view's parent hash, plus one or two transToken() lookups in the exit funnel, whether or not anything recorded them. Guard both blocks on the span being active. This is the pattern the sibling preflight and preclaim spans already use in applySteps.cpp, with a comment giving this exact reason -- the apply stage was simply missed. Behaviour is unchanged where the span is live, and setAttribute on an inactive guard was already a no-op.