minimize the number of places we are calling update_pubkey_cache (#1626)

## Issue Addressed

- Resolves #1080

## Proposed Changes

- Call `update_pubkey_cache` only in the `build_all_caches` method and `get_validator_index` method. 

## Additional Info

This does reduce the number of places the cache is updated, making it simpler. But the `get_validator_index` method is used a couple times when we are iterating through the entire validator registry (or set of active validators). Before, we would only call `update_pubkey_cache` once before iterating through all validators.  So I'm not _totally_ sure this change is worth it.
This commit is contained in:
realbigsean
2020-09-23 01:19:56 +00:00
parent 1801dd1a34
commit b75df29501
6 changed files with 18 additions and 37 deletions

View File

@@ -92,10 +92,6 @@ pub fn post_individual_votes<T: BeaconChainTypes>(
let mut validator_statuses = ValidatorStatuses::new(&state, spec)?;
validator_statuses.process_attestations(&state, spec)?;
state.update_pubkey_cache().map_err(|e| {
ApiError::ServerError(format!("Unable to build pubkey cache: {:?}", e))
})?;
body.pubkeys
.into_iter()
.map(|pubkey| {