Skip to content

Commit

Permalink
Simplify signature of Bank::load_and_execute_transactions (solana-lab…
Browse files Browse the repository at this point in the history
  • Loading branch information
andreisilviudragnea authored Jun 3, 2024
1 parent d99a5f1 commit f4417b1
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 29 deletions.
14 changes: 9 additions & 5 deletions core/src/banking_stage/consumer.rs
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ use {
solana_svm::{
account_loader::{validate_fee_payer, TransactionCheckResult},
transaction_error_metrics::TransactionErrorMetrics,
transaction_processor::ExecutionRecordingConfig,
transaction_processor::{ExecutionRecordingConfig, TransactionProcessingConfig},
},
std::{
sync::{atomic::Ordering, Arc},
Expand Down Expand Up @@ -603,11 +603,15 @@ impl Consumer {
.load_and_execute_transactions(
batch,
MAX_PROCESSING_AGE,
ExecutionRecordingConfig::new_single_setting(transaction_status_sender_enabled),
&mut execute_and_commit_timings.execute_timings,
None, // account_overrides
self.log_messages_bytes_limit,
true,
TransactionProcessingConfig {
account_overrides: None,
log_messages_bytes_limit: self.log_messages_bytes_limit,
limit_to_load_programs: true,
recording_config: ExecutionRecordingConfig::new_single_setting(
transaction_status_sender_enabled
),
}
));
execute_and_commit_timings.load_execute_us = load_execute_us;

Expand Down
41 changes: 17 additions & 24 deletions runtime/src/bank.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3391,15 +3391,17 @@ impl Bank {
// for processing. During forwarding, the transaction could expire if the
// delay is not accounted for.
MAX_PROCESSING_AGE - MAX_TRANSACTION_FORWARDING_DELAY,
ExecutionRecordingConfig {
enable_cpi_recording,
enable_log_recording: true,
enable_return_data_recording: true,
},
&mut timings,
Some(&account_overrides),
None,
true,
TransactionProcessingConfig {
account_overrides: Some(&account_overrides),
log_messages_bytes_limit: None,
limit_to_load_programs: true,
recording_config: ExecutionRecordingConfig {
enable_cpi_recording,
enable_log_recording: true,
enable_return_data_recording: true,
},
},
);

let post_simulation_accounts = loaded_transactions
Expand Down Expand Up @@ -3642,16 +3644,12 @@ impl Bank {
balances
}

#[allow(clippy::too_many_arguments, clippy::type_complexity)]
pub fn load_and_execute_transactions(
&self,
batch: &TransactionBatch,
max_age: usize,
recording_config: ExecutionRecordingConfig,
timings: &mut ExecuteTimings,
account_overrides: Option<&AccountOverrides>,
log_messages_bytes_limit: Option<usize>,
limit_to_load_programs: bool,
processing_config: TransactionProcessingConfig,
) -> LoadAndExecuteTransactionsOutput {
let sanitized_txs = batch.sanitized_transactions();
debug!("processing transactions: {}", sanitized_txs.len());
Expand Down Expand Up @@ -3704,13 +3702,6 @@ impl Bank {
debug!("check: {}us", check_time.as_us());
timings.saturating_add_in_place(ExecuteTimingType::CheckUs, check_time.as_us());

let processing_config = TransactionProcessingConfig {
account_overrides,
limit_to_load_programs,
log_messages_bytes_limit,
recording_config,
};

let sanitized_output = self
.transaction_processor
.load_and_execute_sanitized_transactions(
Expand Down Expand Up @@ -4821,11 +4812,13 @@ impl Bank {
} = self.load_and_execute_transactions(
batch,
max_age,
recording_config,
timings,
None,
log_messages_bytes_limit,
false,
TransactionProcessingConfig {
account_overrides: None,
log_messages_bytes_limit,
limit_to_load_programs: false,
recording_config,
},
);

let (last_blockhash, lamports_per_signature) =
Expand Down

0 comments on commit f4417b1

Please sign in to comment.