Optimizes AppendVec::get_account_sizes() when using file io #2083
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
As noted in #1394 (comment), when using file i/o to access append vecs, the
get_account_sizes()
implementation is not optimal. It currently callsget_stored_account_meta_callback()
, which will copy all the account fields—including the data—even though only the data len is needed.We call
get_account_sizes()
fromclean
when removing dead accounts insidehandle_reclaims()
, so having a more-optimal impl is beneficial.Summary of Changes
Only get the data len from each account.