forked from solana-labs/solana
-
Notifications
You must be signed in to change notification settings - Fork 818
Closed
Description
Problem
We have been stuck on Rust 1.86.0 for a while due to an observed performance regression:
- See Downgrade Rust to 1.86.0 #6980 for initial observation of regression (and revert from 1.87 to 1.86)
- See PoH Performance degradation with rust 1.87+ #8869 for investigation into the actual underlying issue
As identified in #8869, we have a path forward that will allow us to upgrade without suffering an intermediate performance regression. Namely, land a patch in solana-sdk and advance straight to Rust 1.89.0. #8869 (comment) discusses a BP that makes 1.88 stable viable, but 1.88 nightly is still susceptible to the regression so it is probably best to advance to 1.89 to avoid wasting any more developer time on this
Proposed Solution
Do the following steps in order:
- Merge the patch in
solana-sdk(Fix hasher performance degredation caused by rust upgrade solana-sdk#426) - Push a new tag (
v3.0.1) of solana-sha256-hasher - Upgrade
solana-sha256-hasherinagave(chore: Bump solana-sha256-hasher from 3.0.0 to 3.0.1 #8904) - PR(s) for clippy lints / compilation failures / etc to advance us from 1.86 ==> 1.89
- 1.87 lints should have been resolved per Upgrade Rust to 1.87.0 #6279
- 1.88 lints should have been resolved per Resolve clippy lints blocking rust upgrade to 1.88.0 #6850
- It is possible that new code has been added that violates new lints and will need to be addressed
- Update Rust to 1.89.0 #8892
- Just multiple versions in one PR to avoid intermediate regression
- Communicate team to keep a close eye on metrics
ryoqun and kskalski
Metadata
Metadata
Assignees
Labels
No labels