diff --git a/ledger-tool/src/main.rs b/ledger-tool/src/main.rs index 8dedd83e4..9cc982567 100644 --- a/ledger-tool/src/main.rs +++ b/ledger-tool/src/main.rs @@ -1908,12 +1908,12 @@ fn main() { } } ("verify", Some(arg_matches)) => { - let accounts_index_config = value_t!(arg_matches, "accounts_index_bins", usize) - .ok() - .map(|bins| AccountsIndexConfig { bins: Some(bins) }); - + let mut accounts_index_config = AccountsIndexConfig::default(); + if let Some(bins) = value_t!(matches, "accounts_index_bins", usize).ok() { + accounts_index_config.bins = Some(bins); + } let accounts_db_config = Some(AccountsDbConfig { - index: accounts_index_config, + index: Some(accounts_index_config), accounts_hash_cache_path: Some(ledger_path.clone()), }); diff --git a/runtime/src/accounts_index.rs b/runtime/src/accounts_index.rs index 8324cdbea..21e32a650 100644 --- a/runtime/src/accounts_index.rs +++ b/runtime/src/accounts_index.rs @@ -4112,7 +4112,10 @@ pub mod tests { #[test] #[should_panic(expected = "bins.is_power_of_two()")] + #[allow(clippy::field_reassign_with_default)] fn test_illegal_bins() { - AccountsIndex::::new(Some(AccountsIndexConfig { bins: Some(3) })); + let mut config = AccountsIndexConfig::default(); + config.bins = Some(3); + AccountsIndex::::new(Some(config)); } } diff --git a/validator/src/main.rs b/validator/src/main.rs index e34af4529..ee598272e 100644 --- a/validator/src/main.rs +++ b/validator/src/main.rs @@ -2487,12 +2487,13 @@ pub fn main() { _ => unreachable!(), }; - let accounts_index_config = value_t!(matches, "accounts_index_bins", usize) - .ok() - .map(|bins| AccountsIndexConfig { bins: Some(bins) }); + let mut accounts_index_config = AccountsIndexConfig::default(); + if let Some(bins) = value_t!(matches, "accounts_index_bins", usize).ok() { + accounts_index_config.bins = Some(bins); + } let accounts_db_config = Some(AccountsDbConfig { - index: accounts_index_config, + index: Some(accounts_index_config), accounts_hash_cache_path: Some(ledger_path.clone()), });