Return the accounts data len delta after processing messages (#22986) (#23023)

(cherry picked from commit 869cfc9a1c)

Co-authored-by: Brooks Prumo <brooks@solana.com>
This commit is contained in:
mergify[bot]
2022-02-09 03:06:57 +00:00
committed by GitHub
parent 00630d9c1b
commit 0fe00bab7d
4 changed files with 67 additions and 51 deletions

View File

@ -3943,7 +3943,7 @@ impl Bank {
.map(|_| info)
})
.map(|info| {
self.store_accounts_data_len(info.accounts_data_len);
self.update_accounts_data_len(info.accounts_data_len_delta);
})
.map_err(|err| {
match err {

View File

@ -44,8 +44,8 @@ pub type InstructionTrace = Vec<InstructionRecorder>;
/// Resultant information gathered from calling process_message()
#[derive(Debug, Default, Clone, Copy, PartialEq, Eq)]
pub struct ProcessedMessageInfo {
/// The new accounts data len
pub accounts_data_len: u64,
/// The change in accounts data len
pub accounts_data_len_delta: i64,
}
impl MessageProcessor {
@ -152,7 +152,7 @@ impl MessageProcessor {
}
instruction_trace.append(invoke_context.get_instruction_trace_mut());
Ok(ProcessedMessageInfo {
accounts_data_len: invoke_context.get_accounts_data_meter().current(),
accounts_data_len_delta: invoke_context.get_accounts_data_meter().delta(),
})
}
}