Simplify get_programs(), specify a real Preview activation epoch for new BPFLoader
This commit is contained in:
parent
6234909373
commit
f385af25e5
@ -72,60 +72,40 @@ impl std::fmt::Debug for Program {
|
|||||||
|
|
||||||
// given operating_mode and epoch, return the entire set of enabled programs
|
// given operating_mode and epoch, return the entire set of enabled programs
|
||||||
fn get_programs(operating_mode: OperatingMode) -> Vec<(Program, Epoch)> {
|
fn get_programs(operating_mode: OperatingMode) -> Vec<(Program, Epoch)> {
|
||||||
let mut programs = vec![];
|
|
||||||
|
|
||||||
match operating_mode {
|
match operating_mode {
|
||||||
OperatingMode::Development => {
|
OperatingMode::Development => vec![
|
||||||
// Programs used for testing
|
// Programs used for testing
|
||||||
programs.extend(
|
Program::BuiltinLoader(solana_bpf_loader_program!()),
|
||||||
vec![
|
Program::BuiltinLoader(solana_bpf_loader_deprecated_program!()),
|
||||||
Program::BuiltinLoader(solana_bpf_loader_program!()),
|
Program::Native(solana_vest_program!()),
|
||||||
Program::BuiltinLoader(solana_bpf_loader_deprecated_program!()),
|
Program::Native(solana_budget_program!()),
|
||||||
Program::Native(solana_vest_program!()),
|
Program::Native(solana_exchange_program!()),
|
||||||
Program::Native(solana_budget_program!()),
|
]
|
||||||
Program::Native(solana_exchange_program!()),
|
.into_iter()
|
||||||
]
|
.map(|program| (program, 0))
|
||||||
.into_iter()
|
.collect::<Vec<_>>(),
|
||||||
.map(|program| (program, 0))
|
|
||||||
.collect::<Vec<_>>(),
|
OperatingMode::Preview => vec![
|
||||||
);
|
(
|
||||||
}
|
Program::BuiltinLoader(solana_bpf_loader_deprecated_program!()),
|
||||||
OperatingMode::Preview => {
|
0,
|
||||||
programs.extend(
|
),
|
||||||
vec![
|
(Program::BuiltinLoader(solana_bpf_loader_program!()), 89),
|
||||||
Program::BuiltinLoader(solana_bpf_loader_program!()),
|
],
|
||||||
Program::BuiltinLoader(solana_bpf_loader_deprecated_program!()),
|
|
||||||
]
|
OperatingMode::Stable => vec![
|
||||||
.into_iter()
|
(
|
||||||
.map(|program| (program, 0))
|
|
||||||
.collect::<Vec<_>>(),
|
|
||||||
);
|
|
||||||
// The epoch of Epoch::max_value() is a placeholder and is expected
|
|
||||||
// to be reduced in a future network update.
|
|
||||||
programs.extend(
|
|
||||||
vec![]
|
|
||||||
.into_iter()
|
|
||||||
.map(|program| (program, Epoch::MAX))
|
|
||||||
.collect::<Vec<_>>(),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
OperatingMode::Stable => {
|
|
||||||
programs.extend(vec![(
|
|
||||||
Program::BuiltinLoader(solana_bpf_loader_deprecated_program!()),
|
Program::BuiltinLoader(solana_bpf_loader_deprecated_program!()),
|
||||||
34,
|
34,
|
||||||
)]);
|
),
|
||||||
// The epoch of std::u64::MAX is a placeholder and is expected
|
(
|
||||||
// to be reduced in a future network update.
|
Program::BuiltinLoader(solana_bpf_loader_program!()),
|
||||||
programs.extend(
|
// The epoch of std::u64::MAX is a placeholder and is expected
|
||||||
vec![Program::BuiltinLoader(solana_bpf_loader_program!())]
|
// to be reduced in a future cluster update.
|
||||||
.into_iter()
|
Epoch::MAX,
|
||||||
.map(|program| (program, Epoch::MAX))
|
),
|
||||||
.collect::<Vec<_>>(),
|
],
|
||||||
);
|
}
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
programs
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn get_native_programs_for_genesis(operating_mode: OperatingMode) -> Vec<(String, Pubkey)> {
|
pub fn get_native_programs_for_genesis(operating_mode: OperatingMode) -> Vec<(String, Pubkey)> {
|
||||||
|
@ -2648,7 +2648,7 @@ impl Bank {
|
|||||||
assert!(callback_w.is_none(), "Already callback has been initiated");
|
assert!(callback_w.is_none(), "Already callback has been initiated");
|
||||||
*callback_w = Some(entered_epoch_callback);
|
*callback_w = Some(entered_epoch_callback);
|
||||||
}
|
}
|
||||||
// immedaitely fire the callback as initial invocation
|
// immediately fire the callback as initial invocation
|
||||||
self.reinvoke_entered_epoch_callback(true);
|
self.reinvoke_entered_epoch_callback(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user