Enable system program at SoftLaunch epoch 0 (#7313)

This commit is contained in:
Michael Vines
2019-12-06 23:16:28 -07:00
committed by GitHub
parent c00216e3be
commit 33f7103eae
5 changed files with 41 additions and 13 deletions

View File

@@ -73,17 +73,20 @@ pub fn get_programs(operating_mode: OperatingMode, epoch: Epoch) -> Option<Vec<(
}
OperatingMode::SoftLaunch => {
if epoch == 0 {
// Voting and Staking only at epoch 0
Some(vec![solana_stake_program!(), solana_vote_program!()])
// Voting, Staking and System Program only at epoch 0
Some(vec![
solana_stake_program!(),
solana_system_program(),
solana_vote_program!(),
])
} else if epoch == std::u64::MAX - 1 {
// System program and Archivers are activated next
// Archivers are activated next
//
// The epoch of std::u64::MAX - 1 is a placeholder and is expected to be reduced in
// a future hard fork.
Some(vec![
solana_config_program!(),
solana_storage_program!(),
solana_system_program(),
solana_vest_program!(),
])
} else if epoch == std::u64::MAX {
@@ -165,7 +168,11 @@ mod tests {
fn test_softlaunch_programs() {
assert_eq!(
get_programs(OperatingMode::SoftLaunch, 0),
Some(vec![solana_stake_program!(), solana_vote_program!(),])
Some(vec![
solana_stake_program!(),
solana_system_program(),
solana_vote_program!(),
])
);
assert_eq!(get_programs(OperatingMode::SoftLaunch, 1), None);
assert!(get_programs(OperatingMode::SoftLaunch, std::u64::MAX - 1).is_some());