Fix stale gossip entrypoint (#8053)
This commit is contained in:
parent
2226c1b75c
commit
fd207b6907
|
@ -38,6 +38,7 @@ impl ClusterValidatorInfo {
|
|||
pub trait Cluster {
|
||||
fn get_node_pubkeys(&self) -> Vec<Pubkey>;
|
||||
fn get_validator_client(&self, pubkey: &Pubkey) -> Option<ThinClient>;
|
||||
fn get_contact_info(&self, pubkey: &Pubkey) -> Option<&ContactInfo>;
|
||||
fn exit_node(&mut self, pubkey: &Pubkey) -> ClusterValidatorInfo;
|
||||
fn restart_node(&mut self, pubkey: &Pubkey, cluster_validator_info: ClusterValidatorInfo);
|
||||
fn exit_restart_node(&mut self, pubkey: &Pubkey, config: ValidatorConfig);
|
||||
|
|
|
@ -705,6 +705,10 @@ impl Cluster for LocalCluster {
|
|||
cluster_validator_info.config = validator_config;
|
||||
self.restart_node(pubkey, cluster_validator_info);
|
||||
}
|
||||
|
||||
fn get_contact_info(&self, pubkey: &Pubkey) -> Option<&ContactInfo> {
|
||||
self.validators.get(pubkey).map(|v| &v.info.contact_info)
|
||||
}
|
||||
}
|
||||
|
||||
impl Drop for LocalCluster {
|
||||
|
|
|
@ -662,8 +662,11 @@ fn test_snapshot_restart_tower() {
|
|||
cluster.restart_node(&validator_id, validator_info);
|
||||
|
||||
// Test cluster can still make progress and get confirmations in tower
|
||||
// Use the restarted node as the discovery point so that we get updated
|
||||
// validator's ContactInfo
|
||||
let restarted_node_info = cluster.get_contact_info(&validator_id).unwrap();
|
||||
cluster_tests::spend_and_verify_all_nodes(
|
||||
&cluster.entry_point_info,
|
||||
&restarted_node_info,
|
||||
&cluster.funding_keypair,
|
||||
1,
|
||||
HashSet::new(),
|
||||
|
|
Loading…
Reference in New Issue