solana
solana copied to clipboard
Refactor - Move recompilation out of program loading
Problem
The adjustments for programs being loaded in the recompilation phase can be done at the caller (Bank::_new_from_parent()
) and don't need to pollute the callee (TransactionBatchProcessor::load_program()
).
This PR was split from #35283 which should land first.
Summary of Changes
Moves the setting of effective_epoch
, tx_usage_counter
and ix_usage_counter
from the callee to the caller.
Backports to the beta branch are to be avoided unless absolutely necessary for fixing bugs, security issues, and perf regressions. Changes intended for backport should be structured such that a minimum effective diff can be committed separately from any refactoring, plumbing, cleanup, etc that are not strictly necessary to achieve the goal. Any of the latter should go only into master and ride the normal stabilization schedule. Exceptions include CI/metrics changes, CLI improvements and documentation updates on a case by case basis.
Do we need to backport this to v1.18?