solana/core/src
behzad nouri 7a789e0763
filters for recent contact-infos when checking for live stake (#19204)
Contact-infos are saved to disk:
https://github.com/solana-labs/solana/blob/9dfeee299/gossip/src/cluster_info.rs#L1678-L1683

and restored on validator start-up:
https://github.com/solana-labs/solana/blob/9dfeee299/core/src/validator.rs#L450

Staked nodes entries will not expire until an epoch after. So when the
validator checks for online stake it is erroneously picking up
contact-infos restored from disk, which breaks the entire
wait-for-supermajority logic:
https://github.com/solana-labs/solana/blob/9dfeee299/core/src/validator.rs#L1515-L1561

This commit adds an extra check for the age of contact-info entries and
filters out old ones.
2021-08-13 12:12:40 +00:00
..
broadcast_stage falls back on working-bank if root-bank::epoch-staked-nodes is none 2021-08-05 21:47:33 +00:00
accounts_hash_verifier.rs Pass SnapshotConfig to AccountsHashVerifier (#19154) 2021-08-10 14:02:34 -05:00
ancestor_hashes_service.rs Actively manage dead slots in AncestorHashesService (#18912) 2021-08-02 14:33:28 -07:00
banking_stage.rs add _for_tests to new_no_wallclock_throttle (#19086) 2021-08-05 14:50:25 -05:00
broadcast_stage.rs uses cluster-nodes cache in broadcast-stage 2021-08-05 21:47:33 +00:00
cache_block_meta_service.rs Add block height to ConfirmedBlock structs (#17523) 2021-05-26 22:16:16 -06:00
cluster_info_vote_listener.rs for all tests, bank::new -> bank::new_for_tests (#19064) 2021-08-05 08:42:38 -05:00
cluster_nodes.rs falls back on working-bank if root-bank::epoch-staked-nodes is none 2021-08-05 21:47:33 +00:00
cluster_slot_state_verifier.rs Plumb signal from replay to ancestor hashes service (#18880) 2021-07-26 20:59:00 -07:00
cluster_slots.rs updates cluster-slots with root-bank instead of root-slot + bank-forks 2021-08-05 14:43:06 +00:00
cluster_slots_service.rs updates cluster-slots with root-bank instead of root-slot + bank-forks 2021-08-05 14:43:06 +00:00
commitment_service.rs for all tests, bank::new -> bank::new_for_tests (#19064) 2021-08-05 08:42:38 -05:00
completed_data_sets_service.rs Move entry/poh to own crate to speed up poh bench build (#18225) 2021-07-14 14:16:29 +02:00
consensus.rs Move tower storage into its own module 2021-08-11 00:20:46 -07:00
cost_model.rs Reject blocks for costs above the max block cost (#18994) 2021-08-12 10:48:47 -05:00
cost_tracker.rs add _for_tests to new_no_wallclock_throttle (#19086) 2021-08-05 14:50:25 -05:00
cost_update_service.rs Cost model uses compute_unit to replace microsecond as cost unit (#18934) 2021-07-29 22:19:36 +00:00
duplicate_repair_status.rs Actively manage dead slots in AncestorHashesService (#18912) 2021-08-02 14:33:28 -07:00
execute_cost_table.rs cost model nits (#18528) 2021-07-09 12:55:31 -07:00
fetch_stage.rs Drop Error suffix from enum values to avoid the enum_variant_names clippy lint 2021-06-18 23:02:13 +00:00
fork_choice.rs Add frozen hashes and marking DuplicateConfirmed in blockstore to state machine (#18648) 2021-07-18 17:04:25 -07:00
gen_keys.rs
heaviest_subtree_fork_choice.rs add _for_tests to setup_bank_and_vote_pubkeys (#19060) 2021-08-05 08:43:35 -05:00
latest_validator_votes_for_frozen_banks.rs Introduce slot dumping to ReplayStage (#18160) 2021-07-08 19:07:32 -07:00
ledger_cleanup_service.rs chore: cargo +nightly clippy --fix -Z unstable-options 2021-06-18 10:42:46 -07:00
lib.rs Move tower storage into its own module 2021-08-11 00:20:46 -07:00
optimistic_confirmation_verifier.rs Actively manage dead slots in AncestorHashesService (#18912) 2021-08-02 14:33:28 -07:00
outstanding_requests.rs Introduce AncestorHashesService (#18812) 2021-07-23 16:54:47 -07:00
packet_hasher.rs
progress_map.rs renames solana_runtime::vote_account::VoteAccount 2021-08-10 22:54:17 +00:00
repair_response.rs Add AncestorHashesRepair type (#18681) 2021-07-15 19:29:53 -07:00
repair_service.rs allows sendmmsg api taking owned values (as well as references) (#18999) 2021-07-30 20:58:49 +00:00
repair_weight.rs add _for_tests to setup_bank_and_vote_pubkeys (#19060) 2021-08-05 08:43:35 -05:00
repair_weighted_traversal.rs add _for_tests to setup_bank_and_vote_pubkeys (#19060) 2021-08-05 08:43:35 -05:00
replay_stage.rs Reject blocks for costs above the max block cost (#18994) 2021-08-12 10:48:47 -05:00
request_response.rs Add non-default repair nonce values (#16512) 2021-04-20 09:37:33 -07:00
result.rs Drop Error suffix from enum values to avoid the enum_variant_names clippy lint 2021-06-18 23:02:13 +00:00
retransmit_stage.rs falls back on working-bank if root-bank::epoch-staked-nodes is none 2021-08-05 21:47:33 +00:00
rewards_recorder_service.rs Record vote account commission with voting/staking rewards and surface in RPC 2021-07-12 15:09:44 -07:00
sample_performance_service.rs
serve_repair.rs Actively manage dead slots in AncestorHashesService (#18912) 2021-08-02 14:33:28 -07:00
serve_repair_service.rs adds validator flag to allow private ip addresses (#18850) 2021-07-23 15:25:03 +00:00
shred_fetch_stage.rs chore: cargo +nightly clippy --fix -Z unstable-options 2021-06-18 10:42:46 -07:00
sigverify.rs Revert "Add limit and shrink policy for recycler (#15320)" 2021-04-18 19:29:24 +00:00
sigverify_shreds.rs for all tests, bank::new -> bank::new_for_tests (#19064) 2021-08-05 08:42:38 -05:00
sigverify_stage.rs sends packets in batches from sigverify-stage (#18446) 2021-07-22 14:49:21 +00:00
snapshot_packager_service.rs Move SnapshotArchiveInfo and friends into its own module (#19114) 2021-08-08 07:57:06 -05:00
test_validator.rs `solana-test-validator` now uses FileTowerStorage 2021-08-11 00:20:46 -07:00
tower_storage.rs `solana-test-validator` now uses FileTowerStorage 2021-08-11 00:20:46 -07:00
tpu.rs generate deterministic seeds for shreds (#17950) 2021-07-07 08:21:12 -07:00
tree_diff.rs Allow fork choice to support multiple versions of a slot (#16266) 2021-04-12 01:00:59 -07:00
tvu.rs Move tower storage into its own module 2021-08-11 00:20:46 -07:00
unfrozen_gossip_verified_vote_hashes.rs Introduce slot dumping to ReplayStage (#18160) 2021-07-08 19:07:32 -07:00
validator.rs filters for recent contact-infos when checking for live stake (#19204) 2021-08-13 12:12:40 +00:00
verified_vote_packets.rs Drop Error suffix from enum values to avoid the enum_variant_names clippy lint 2021-06-18 23:02:13 +00:00
vote_simulator.rs introduce Bank::new_for_tests (#19062) 2021-08-04 15:06:57 -05:00
vote_stake_tracker.rs Setup ReplayStage confirmation scaffolding for duplicate slots (#9698) 2021-03-24 23:41:52 -07:00
voting_service.rs Move tower storage into its own module 2021-08-11 00:20:46 -07:00
window_service.rs for all tests, bank::new -> bank::new_for_tests (#19064) 2021-08-05 08:42:38 -05:00