-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
Refactor - ExtractedPrograms
#34205
Refactor - ExtractedPrograms
#34205
Conversation
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## master #34205 +/- ##
=========================================
- Coverage 81.9% 81.9% -0.1%
=========================================
Files 819 819
Lines 219425 219338 -87
=========================================
- Hits 179854 179724 -130
- Misses 39571 39614 +43 |
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. |
* Puts ExtractedPrograms into Arc<Mutex<>>. * Merges ExtractedPrograms::missing and ExtractedPrograms::unloaded. * Unifies missing entry insertion in LoadedPrograms::extract(). (cherry picked from commit 4ee5078)
* Puts ExtractedPrograms into Arc<Mutex<>>. * Merges ExtractedPrograms::missing and ExtractedPrograms::unloaded. * Unifies missing entry insertion in LoadedPrograms::extract(). (cherry picked from commit 4ee5078)
Refactor - `ExtractedPrograms` (#34205) * Puts ExtractedPrograms into Arc<Mutex<>>. * Merges ExtractedPrograms::missing and ExtractedPrograms::unloaded. * Unifies missing entry insertion in LoadedPrograms::extract(). (cherry picked from commit 4ee5078) Co-authored-by: Alexander Meißner <[email protected]>
Problem
Preparation for #33715.
Summary of Changes
ExtractedPrograms
intoArc<Mutex<>>
because when TX batches cooperate they need to access each others results in order to complete them.ExtractedPrograms::missing
andExtractedPrograms::unloaded
to deduplicate code paths.LoadedPrograms::extract()
, so that there is one point where in a subsequent PR we could check if another TX batch is already loading the missing entry.