Add move mode to bench-tps (bp #5250) (#5310)

automerge
This commit is contained in:
mergify[bot]
2019-07-27 17:51:12 -07:00
committed by Grimes
parent 3c6115c94a
commit 4889c2a29c
7 changed files with 279 additions and 40 deletions

View File

@@ -69,6 +69,9 @@ solana-storage-program = { path = "../programs/storage_program", version = "0.17
solana-vote-api = { path = "../programs/vote_api", version = "0.17.0" }
solana-vote-program = { path = "../programs/vote_program", version = "0.17.0" }
solana-vote-signer = { path = "../vote-signer", version = "0.17.0" }
solana-move-loader-program = { path = "../programs/move_loader_program", version = "0.17.0" }
solana-move-loader-api = { path = "../programs/move_loader_api", version = "0.17.0" }
solana-librapay-api = { path = "../programs/librapay_api", version = "0.17.0" }
sys-info = "0.5.7"
tokio = "0.1"
tokio-codec = "0.1"

View File

@@ -101,3 +101,6 @@ extern crate solana_metrics;
extern crate matches;
extern crate crossbeam_channel;
#[macro_use]
extern crate solana_move_loader_program;

View File

@@ -29,6 +29,9 @@ use std::fs::remove_dir_all;
use std::io::{Error, ErrorKind, Result};
use std::sync::Arc;
use solana_librapay_api::librapay_transaction;
use solana_move_loader_api;
pub struct ValidatorInfo {
pub keypair: Arc<Keypair>,
pub voting_keypair: Arc<Keypair>,
@@ -115,6 +118,7 @@ pub struct LocalCluster {
pub genesis_block: GenesisBlock,
replicators: Vec<Replicator>,
pub replicator_infos: HashMap<Pubkey, ReplicatorInfo>,
pub libra_mint_keypair: Arc<Keypair>,
}
impl LocalCluster {
@@ -161,13 +165,22 @@ impl LocalCluster {
storage_keypair.pubkey(),
storage_contract::create_validator_storage_account(leader_pubkey, 1),
));
let libra_mint_keypair = Keypair::new();
genesis_block.accounts.push((
libra_mint_keypair.pubkey(),
librapay_transaction::create_libra_genesis_account(10_000),
));
genesis_block
.native_instruction_processors
.push(solana_storage_program!());
genesis_block
.native_instruction_processors
.push(solana_move_loader_program!());
let (leader_ledger_path, _blockhash) = create_new_tmp_ledger!(&genesis_block);
let leader_contact_info = leader_node.info.clone();
let leader_storage_keypair = Arc::new(storage_keypair);
let libra_mint_keypair = Arc::new(libra_mint_keypair);
let leader_voting_keypair = Arc::new(voting_keypair);
let leader_server = Validator::new(
leader_node,
@@ -206,6 +219,7 @@ impl LocalCluster {
fullnode_infos,
replicator_infos: HashMap::new(),
listener_infos: HashMap::new(),
libra_mint_keypair,
};
for (stake, validator_config) in (&config.node_stakes[1..])