-
Notifications
You must be signed in to change notification settings - Fork 4.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature - Recompile loaded programs before epoch boundary #32172
Feature - Recompile loaded programs before epoch boundary #32172
Conversation
79c77fe
to
a2adeb5
Compare
Codecov Report
@@ Coverage Diff @@
## master #32172 +/- ##
=========================================
- Coverage 81.9% 81.9% -0.1%
=========================================
Files 798 798
Lines 217101 216652 -449
=========================================
- Hits 178015 177530 -485
- Misses 39086 39122 +36 |
a2adeb5
to
b8f8b29
Compare
b8f8b29
to
483558c
Compare
02583fb
to
95b8971
Compare
95b8971
to
65b5132
Compare
63474b9
to
b4b04cb
Compare
b4b04cb
to
8d957ae
Compare
f924d4e
to
176bfa0
Compare
176bfa0
to
6c701a4
Compare
6c701a4
to
15db974
Compare
Closing this as it does not work. There can be multiple independent forks crossing the epoch boundary, so we can only prune once the next rooting after the epoch boundary hits. In between the epoch boundary and the first root we potentially need to replay both feature sets depending on the slot, thus each Bank needs to know its program runtime environment. |
Problem
Continuation of #31945, to not only prune old programs which were verified and compiled against the feature set of the previous epoch, but also start recompiling them for the upcoming one before it hits.
Summary of Changes
ProgramRuntimeEnvironment
.LoadedPrograms::upcoming_program_runtime_environment_v1
.Bank::load_program()
.FEATURES_AFFECTING_RBPF
.