Skip to content

v3.1: runtime: resolve compute budget in check_transaction() (backport of #9155)#9848

Merged
2501babe merged 1 commit into
v3.1from
mergify/bp/v3.1/pr-9155
Jan 9, 2026
Merged

v3.1: runtime: resolve compute budget in check_transaction() (backport of #9155)#9848
2501babe merged 1 commit into
v3.1from
mergify/bp/v3.1/pr-9155

Conversation

@mergify
Copy link
Copy Markdown

@mergify mergify Bot commented Jan 7, 2026

Problem

in implementing simd290 and simd297 it would be convenient if the only errors we had to handle in svm validate_transaction_nonce_and_fee_payer() were the nonce and feepayer errors because we will have to propagate particular representations for those cases upwards

the only error other than nonce/feepayer is unwrapping Result<SVMTransactionExecutionAndFeeBudgetLimits>, constructed in runtime check_transactions()

Summary of Changes

instead of delivering a malformed compute budget as its own error, transform it into a Result<CheckedTransactionDetails> error in runtime. the only possible errors are in sanitize_and_convert_to_compute_budget_limits(), checking that requested data and heap size values are sane

there are tests in several crates for a DuplicateInstruction error, which is not relevant to this pr. this type of error gets resolved much earlier in RuntimeTransaction<SanitizedVersionedTransaction>::try_from() and never makes it into a batch


This is an automatic backport of pull request #9155 done by Mergify.

* runtime: resolve compute budget in `check_transaction()`

(cherry picked from commit abcf518)
@mergify mergify Bot requested a review from a team as a code owner January 7, 2026 19:47
@codecov-commenter
Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.2%. Comparing base (201f977) to head (110d979).

Additional details and impacted files
@@            Coverage Diff            @@
##             v3.1    #9848     +/-   ##
=========================================
- Coverage    83.2%    83.2%   -0.1%     
=========================================
  Files         865      865             
  Lines      376114   376085     -29     
=========================================
- Hits       313140   313083     -57     
- Misses      62974    63002     +28     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@2501babe
Copy link
Copy Markdown
Member

2501babe commented Jan 8, 2026

plan is to land this, rebase #9849, then rebase #9756

Comment thread runtime/src/bank/check_transactions.rs
@2501babe 2501babe merged commit a49b7c8 into v3.1 Jan 9, 2026
44 checks passed
@2501babe 2501babe deleted the mergify/bp/v3.1/pr-9155 branch January 9, 2026 08:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants