From f9bc3cec24403c909eacd617796058e522c0122f Mon Sep 17 00:00:00 2001 From: Brooks Date: Sat, 19 Aug 2023 19:55:29 -0400 Subject: [PATCH] Renames SnapshotType to SnapshotKind (#32906) --- core/src/accounts_hash_verifier.rs | 30 +-- core/src/snapshot_packager_service.rs | 18 +- .../snapshot_gossip_manager.rs | 10 +- core/tests/snapshots.rs | 6 +- download-utils/src/lib.rs | 18 +- local-cluster/tests/local_cluster.rs | 12 +- runtime/src/accounts_background_service.rs | 18 +- runtime/src/snapshot_bank_utils.rs | 6 +- runtime/src/snapshot_package.rs | 34 ++-- runtime/src/snapshot_package/compare.rs | 180 +++++++++--------- runtime/src/snapshot_utils.rs | 2 +- validator/src/bootstrap.rs | 10 +- 12 files changed, 172 insertions(+), 172 deletions(-) diff --git a/core/src/accounts_hash_verifier.rs b/core/src/accounts_hash_verifier.rs index cee3cf3c6..e9d735def 100644 --- a/core/src/accounts_hash_verifier.rs +++ b/core/src/accounts_hash_verifier.rs @@ -19,8 +19,8 @@ use { serde_snapshot::BankIncrementalSnapshotPersistence, snapshot_config::SnapshotConfig, snapshot_package::{ - self, retain_max_n_elements, AccountsPackage, AccountsPackageType, SnapshotPackage, - SnapshotType, + self, retain_max_n_elements, AccountsPackage, AccountsPackageType, SnapshotKind, + SnapshotPackage, }, snapshot_utils, }, @@ -200,7 +200,7 @@ impl AccountsHashVerifier { // need to check. If `y` is a FullSnapshot request *with a lower slot* than `z`, // then handle `y` first. let accounts_package = if z.package_type == AccountsPackageType::EpochAccountsHash - && y.package_type == AccountsPackageType::Snapshot(SnapshotType::FullSnapshot) + && y.package_type == AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot) && y.slot < z.slot { // SAFETY: We know the len is > 1, so both `pop`s will return `Some` @@ -277,9 +277,9 @@ impl AccountsHashVerifier { let accounts_hash_calculation_flavor = match accounts_package.package_type { AccountsPackageType::AccountsHashVerifier => CalcAccountsHashFlavor::Full, AccountsPackageType::EpochAccountsHash => CalcAccountsHashFlavor::Full, - AccountsPackageType::Snapshot(snapshot_type) => match snapshot_type { - SnapshotType::FullSnapshot => CalcAccountsHashFlavor::Full, - SnapshotType::IncrementalSnapshot(_) => { + AccountsPackageType::Snapshot(snapshot_kind) => match snapshot_kind { + SnapshotKind::FullSnapshot => CalcAccountsHashFlavor::Full, + SnapshotKind::IncrementalSnapshot(_) => { if accounts_package.is_incremental_accounts_hash_feature_enabled { CalcAccountsHashFlavor::Incremental } else { @@ -300,7 +300,7 @@ impl AccountsHashVerifier { (accounts_hash.into(), accounts_hash, None) } CalcAccountsHashFlavor::Incremental => { - let AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(base_slot)) = + let AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(base_slot)) = accounts_package.package_type else { panic!("Calculating incremental accounts hash requires a base slot"); @@ -337,7 +337,7 @@ impl AccountsHashVerifier { } if accounts_package.package_type - == AccountsPackageType::Snapshot(SnapshotType::FullSnapshot) + == AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot) { accounts_package .accounts @@ -581,7 +581,7 @@ mod tests { rand::seq::SliceRandom, solana_gossip::contact_info::ContactInfo, solana_runtime::{ - snapshot_bank_utils::DISABLED_SNAPSHOT_ARCHIVE_INTERVAL, snapshot_package::SnapshotType, + snapshot_bank_utils::DISABLED_SNAPSHOT_ARCHIVE_INTERVAL, snapshot_package::SnapshotKind, }, solana_sdk::{ signature::{Keypair, Signer}, @@ -667,13 +667,13 @@ mod tests { } fn new_fss(slot: Slot) -> AccountsPackage { new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), slot, ) } fn new_iss(slot: Slot, base: Slot) -> AccountsPackage { new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(base)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(base)), slot, ) } @@ -751,7 +751,7 @@ mod tests { .unwrap(); assert_eq!( account_package.package_type, - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot) + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot) ); assert_eq!(account_package.slot, 400); assert_eq!(num_re_enqueued_accounts_packages, 7); @@ -769,7 +769,7 @@ mod tests { .unwrap(); assert_eq!( account_package.package_type, - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(400)) + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(400)) ); assert_eq!(account_package.slot, 420); assert_eq!(num_re_enqueued_accounts_packages, 3); @@ -842,7 +842,7 @@ mod tests { .unwrap(); assert_eq!( account_package.package_type, - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot) + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot) ); assert_eq!(account_package.slot, 100); assert_eq!(num_re_enqueued_accounts_packages, 10); @@ -877,7 +877,7 @@ mod tests { .unwrap(); assert_eq!( account_package.package_type, - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(100)) + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(100)) ); assert_eq!(account_package.slot, 220); assert_eq!(num_re_enqueued_accounts_packages, 2); diff --git a/core/src/snapshot_packager_service.rs b/core/src/snapshot_packager_service.rs index a4bfc3a0b..4c90a8bd1 100644 --- a/core/src/snapshot_packager_service.rs +++ b/core/src/snapshot_packager_service.rs @@ -94,7 +94,7 @@ impl SnapshotPackagerService { if let Some(snapshot_gossip_manager) = snapshot_gossip_manager.as_mut() { snapshot_gossip_manager.push_snapshot_hash( - snapshot_package.snapshot_type, + snapshot_package.snapshot_kind, (snapshot_package.slot(), *snapshot_package.hash()), ); } @@ -206,7 +206,7 @@ mod tests { snapshot_archive_info::SnapshotArchiveInfo, snapshot_bank_utils, snapshot_hash::SnapshotHash, - snapshot_package::{SnapshotPackage, SnapshotType}, + snapshot_package::{SnapshotKind, SnapshotPackage}, snapshot_utils::{self, ArchiveFormat, SnapshotVersion}, }, solana_sdk::{clock::Slot, genesis_config::GenesisConfig, hash::Hash}, @@ -296,7 +296,7 @@ mod tests { /// Otherwise, they should be dropped. #[test] fn test_get_next_snapshot_package() { - fn new(snapshot_type: SnapshotType, slot: Slot) -> SnapshotPackage { + fn new(snapshot_kind: SnapshotKind, slot: Slot) -> SnapshotPackage { SnapshotPackage { snapshot_archive_info: SnapshotArchiveInfo { path: PathBuf::default(), @@ -308,15 +308,15 @@ mod tests { bank_snapshot_dir: PathBuf::default(), snapshot_storages: Vec::default(), snapshot_version: SnapshotVersion::default(), - snapshot_type, + snapshot_kind, enqueued: Instant::now(), } } fn new_full(slot: Slot) -> SnapshotPackage { - new(SnapshotType::FullSnapshot, slot) + new(SnapshotKind::FullSnapshot, slot) } fn new_incr(slot: Slot, base: Slot) -> SnapshotPackage { - new(SnapshotType::IncrementalSnapshot(base), slot) + new(SnapshotKind::IncrementalSnapshot(base), slot) } let (snapshot_package_sender, snapshot_package_receiver) = crossbeam_channel::unbounded(); @@ -350,7 +350,7 @@ mod tests { &snapshot_package_receiver, ) .unwrap(); - assert_eq!(snapshot_package.snapshot_type, SnapshotType::FullSnapshot,); + assert_eq!(snapshot_package.snapshot_kind, SnapshotKind::FullSnapshot,); assert_eq!(snapshot_package.slot(), 400); assert_eq!(num_re_enqueued_snapshot_packages, 2); @@ -366,8 +366,8 @@ mod tests { ) .unwrap(); assert_eq!( - snapshot_package.snapshot_type, - SnapshotType::IncrementalSnapshot(400), + snapshot_package.snapshot_kind, + SnapshotKind::IncrementalSnapshot(400), ); assert_eq!(snapshot_package.slot(), 420); assert_eq!(num_re_enqueued_snapshot_packages, 0); diff --git a/core/src/snapshot_packager_service/snapshot_gossip_manager.rs b/core/src/snapshot_packager_service/snapshot_gossip_manager.rs index 40826f241..a2d7239b3 100644 --- a/core/src/snapshot_packager_service/snapshot_gossip_manager.rs +++ b/core/src/snapshot_packager_service/snapshot_gossip_manager.rs @@ -4,7 +4,7 @@ use { snapshot_hash::{ FullSnapshotHash, IncrementalSnapshotHash, SnapshotHash, StartingSnapshotHashes, }, - snapshot_package::{retain_max_n_elements, SnapshotType}, + snapshot_package::{retain_max_n_elements, SnapshotKind}, }, solana_sdk::{clock::Slot, hash::Hash}, std::sync::Arc, @@ -58,14 +58,14 @@ impl SnapshotGossipManager { /// Push new snapshot hash to the cluster via CRDS pub fn push_snapshot_hash( &mut self, - snapshot_type: SnapshotType, + snapshot_kind: SnapshotKind, snapshot_hash: (Slot, SnapshotHash), ) { - match snapshot_type { - SnapshotType::FullSnapshot => { + match snapshot_kind { + SnapshotKind::FullSnapshot => { self.push_full_snapshot_hash(FullSnapshotHash(snapshot_hash)); } - SnapshotType::IncrementalSnapshot(base_slot) => { + SnapshotKind::IncrementalSnapshot(base_slot) => { self.push_incremental_snapshot_hash( IncrementalSnapshotHash(snapshot_hash), base_slot, diff --git a/core/tests/snapshots.rs b/core/tests/snapshots.rs index f3af5dc19..b8629a912 100644 --- a/core/tests/snapshots.rs +++ b/core/tests/snapshots.rs @@ -30,7 +30,7 @@ use { snapshot_bank_utils::{self, DISABLED_SNAPSHOT_ARCHIVE_INTERVAL}, snapshot_config::SnapshotConfig, snapshot_hash::SnapshotHash, - snapshot_package::{AccountsPackage, AccountsPackageType, SnapshotPackage, SnapshotType}, + snapshot_package::{AccountsPackage, AccountsPackageType, SnapshotKind, SnapshotPackage}, snapshot_utils::{ self, SnapshotVersion::{self, V1_2_0}, @@ -244,7 +244,7 @@ fn run_bank_forks_snapshot_n( let last_bank_snapshot_info = snapshot_utils::get_highest_bank_snapshot_pre(bank_snapshots_dir) .expect("no bank snapshots found in path"); let accounts_package = AccountsPackage::new_for_snapshot( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), &last_bank, &last_bank_snapshot_info, &snapshot_config.full_snapshot_archives_dir, @@ -412,7 +412,7 @@ fn test_concurrent_snapshot_packaging( ) .unwrap(); let accounts_package = AccountsPackage::new_for_snapshot( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), &bank, &bank_snapshot_info, full_snapshot_archives_dir, diff --git a/download-utils/src/lib.rs b/download-utils/src/lib.rs index 343ca4d33..7b4afc616 100644 --- a/download-utils/src/lib.rs +++ b/download-utils/src/lib.rs @@ -5,7 +5,7 @@ use { log::*, solana_runtime::{ snapshot_hash::SnapshotHash, - snapshot_package::SnapshotType, + snapshot_package::SnapshotKind, snapshot_utils::{self, ArchiveFormat}, }, solana_sdk::{clock::Slot, genesis_config::DEFAULT_GENESIS_ARCHIVE}, @@ -256,14 +256,14 @@ pub fn download_genesis_if_missing( } } -/// Download a snapshot archive from `rpc_addr`. Use `snapshot_type` to specify downloading either +/// Download a snapshot archive from `rpc_addr`. Use `snapshot_kind` to specify downloading either /// a full snapshot or an incremental snapshot. pub fn download_snapshot_archive( rpc_addr: &SocketAddr, full_snapshot_archives_dir: &Path, incremental_snapshot_archives_dir: &Path, desired_snapshot_hash: (Slot, SnapshotHash), - snapshot_type: SnapshotType, + snapshot_kind: SnapshotKind, maximum_full_snapshot_archives_to_retain: NonZeroUsize, maximum_incremental_snapshot_archives_to_retain: NonZeroUsize, use_progress_bar: bool, @@ -277,9 +277,9 @@ pub fn download_snapshot_archive( ); let snapshot_archives_remote_dir = - snapshot_utils::build_snapshot_archives_remote_dir(match snapshot_type { - SnapshotType::FullSnapshot => full_snapshot_archives_dir, - SnapshotType::IncrementalSnapshot(_) => incremental_snapshot_archives_dir, + snapshot_utils::build_snapshot_archives_remote_dir(match snapshot_kind { + SnapshotKind::FullSnapshot => full_snapshot_archives_dir, + SnapshotKind::IncrementalSnapshot(_) => incremental_snapshot_archives_dir, }); fs::create_dir_all(&snapshot_archives_remote_dir).unwrap(); @@ -290,14 +290,14 @@ pub fn download_snapshot_archive( ArchiveFormat::TarLz4, ArchiveFormat::Tar, // `solana-test-validator` creates uncompressed snapshots ] { - let destination_path = match snapshot_type { - SnapshotType::FullSnapshot => snapshot_utils::build_full_snapshot_archive_path( + let destination_path = match snapshot_kind { + SnapshotKind::FullSnapshot => snapshot_utils::build_full_snapshot_archive_path( &snapshot_archives_remote_dir, desired_snapshot_hash.0, &desired_snapshot_hash.1, archive_format, ), - SnapshotType::IncrementalSnapshot(base_slot) => { + SnapshotKind::IncrementalSnapshot(base_slot) => { snapshot_utils::build_incremental_snapshot_archive_path( &snapshot_archives_remote_dir, base_slot, diff --git a/local-cluster/tests/local_cluster.rs b/local-cluster/tests/local_cluster.rs index b23ac74f7..18846459b 100644 --- a/local-cluster/tests/local_cluster.rs +++ b/local-cluster/tests/local_cluster.rs @@ -60,7 +60,7 @@ use { snapshot_archive_info::SnapshotArchiveInfoGetter, snapshot_bank_utils, snapshot_config::SnapshotConfig, - snapshot_package::SnapshotType, + snapshot_package::SnapshotKind, snapshot_utils::{self}, vote_parser, }, @@ -552,7 +552,7 @@ fn test_snapshot_download() { full_snapshot_archive_info.slot(), *full_snapshot_archive_info.hash(), ), - SnapshotType::FullSnapshot, + SnapshotKind::FullSnapshot, validator_snapshot_test_config .validator_config .snapshot_config @@ -683,7 +683,7 @@ fn test_incremental_snapshot_download() { full_snapshot_archive_info.slot(), *full_snapshot_archive_info.hash(), ), - SnapshotType::FullSnapshot, + SnapshotKind::FullSnapshot, validator_snapshot_test_config .validator_config .snapshot_config @@ -711,7 +711,7 @@ fn test_incremental_snapshot_download() { incremental_snapshot_archive_info.slot(), *incremental_snapshot_archive_info.hash(), ), - SnapshotType::IncrementalSnapshot(incremental_snapshot_archive_info.base_slot()), + SnapshotKind::IncrementalSnapshot(incremental_snapshot_archive_info.base_slot()), validator_snapshot_test_config .validator_config .snapshot_config @@ -854,7 +854,7 @@ fn test_incremental_snapshot_download_with_crossing_full_snapshot_interval_at_st .incremental_snapshot_archives_dir .path(), (full_snapshot_archive.slot(), *full_snapshot_archive.hash()), - SnapshotType::FullSnapshot, + SnapshotKind::FullSnapshot, validator_snapshot_test_config .validator_config .snapshot_config @@ -891,7 +891,7 @@ fn test_incremental_snapshot_download_with_crossing_full_snapshot_interval_at_st incremental_snapshot_archive.slot(), *incremental_snapshot_archive.hash(), ), - SnapshotType::IncrementalSnapshot(incremental_snapshot_archive.base_slot()), + SnapshotKind::IncrementalSnapshot(incremental_snapshot_archive.base_slot()), validator_snapshot_test_config .validator_config .snapshot_config diff --git a/runtime/src/accounts_background_service.rs b/runtime/src/accounts_background_service.rs index e2656e0d4..0b2fb1c5f 100644 --- a/runtime/src/accounts_background_service.rs +++ b/runtime/src/accounts_background_service.rs @@ -9,7 +9,7 @@ use { bank_forks::BankForks, snapshot_bank_utils, snapshot_config::SnapshotConfig, - snapshot_package::{self, AccountsPackage, AccountsPackageType, SnapshotType}, + snapshot_package::{self, AccountsPackage, AccountsPackageType, SnapshotKind}, snapshot_utils::{self, SnapshotError}, }, crossbeam_channel::{Receiver, SendError, Sender}, @@ -257,7 +257,7 @@ impl SnapshotRequestHandler { // then handle `y` first. let (snapshot_request, accounts_package_type) = if z.1 == AccountsPackageType::EpochAccountsHash - && y.1 == AccountsPackageType::Snapshot(SnapshotType::FullSnapshot) + && y.1 == AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot) && y.0.snapshot_root_bank.slot() < z.0.snapshot_root_bank.slot() { // SAFETY: We know the len is > 1, so both `pop`s will return `Some` @@ -318,7 +318,7 @@ impl SnapshotRequestHandler { // we should not rely on the state of this validator until startup verification is complete assert!(snapshot_root_bank.is_startup_verification_complete()); - if accounts_package_type == AccountsPackageType::Snapshot(SnapshotType::FullSnapshot) { + if accounts_package_type == AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot) { *last_full_snapshot_slot = Some(snapshot_root_bank.slot()); } @@ -749,13 +749,13 @@ fn new_accounts_package_type( block_height, snapshot_config.full_snapshot_archive_interval_slots, ) { - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot) + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot) } else if snapshot_utils::should_take_incremental_snapshot( block_height, snapshot_config.incremental_snapshot_archive_interval_slots, last_full_snapshot_slot, ) { - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot( + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot( last_full_snapshot_slot.unwrap(), )) } else { @@ -945,7 +945,7 @@ mod test { .unwrap(); assert_eq!( accounts_package_type, - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot) + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot) ); assert_eq!(snapshot_request.snapshot_root_bank.slot(), 240); @@ -956,7 +956,7 @@ mod test { .unwrap(); assert_eq!( accounts_package_type, - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(240)) + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(240)) ); assert_eq!(snapshot_request.snapshot_root_bank.slot(), 300); @@ -997,7 +997,7 @@ mod test { .unwrap(); assert_eq!( accounts_package_type, - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot) + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot) ); assert_eq!(snapshot_request.snapshot_root_bank.slot(), 480); @@ -1017,7 +1017,7 @@ mod test { .unwrap(); assert_eq!( accounts_package_type, - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(480)) + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(480)) ); assert_eq!(snapshot_request.snapshot_root_bank.slot(), 540); diff --git a/runtime/src/snapshot_bank_utils.rs b/runtime/src/snapshot_bank_utils.rs index 1d446912f..d61726bdf 100644 --- a/runtime/src/snapshot_bank_utils.rs +++ b/runtime/src/snapshot_bank_utils.rs @@ -11,7 +11,7 @@ use { FullSnapshotArchiveInfo, IncrementalSnapshotArchiveInfo, SnapshotArchiveInfoGetter, }, snapshot_hash::SnapshotHash, - snapshot_package::{AccountsPackage, AccountsPackageType, SnapshotPackage, SnapshotType}, + snapshot_package::{AccountsPackage, AccountsPackageType, SnapshotKind, SnapshotPackage}, snapshot_utils::{ self, archive_snapshot_package, build_storage_from_snapshot_dir, delete_contents_of_path, deserialize_snapshot_data_file, @@ -1079,7 +1079,7 @@ pub fn package_and_archive_full_snapshot( maximum_incremental_snapshot_archives_to_retain: NonZeroUsize, ) -> snapshot_utils::Result { let accounts_package = AccountsPackage::new_for_snapshot( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), bank, bank_snapshot_info, &full_snapshot_archives_dir, @@ -1129,7 +1129,7 @@ pub fn package_and_archive_incremental_snapshot( maximum_incremental_snapshot_archives_to_retain: NonZeroUsize, ) -> snapshot_utils::Result { let accounts_package = AccountsPackage::new_for_snapshot( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot( + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot( incremental_snapshot_base_slot, )), bank, diff --git a/runtime/src/snapshot_package.rs b/runtime/src/snapshot_package.rs index c9eef2ab1..4a6439a41 100644 --- a/runtime/src/snapshot_package.rs +++ b/runtime/src/snapshot_package.rs @@ -60,14 +60,14 @@ impl AccountsPackage { snapshot_version: SnapshotVersion, accounts_hash_for_testing: Option, ) -> Self { - if let AccountsPackageType::Snapshot(snapshot_type) = package_type { + if let AccountsPackageType::Snapshot(snapshot_kind) = package_type { info!( - "Package snapshot for bank {} has {} account storage entries (snapshot type: {:?})", + "Package snapshot for bank {} has {} account storage entries (snapshot kind: {:?})", bank.slot(), snapshot_storages.len(), - snapshot_type, + snapshot_kind, ); - if let SnapshotType::IncrementalSnapshot(incremental_snapshot_base_slot) = snapshot_type + if let SnapshotKind::IncrementalSnapshot(incremental_snapshot_base_slot) = snapshot_kind { assert!( bank.slot() > incremental_snapshot_base_slot, @@ -229,7 +229,7 @@ pub struct SupplementalSnapshotInfo { #[derive(Debug, Copy, Clone, Eq, PartialEq)] pub enum AccountsPackageType { AccountsHashVerifier, - Snapshot(SnapshotType), + Snapshot(SnapshotKind), EpochAccountsHash, } @@ -240,7 +240,7 @@ pub struct SnapshotPackage { pub bank_snapshot_dir: PathBuf, pub snapshot_storages: Vec>, pub snapshot_version: SnapshotVersion, - pub snapshot_type: SnapshotType, + pub snapshot_kind: SnapshotKind, /// The instant this snapshot package was sent to the queue. /// Used to track how long snapshot packages wait before handling. @@ -249,7 +249,7 @@ pub struct SnapshotPackage { impl SnapshotPackage { pub fn new(accounts_package: AccountsPackage, accounts_hash: AccountsHashEnum) -> Self { - let AccountsPackageType::Snapshot(snapshot_type) = accounts_package.package_type else { + let AccountsPackageType::Snapshot(snapshot_kind) = accounts_package.package_type else { panic!( "The AccountsPackage must be of type Snapshot in order to make a SnapshotPackage!" ); @@ -262,14 +262,14 @@ impl SnapshotPackage { let snapshot_hash = SnapshotHash::new(&accounts_hash, snapshot_info.epoch_accounts_hash.as_ref()); let mut snapshot_storages = accounts_package.snapshot_storages; - let snapshot_archive_path = match snapshot_type { - SnapshotType::FullSnapshot => snapshot_utils::build_full_snapshot_archive_path( + let snapshot_archive_path = match snapshot_kind { + SnapshotKind::FullSnapshot => snapshot_utils::build_full_snapshot_archive_path( snapshot_info.full_snapshot_archives_dir, accounts_package.slot, &snapshot_hash, snapshot_info.archive_format, ), - SnapshotType::IncrementalSnapshot(incremental_snapshot_base_slot) => { + SnapshotKind::IncrementalSnapshot(incremental_snapshot_base_slot) => { snapshot_storages.retain(|storage| storage.slot() > incremental_snapshot_base_slot); assert!( snapshot_storages.iter().all(|storage| storage.slot() > incremental_snapshot_base_slot), @@ -296,7 +296,7 @@ impl SnapshotPackage { bank_snapshot_dir: snapshot_info.bank_snapshot_dir, snapshot_storages, snapshot_version: snapshot_info.snapshot_version, - snapshot_type, + snapshot_kind, enqueued: Instant::now(), } } @@ -305,7 +305,7 @@ impl SnapshotPackage { impl std::fmt::Debug for SnapshotPackage { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { f.debug_struct("SnapshotPackage") - .field("type", &self.snapshot_type) + .field("type", &self.snapshot_kind) .field("slot", &self.slot()) .field("block_height", &self.block_height) .finish_non_exhaustive() @@ -318,20 +318,20 @@ impl SnapshotArchiveInfoGetter for SnapshotPackage { } } -/// Snapshots come in two flavors, Full and Incremental. The IncrementalSnapshot has a Slot field, +/// Snapshots come in two kinds, Full and Incremental. The IncrementalSnapshot has a Slot field, /// which is the incremental snapshot base slot. #[derive(Clone, Copy, Debug, Eq, PartialEq)] -pub enum SnapshotType { +pub enum SnapshotKind { FullSnapshot, IncrementalSnapshot(Slot), } -impl SnapshotType { +impl SnapshotKind { pub fn is_full_snapshot(&self) -> bool { - matches!(self, SnapshotType::FullSnapshot) + matches!(self, SnapshotKind::FullSnapshot) } pub fn is_incremental_snapshot(&self) -> bool { - matches!(self, SnapshotType::IncrementalSnapshot(_)) + matches!(self, SnapshotKind::IncrementalSnapshot(_)) } } diff --git a/runtime/src/snapshot_package/compare.rs b/runtime/src/snapshot_package/compare.rs index 8b8adce91..8df5304ad 100644 --- a/runtime/src/snapshot_package/compare.rs +++ b/runtime/src/snapshot_package/compare.rs @@ -1,7 +1,7 @@ use { super::{ - AccountsPackage, AccountsPackageType, SnapshotArchiveInfoGetter, SnapshotPackage, - SnapshotType, + AccountsPackage, AccountsPackageType, SnapshotArchiveInfoGetter, SnapshotKind, + SnapshotPackage, }, std::cmp::Ordering::{self, Equal, Greater, Less}, }; @@ -9,7 +9,7 @@ use { /// Compare snapshot packages by priority; first by type, then by slot #[must_use] pub fn cmp_snapshot_packages_by_priority(a: &SnapshotPackage, b: &SnapshotPackage) -> Ordering { - cmp_snapshot_types_by_priority(&a.snapshot_type, &b.snapshot_type).then(a.slot().cmp(&b.slot())) + cmp_snapshot_kinds_by_priority(&a.snapshot_kind, &b.snapshot_kind).then(a.slot().cmp(&b.slot())) } /// Compare accounts packages by priority; first by type, then by slot @@ -27,7 +27,7 @@ pub fn cmp_accounts_packages_by_priority(a: &AccountsPackage, b: &AccountsPackag /// - Incremental Snapshot /// - Accounts Hash Verifier /// -/// If two `Snapshot`s are compared, their snapshot types are the tiebreaker. +/// If two `Snapshot`s are compared, their snapshot kinds are the tiebreaker. #[must_use] pub fn cmp_accounts_package_types_by_priority( a: &AccountsPackageType, @@ -41,8 +41,8 @@ pub fn cmp_accounts_package_types_by_priority( (_, EpochAccountsHash) => Less, // Snapshot packages - (Snapshot(snapshot_type_a), Snapshot(snapshot_type_b)) => { - cmp_snapshot_types_by_priority(snapshot_type_a, snapshot_type_b) + (Snapshot(snapshot_kind_a), Snapshot(snapshot_kind_b)) => { + cmp_snapshot_kinds_by_priority(snapshot_kind_a, snapshot_kind_b) } (Snapshot(_), _) => Greater, (_, Snapshot(_)) => Less, @@ -52,13 +52,13 @@ pub fn cmp_accounts_package_types_by_priority( } } -/// Compare snapshot types by priority +/// Compare snapshot kinds by priority /// /// Full snapshots are higher in priority than incremental snapshots. /// If two `IncrementalSnapshot`s are compared, their base slots are the tiebreaker. #[must_use] -pub fn cmp_snapshot_types_by_priority(a: &SnapshotType, b: &SnapshotType) -> Ordering { - use SnapshotType::*; +pub fn cmp_snapshot_kinds_by_priority(a: &SnapshotKind, b: &SnapshotKind) -> Ordering { + use SnapshotKind::*; match (a, b) { (FullSnapshot, FullSnapshot) => Equal, (FullSnapshot, IncrementalSnapshot(_)) => Greater, @@ -84,7 +84,7 @@ mod tests { #[test] fn test_cmp_snapshot_packages_by_priority() { - fn new(snapshot_type: SnapshotType, slot: Slot) -> SnapshotPackage { + fn new(snapshot_kind: SnapshotKind, slot: Slot) -> SnapshotPackage { SnapshotPackage { snapshot_archive_info: SnapshotArchiveInfo { path: PathBuf::default(), @@ -96,60 +96,60 @@ mod tests { bank_snapshot_dir: PathBuf::default(), snapshot_storages: Vec::default(), snapshot_version: SnapshotVersion::default(), - snapshot_type, + snapshot_kind, enqueued: Instant::now(), } } for (snapshot_package_a, snapshot_package_b, expected_result) in [ ( - new(SnapshotType::FullSnapshot, 11), - new(SnapshotType::FullSnapshot, 22), + new(SnapshotKind::FullSnapshot, 11), + new(SnapshotKind::FullSnapshot, 22), Less, ), ( - new(SnapshotType::FullSnapshot, 22), - new(SnapshotType::FullSnapshot, 22), + new(SnapshotKind::FullSnapshot, 22), + new(SnapshotKind::FullSnapshot, 22), Equal, ), ( - new(SnapshotType::FullSnapshot, 33), - new(SnapshotType::FullSnapshot, 22), + new(SnapshotKind::FullSnapshot, 33), + new(SnapshotKind::FullSnapshot, 22), Greater, ), ( - new(SnapshotType::FullSnapshot, 22), - new(SnapshotType::IncrementalSnapshot(88), 99), + new(SnapshotKind::FullSnapshot, 22), + new(SnapshotKind::IncrementalSnapshot(88), 99), Greater, ), ( - new(SnapshotType::IncrementalSnapshot(11), 55), - new(SnapshotType::IncrementalSnapshot(22), 55), + new(SnapshotKind::IncrementalSnapshot(11), 55), + new(SnapshotKind::IncrementalSnapshot(22), 55), Less, ), ( - new(SnapshotType::IncrementalSnapshot(22), 55), - new(SnapshotType::IncrementalSnapshot(22), 55), + new(SnapshotKind::IncrementalSnapshot(22), 55), + new(SnapshotKind::IncrementalSnapshot(22), 55), Equal, ), ( - new(SnapshotType::IncrementalSnapshot(33), 55), - new(SnapshotType::IncrementalSnapshot(22), 55), + new(SnapshotKind::IncrementalSnapshot(33), 55), + new(SnapshotKind::IncrementalSnapshot(22), 55), Greater, ), ( - new(SnapshotType::IncrementalSnapshot(22), 44), - new(SnapshotType::IncrementalSnapshot(22), 55), + new(SnapshotKind::IncrementalSnapshot(22), 44), + new(SnapshotKind::IncrementalSnapshot(22), 55), Less, ), ( - new(SnapshotType::IncrementalSnapshot(22), 55), - new(SnapshotType::IncrementalSnapshot(22), 55), + new(SnapshotKind::IncrementalSnapshot(22), 55), + new(SnapshotKind::IncrementalSnapshot(22), 55), Equal, ), ( - new(SnapshotType::IncrementalSnapshot(22), 66), - new(SnapshotType::IncrementalSnapshot(22), 55), + new(SnapshotKind::IncrementalSnapshot(22), 66), + new(SnapshotKind::IncrementalSnapshot(22), 55), Greater, ), ] { @@ -189,7 +189,7 @@ mod tests { ( new(AccountsPackageType::EpochAccountsHash, 123), new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 123, ), Greater, @@ -197,7 +197,7 @@ mod tests { ( new(AccountsPackageType::EpochAccountsHash, 123), new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 123, ), Greater, @@ -209,7 +209,7 @@ mod tests { ), ( new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 123, ), new(AccountsPackageType::EpochAccountsHash, 123), @@ -217,51 +217,51 @@ mod tests { ), ( new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 11, ), new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 22, ), Less, ), ( new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 22, ), new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 22, ), Equal, ), ( new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 33, ), new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 22, ), Greater, ), ( new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 123, ), new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 123, ), Greater, ), ( new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 123, ), new(AccountsPackageType::AccountsHashVerifier, 123), @@ -269,7 +269,7 @@ mod tests { ), ( new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 123, ), new(AccountsPackageType::EpochAccountsHash, 123), @@ -277,73 +277,73 @@ mod tests { ), ( new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 123, ), new( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), 123, ), Less, ), ( new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 123, ), new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(6)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(6)), 123, ), Less, ), ( new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 11, ), new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 22, ), Less, ), ( new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 22, ), new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 22, ), Equal, ), ( new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 33, ), new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 22, ), Greater, ), ( new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 123, ), new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(4)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(4)), 123, ), Greater, ), ( new( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), 123, ), new(AccountsPackageType::AccountsHashVerifier, 123), @@ -381,12 +381,12 @@ mod tests { ), ( AccountsPackageType::EpochAccountsHash, - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), Greater, ), ( AccountsPackageType::EpochAccountsHash, - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), Greater, ), ( @@ -395,52 +395,52 @@ mod tests { Greater, ), ( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), AccountsPackageType::EpochAccountsHash, Less, ), ( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), Equal, ), ( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), Greater, ), ( - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), AccountsPackageType::AccountsHashVerifier, Greater, ), ( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), AccountsPackageType::EpochAccountsHash, Less, ), ( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), - AccountsPackageType::Snapshot(SnapshotType::FullSnapshot), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::FullSnapshot), Less, ), ( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(6)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(6)), Less, ), ( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), Equal, ), ( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(4)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(4)), Greater, ), ( - AccountsPackageType::Snapshot(SnapshotType::IncrementalSnapshot(5)), + AccountsPackageType::Snapshot(SnapshotKind::IncrementalSnapshot(5)), AccountsPackageType::AccountsHashVerifier, Greater, ), @@ -459,40 +459,40 @@ mod tests { } #[test] - fn test_cmp_snapshot_types_by_priority() { - for (snapshot_type_a, snapshot_type_b, expected_result) in [ + fn test_cmp_snapshot_kinds_by_priority() { + for (snapshot_kind_a, snapshot_kind_b, expected_result) in [ ( - SnapshotType::FullSnapshot, - SnapshotType::FullSnapshot, + SnapshotKind::FullSnapshot, + SnapshotKind::FullSnapshot, Equal, ), ( - SnapshotType::FullSnapshot, - SnapshotType::IncrementalSnapshot(5), + SnapshotKind::FullSnapshot, + SnapshotKind::IncrementalSnapshot(5), Greater, ), ( - SnapshotType::IncrementalSnapshot(5), - SnapshotType::FullSnapshot, + SnapshotKind::IncrementalSnapshot(5), + SnapshotKind::FullSnapshot, Less, ), ( - SnapshotType::IncrementalSnapshot(5), - SnapshotType::IncrementalSnapshot(6), + SnapshotKind::IncrementalSnapshot(5), + SnapshotKind::IncrementalSnapshot(6), Less, ), ( - SnapshotType::IncrementalSnapshot(5), - SnapshotType::IncrementalSnapshot(5), + SnapshotKind::IncrementalSnapshot(5), + SnapshotKind::IncrementalSnapshot(5), Equal, ), ( - SnapshotType::IncrementalSnapshot(5), - SnapshotType::IncrementalSnapshot(4), + SnapshotKind::IncrementalSnapshot(5), + SnapshotKind::IncrementalSnapshot(4), Greater, ), ] { - let actual_result = cmp_snapshot_types_by_priority(&snapshot_type_a, &snapshot_type_b); + let actual_result = cmp_snapshot_kinds_by_priority(&snapshot_kind_a, &snapshot_kind_b); assert_eq!(expected_result, actual_result); } } diff --git a/runtime/src/snapshot_utils.rs b/runtime/src/snapshot_utils.rs index 22738cfc8..39d00d368 100644 --- a/runtime/src/snapshot_utils.rs +++ b/runtime/src/snapshot_utils.rs @@ -846,7 +846,7 @@ pub fn archive_snapshot_package( ), ("duration_ms", timer.as_ms(), i64), ( - if snapshot_package.snapshot_type.is_full_snapshot() { + if snapshot_package.snapshot_kind.is_full_snapshot() { "full-snapshot-archive-size" } else { "incremental-snapshot-archive-size" diff --git a/validator/src/bootstrap.rs b/validator/src/bootstrap.rs index a94256489..392db51fb 100644 --- a/validator/src/bootstrap.rs +++ b/validator/src/bootstrap.rs @@ -16,7 +16,7 @@ use { solana_metrics::datapoint_info, solana_rpc_client::rpc_client::RpcClient, solana_runtime::{ - snapshot_archive_info::SnapshotArchiveInfoGetter, snapshot_package::SnapshotType, + snapshot_archive_info::SnapshotArchiveInfoGetter, snapshot_package::SnapshotKind, snapshot_utils, }, solana_sdk::{ @@ -1176,7 +1176,7 @@ fn download_snapshots( download_abort_count, rpc_contact_info, full_snapshot_hash, - SnapshotType::FullSnapshot, + SnapshotKind::FullSnapshot, )?; } @@ -1208,7 +1208,7 @@ fn download_snapshots( download_abort_count, rpc_contact_info, incremental_snapshot_hash, - SnapshotType::IncrementalSnapshot(full_snapshot_hash.0), + SnapshotKind::IncrementalSnapshot(full_snapshot_hash.0), )?; } } @@ -1231,7 +1231,7 @@ fn download_snapshot( download_abort_count: &mut u64, rpc_contact_info: &ContactInfo, desired_snapshot_hash: (Slot, Hash), - snapshot_type: SnapshotType, + snapshot_kind: SnapshotKind, ) -> Result<(), String> { let maximum_full_snapshot_archives_to_retain = validator_config .snapshot_config @@ -1253,7 +1253,7 @@ fn download_snapshot( full_snapshot_archives_dir, incremental_snapshot_archives_dir, desired_snapshot_hash, - snapshot_type, + snapshot_kind, maximum_full_snapshot_archives_to_retain, maximum_incremental_snapshot_archives_to_retain, use_progress_bar,