Rename VoteSignerProxy to VotingKeypair

Works just like a normal Keypair, but will only sign voting
transactions.
This commit is contained in:
Greg Fitzgerald
2019-01-31 21:12:51 -07:00
parent 9a4abe96c7
commit 82a2080e45
11 changed files with 166 additions and 160 deletions

View File

@ -17,7 +17,7 @@ use solana::service::Service;
use solana::thin_client::{poll_gossip_for_leader, retry_get_balance, ThinClient};
use solana::tpu::TpuReturnType;
use solana::tvu::TvuReturnType;
use solana::vote_signer_proxy::VoteSignerProxy;
use solana::voting_keypair::VotingKeypair;
use solana_sdk::hash::Hash;
use solana_sdk::pubkey::Pubkey;
use solana_sdk::signature::{Keypair, KeypairUtil};
@ -154,7 +154,7 @@ fn test_multi_node_ledger_window() -> result::Result<()> {
.unwrap();
}
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let leader = Fullnode::new(
leader,
&leader_keypair,
@ -162,7 +162,7 @@ fn test_multi_node_ledger_window() -> result::Result<()> {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
None,
&FullnodeConfig::default(),
);
@ -173,7 +173,7 @@ fn test_multi_node_ledger_window() -> result::Result<()> {
let validator_pubkey = keypair.pubkey().clone();
let validator = Node::new_localhost_with_pubkey(keypair.pubkey());
let validator_data = validator.info.clone();
let signer_proxy = VoteSignerProxy::new_local(&keypair);
let voting_keypair = VotingKeypair::new_local(&keypair);
let validator = Fullnode::new(
validator,
&keypair,
@ -181,7 +181,7 @@ fn test_multi_node_ledger_window() -> result::Result<()> {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
Some(&leader_data),
&FullnodeConfig::default(),
);
@ -257,7 +257,7 @@ fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> {
"multi_node_validator_catchup_from_zero",
);
ledger_paths.push(leader_ledger_path.clone());
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let server = Fullnode::new(
leader,
&leader_keypair,
@ -265,7 +265,7 @@ fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
None,
&FullnodeConfig::default(),
);
@ -290,7 +290,7 @@ fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> {
validator_pubkey, validator_balance
);
let signer_proxy = VoteSignerProxy::new_local(&keypair);
let voting_keypair = VotingKeypair::new_local(&keypair);
let val = Fullnode::new(
validator,
&keypair,
@ -298,7 +298,7 @@ fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
Some(&leader_data),
&FullnodeConfig::default(),
);
@ -350,7 +350,7 @@ fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> {
let keypair = Arc::new(Keypair::new());
let validator_pubkey = keypair.pubkey().clone();
let validator = Node::new_localhost_with_pubkey(keypair.pubkey());
let signer_proxy = VoteSignerProxy::new_local(&keypair);
let voting_keypair = VotingKeypair::new_local(&keypair);
info!("created start from zero validator {:?}", validator_pubkey);
let val = Fullnode::new(
@ -360,7 +360,7 @@ fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
Some(&leader_data),
&FullnodeConfig::default(),
);
@ -441,7 +441,7 @@ fn test_multi_node_basic() {
let leader_ledger_path = tmp_copy_ledger(&genesis_ledger_path, "multi_node_basic");
ledger_paths.push(leader_ledger_path.clone());
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let server = Fullnode::new(
leader,
&leader_keypair,
@ -449,7 +449,7 @@ fn test_multi_node_basic() {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
None,
&FullnodeConfig::default(),
);
@ -470,7 +470,7 @@ fn test_multi_node_basic() {
"validator {}, balance {}",
validator_pubkey, validator_balance
);
let signer_proxy = VoteSignerProxy::new_local(&keypair);
let voting_keypair = VotingKeypair::new_local(&keypair);
let val = Fullnode::new(
validator,
&keypair,
@ -478,7 +478,7 @@ fn test_multi_node_basic() {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
Some(&leader_data),
&FullnodeConfig::default(),
);
@ -549,7 +549,7 @@ fn test_boot_validator_from_file() -> result::Result<()> {
ledger_paths.push(leader_ledger_path.clone());
let leader_data = leader.info.clone();
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let leader_fullnode = Fullnode::new(
leader,
&leader_keypair,
@ -557,7 +557,7 @@ fn test_boot_validator_from_file() -> result::Result<()> {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
None,
&FullnodeConfig::default(),
);
@ -573,7 +573,7 @@ fn test_boot_validator_from_file() -> result::Result<()> {
let validator_data = validator.info.clone();
let ledger_path = tmp_copy_ledger(&genesis_ledger_path, "boot_validator_from_file");
ledger_paths.push(ledger_path.clone());
let signer_proxy = VoteSignerProxy::new_local(&keypair);
let voting_keypair = VotingKeypair::new_local(&keypair);
let val_fullnode = Fullnode::new(
validator,
&keypair,
@ -581,7 +581,7 @@ fn test_boot_validator_from_file() -> result::Result<()> {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
Some(&leader_data),
&FullnodeConfig::default(),
);
@ -602,7 +602,7 @@ fn test_boot_validator_from_file() -> result::Result<()> {
fn create_leader(
ledger_path: &str,
leader_keypair: Arc<Keypair>,
signer: VoteSignerProxy,
voting_keypair: VotingKeypair,
) -> (NodeInfo, Fullnode) {
let leader = Node::new_localhost_with_pubkey(leader_keypair.pubkey());
let leader_data = leader.info.clone();
@ -613,7 +613,7 @@ fn create_leader(
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_data.id,
))),
signer,
voting_keypair,
None,
&FullnodeConfig::default(),
);
@ -639,9 +639,9 @@ fn test_leader_restart_validator_start_from_old_ledger() -> result::Result<()> {
let bob_pubkey = Keypair::new().pubkey();
{
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let (leader_data, leader_fullnode) =
create_leader(&ledger_path, leader_keypair.clone(), signer_proxy);
create_leader(&ledger_path, leader_keypair.clone(), voting_keypair);
// lengthen the ledger
let leader_balance =
@ -660,9 +660,9 @@ fn test_leader_restart_validator_start_from_old_ledger() -> result::Result<()> {
);
{
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let (leader_data, leader_fullnode) =
create_leader(&ledger_path, leader_keypair.clone(), signer_proxy);
create_leader(&ledger_path, leader_keypair.clone(), voting_keypair);
// lengthen the ledger
let leader_balance =
@ -674,15 +674,16 @@ fn test_leader_restart_validator_start_from_old_ledger() -> result::Result<()> {
leader_fullnode.close()?;
}
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let (leader_data, leader_fullnode) = create_leader(&ledger_path, leader_keypair, signer_proxy);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let (leader_data, leader_fullnode) =
create_leader(&ledger_path, leader_keypair, voting_keypair);
// start validator from old ledger
let keypair = Arc::new(Keypair::new());
let validator = Node::new_localhost_with_pubkey(keypair.pubkey());
let validator_data = validator.info.clone();
let signer_proxy = VoteSignerProxy::new_local(&keypair);
let voting_keypair = VotingKeypair::new_local(&keypair);
let val_fullnode = Fullnode::new(
validator,
&keypair,
@ -690,7 +691,7 @@ fn test_leader_restart_validator_start_from_old_ledger() -> result::Result<()> {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_data.id,
))),
signer_proxy,
voting_keypair,
Some(&leader_data),
&FullnodeConfig::default(),
);
@ -755,7 +756,7 @@ fn test_multi_node_dynamic_network() {
let leader_ledger_path = tmp_copy_ledger(&genesis_ledger_path, "multi_node_dynamic_network");
ledger_paths.push(leader_ledger_path.clone());
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let server = Fullnode::new(
leader,
&leader_keypair,
@ -763,7 +764,7 @@ fn test_multi_node_dynamic_network() {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
None,
&FullnodeConfig::default(),
);
@ -829,7 +830,7 @@ fn test_multi_node_dynamic_network() {
let rd = validator.info.clone();
info!("starting {} {}", keypair.pubkey(), rd.id);
let keypair = Arc::new(keypair);
let signer_proxy = VoteSignerProxy::new_local(&keypair);
let voting_keypair = VotingKeypair::new_local(&keypair);
let val = Fullnode::new(
validator,
&keypair,
@ -837,7 +838,7 @@ fn test_multi_node_dynamic_network() {
Arc::new(RwLock::new(LeaderScheduler::from_bootstrap_leader(
leader_pubkey,
))),
signer_proxy,
voting_keypair,
Some(&leader_data),
&FullnodeConfig::default(),
);
@ -1006,13 +1007,13 @@ fn test_leader_to_validator_transition() {
bootstrap_height,
);
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let mut leader = Fullnode::new(
leader_node,
&leader_keypair,
&leader_ledger_path,
Arc::new(RwLock::new(LeaderScheduler::new(&leader_scheduler_config))),
signer_proxy,
voting_keypair,
Some(&leader_info),
&FullnodeConfig::default(),
);
@ -1155,25 +1156,25 @@ fn test_leader_validator_basic() {
);
// Start the validator node
let signer_proxy = VoteSignerProxy::new_local(&validator_keypair);
let voting_keypair = VotingKeypair::new_local(&validator_keypair);
let mut validator = Fullnode::new(
validator_node,
&validator_keypair,
&validator_ledger_path,
Arc::new(RwLock::new(LeaderScheduler::new(&leader_scheduler_config))),
signer_proxy,
voting_keypair,
Some(&leader_info),
&FullnodeConfig::default(),
);
// Start the leader fullnode
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let mut leader = Fullnode::new(
leader_node,
&leader_keypair,
&leader_ledger_path,
Arc::new(RwLock::new(LeaderScheduler::new(&leader_scheduler_config))),
signer_proxy,
voting_keypair,
Some(&leader_info),
&FullnodeConfig::default(),
);
@ -1349,7 +1350,7 @@ fn test_dropped_handoff_recovery() {
info!("bootstrap_leader: {}", bootstrap_leader_keypair.pubkey());
info!("'next leader': {}", next_leader_keypair.pubkey());
let signer_proxy = VoteSignerProxy::new_local(&bootstrap_leader_keypair);
let voting_keypair = VotingKeypair::new_local(&bootstrap_leader_keypair);
// Start up the bootstrap leader fullnode
let bootstrap_leader_ledger_path =
tmp_copy_ledger(&genesis_ledger_path, "test_dropped_handoff_recovery");
@ -1359,7 +1360,7 @@ fn test_dropped_handoff_recovery() {
&bootstrap_leader_keypair,
&bootstrap_leader_ledger_path,
Arc::new(RwLock::new(LeaderScheduler::new(&leader_scheduler_config))),
signer_proxy,
voting_keypair,
Some(&bootstrap_leader_info),
&FullnodeConfig::default(),
);
@ -1375,13 +1376,13 @@ fn test_dropped_handoff_recovery() {
let validator_id = keypair.pubkey();
info!("validator {}: {}", i, validator_id);
let validator_node = Node::new_localhost_with_pubkey(validator_id);
let signer_proxy = VoteSignerProxy::new_local(&keypair);
let voting_keypair = VotingKeypair::new_local(&keypair);
let validator = Fullnode::new(
validator_node,
&keypair,
&validator_ledger_path,
Arc::new(RwLock::new(LeaderScheduler::new(&leader_scheduler_config))),
signer_proxy,
voting_keypair,
Some(&bootstrap_leader_info),
&FullnodeConfig::default(),
);
@ -1401,13 +1402,13 @@ fn test_dropped_handoff_recovery() {
info!("Starting the 'next leader' node");
let next_leader_node = Node::new_localhost_with_pubkey(next_leader_keypair.pubkey());
let signer_proxy = VoteSignerProxy::new_local(&next_leader_keypair);
let voting_keypair = VotingKeypair::new_local(&next_leader_keypair);
let next_leader = Fullnode::new(
next_leader_node,
&next_leader_keypair,
&next_leader_ledger_path,
Arc::new(RwLock::new(LeaderScheduler::new(&leader_scheduler_config))),
signer_proxy,
voting_keypair,
Some(&bootstrap_leader_info),
&FullnodeConfig::default(),
);
@ -1537,7 +1538,7 @@ fn test_full_leader_validator_network() {
let validator_id = kp.pubkey();
let validator_node = Node::new_localhost_with_pubkey(validator_id);
let signer_proxy = VoteSignerProxy::new_local(&kp);
let voting_keypair = VotingKeypair::new_local(&kp);
let leader_scheduler =
Arc::new(RwLock::new(LeaderScheduler::new(&leader_scheduler_config)));
let validator = Fullnode::new(
@ -1545,7 +1546,7 @@ fn test_full_leader_validator_network() {
&kp,
&validator_ledger_path,
leader_scheduler.clone(),
signer_proxy,
voting_keypair,
Some(&bootstrap_leader_info),
&FullnodeConfig::default(),
);
@ -1555,14 +1556,14 @@ fn test_full_leader_validator_network() {
}
info!("Start up the bootstrap leader");
let signer_proxy = VoteSignerProxy::new_local(&leader_keypair);
let voting_keypair = VotingKeypair::new_local(&leader_keypair);
let leader_scheduler = Arc::new(RwLock::new(LeaderScheduler::new(&leader_scheduler_config)));
let bootstrap_leader = Fullnode::new(
bootstrap_leader_node,
&leader_keypair,
&bootstrap_leader_ledger_path,
leader_scheduler.clone(),
signer_proxy,
voting_keypair,
Some(&bootstrap_leader_info),
&FullnodeConfig::default(),
);
@ -1733,13 +1734,13 @@ fn test_broadcast_last_tick() {
// Start up the bootstrap leader fullnode
let bootstrap_leader_keypair = Arc::new(bootstrap_leader_keypair);
let signer_proxy = VoteSignerProxy::new_local(&bootstrap_leader_keypair);
let voting_keypair = VotingKeypair::new_local(&bootstrap_leader_keypair);
let mut bootstrap_leader = Fullnode::new(
bootstrap_leader_node,
&bootstrap_leader_keypair,
&bootstrap_leader_ledger_path,
Arc::new(RwLock::new(LeaderScheduler::new(&leader_scheduler_config))),
signer_proxy,
voting_keypair,
Some(&bootstrap_leader_info),
&FullnodeConfig::default(),
);