Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test(ICRC_Ledger): FI-1589: Adapt icrc golden state tests to ledger V3 stable structures migration #2739

Merged
merged 146 commits into from
Nov 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
146 commits
Select commit Hold shift + click to select a range
8db3763
v2 version for the icrc ledger
maciejdfinity Sep 10, 2024
619a887
update mainnet canisters to v1
maciejdfinity Sep 11, 2024
0913c4b
Merge branch 'master' into maciej-icrc-v2
maciejdfinity Sep 13, 2024
7f1a685
update mainnet canister hash
maciejdfinity Sep 13, 2024
702e5d8
remove extra clone
maciejdfinity Sep 13, 2024
d89d15d
approvals in stable memory
maciejdfinity Sep 16, 2024
ce95fcc
Automatically updated Cargo*.lock
Sep 16, 2024
df25efd
skip arrived_at serialization
maciejdfinity Sep 18, 2024
b262c9a
comment
maciejdfinity Sep 18, 2024
2ba7c8f
migrate approvals
maciejdfinity Sep 18, 2024
af7376e
Automatically updated Cargo*.lock
Sep 18, 2024
0fc1d35
disable ledger while migration and wait for ledger to be ready
maciejdfinity Sep 23, 2024
823472c
remove approval trimming test
maciejdfinity Sep 24, 2024
871d1e1
clippy
maciejdfinity Sep 24, 2024
ab60f40
build fix
maciejdfinity Sep 24, 2024
f108662
fix candid
maciejdfinity Sep 24, 2024
e454fbc
fix tests
maciejdfinity Sep 24, 2024
378c316
fix tests
maciejdfinity Sep 24, 2024
2b64a03
clippy
maciejdfinity Sep 24, 2024
9f545df
fix tests
maciejdfinity Sep 24, 2024
82ff283
clippy
maciejdfinity Sep 24, 2024
3171aa0
test account maxserialization len
maciejdfinity Sep 24, 2024
ed7731d
test account serialization
maciejdfinity Sep 24, 2024
5585594
test allowance serialization
maciejdfinity Sep 24, 2024
eb830db
account for pre_upgrade instructions
maciejdfinity Sep 25, 2024
247d2e3
additional ready checks
maciejdfinity Sep 25, 2024
dbc7f32
remove is_migrating
maciejdfinity Sep 25, 2024
9559981
migration steps metric
maciejdfinity Sep 25, 2024
35924ed
clippy
maciejdfinity Sep 25, 2024
5b7c9a3
update limits, do not write in pre_upgrade if not ready
maciejdfinity Sep 26, 2024
11324d7
clippy
maciejdfinity Sep 27, 2024
7434304
require memory manager
maciejdfinity Sep 30, 2024
1ae7323
test endpoints disabled during migration and test failed migration
maciejdfinity Sep 30, 2024
9e50e99
clippy
maciejdfinity Sep 30, 2024
8da91b7
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Oct 1, 2024
0fa6ce9
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Oct 7, 2024
1086b5a
build fix
maciejdfinity Oct 7, 2024
8811688
clippy
maciejdfinity Oct 7, 2024
ac7ec29
remove test upgrade from first version
maciejdfinity Oct 7, 2024
c8b94d1
feature flag with lower instuction limits
maciejdfinity Oct 8, 2024
9e67753
restore mainnet canisters
maciejdfinity Oct 11, 2024
e058e16
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Oct 11, 2024
d8ca322
update mainnet canisters json
maciejdfinity Oct 11, 2024
43efb21
implement stable structures storable for account
maciejdfinity Oct 11, 2024
1a03ada
clippy
maciejdfinity Oct 11, 2024
cef0b73
Automatically updated Cargo*.lock
Oct 11, 2024
168afff
implement storable for allowance
maciejdfinity Oct 11, 2024
aff2fcd
Automatically updated Cargo*.lock
Oct 11, 2024
b8ff51d
Merge branch 'master' into maciej-storable-account
maciejdfinity Oct 11, 2024
9ef97c2
Merge branch 'master' into maciej-storable-account
maciejdfinity Oct 13, 2024
0b5dfa2
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Oct 13, 2024
193b566
increase max allowed orchestrator wasm size
maciejdfinity Oct 14, 2024
bbd77ad
fix test upgrade from 256 to 64
maciejdfinity Oct 14, 2024
f72145b
update canbench, pre_upgrade improved
maciejdfinity Oct 14, 2024
356f8b8
refactor
maciejdfinity Oct 14, 2024
e1eccd4
test multiple round upgrade
maciejdfinity Oct 14, 2024
73f6240
panic if clearing stable allowance is called
maciejdfinity Oct 14, 2024
6308d5f
update ledger and archive wasms
maciejdfinity Oct 15, 2024
3109c06
readd approval trimming test
maciejdfinity Oct 15, 2024
d854423
remove unused param
maciejdfinity Oct 15, 2024
1de5b1d
Update rs/ledger_suite/common/ledger_core/src/approvals.rs
maciejdfinity Oct 15, 2024
b3f88e0
only disable endpoints that change ledger state
maciejdfinity Oct 17, 2024
ccb5710
proptest account serialization
maciejdfinity Oct 17, 2024
b69eb98
proptest allowance serialization
maciejdfinity Oct 17, 2024
8873fb8
Automatically updated Cargo*.lock
Oct 17, 2024
3b3dd3d
Merge branch 'maciej-storable-allowance' into maciej-icrc-v3
maciejdfinity Oct 17, 2024
2974e2d
Merge branch 'maciej-storable-account' into maciej-icrc-v3
maciejdfinity Oct 17, 2024
9a28bc4
migrate code in ledger
maciejdfinity Oct 17, 2024
e5ff866
Merge branch 'master' into maciej-storable-account
maciejdfinity Oct 17, 2024
d0f82cf
Merge branch 'maciej-storable-account' into maciej-storable-allowance
maciejdfinity Oct 17, 2024
8d3bf63
Merge branch 'maciej-storable-allowance' into maciej-icrc-v3
maciejdfinity Oct 17, 2024
a24fe45
clippy
maciejdfinity Oct 17, 2024
accaa54
fix migration to prev version tests
maciejdfinity Oct 17, 2024
a8035e3
build fix
maciejdfinity Oct 17, 2024
c07c8ac
disable downgrade to mainnet test
maciejdfinity Oct 17, 2024
56940aa
fix test
maciejdfinity Oct 17, 2024
48e0fe4
fix test
maciejdfinity Oct 17, 2024
7f3e024
update canbench results
maciejdfinity Oct 17, 2024
85c0d9d
larger limits
maciejdfinity Oct 18, 2024
095509e
move state below version
maciejdfinity Oct 18, 2024
0a29200
move test up in file
maciejdfinity Oct 18, 2024
692f896
Update rs/ledger_suite/icrc1/ledger/src/lib.rs
maciejdfinity Nov 4, 2024
633653f
Update rs/ledger_suite/icrc1/ledger/src/lib.rs
maciejdfinity Nov 4, 2024
fc0b00d
Update rs/ledger_suite/icrc1/ledger/src/lib.rs
maciejdfinity Nov 4, 2024
1d06a25
Update rs/ledger_suite/tests/sm-tests/src/lib.rs
maciejdfinity Nov 4, 2024
0203191
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Nov 4, 2024
0c2e9c3
extend the comment for ledger_version
maciejdfinity Nov 4, 2024
aba9408
panic if not ready fn
maciejdfinity Nov 4, 2024
0cd743f
build fix
maciejdfinity Nov 4, 2024
d644f2f
comment about not storing arrivals
maciejdfinity Nov 4, 2024
00c5d40
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Nov 4, 2024
ebf3c2a
improve logging
maciejdfinity Nov 4, 2024
5ad210d
update comment
maciejdfinity Nov 4, 2024
27b06e7
test failure to downgrade from stable structures
maciejdfinity Nov 4, 2024
5fe793c
assert ledger not ready
maciejdfinity Nov 4, 2024
5c2757a
remove unused tests
maciejdfinity Nov 4, 2024
752266c
remove first version icrc wasm
maciejdfinity Nov 4, 2024
4386237
clippy
maciejdfinity Nov 4, 2024
3f4e287
check for ready in endpoints
maciejdfinity Nov 5, 2024
6d48c28
fix test
maciejdfinity Nov 5, 2024
9127d6e
update canbench results
maciejdfinity Nov 5, 2024
cfd6493
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Nov 6, 2024
6fed6f3
test metrics while updating
maciejdfinity Nov 6, 2024
d96eac5
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Nov 6, 2024
8afc10d
log migration step instructions
maciejdfinity Nov 6, 2024
8665695
test timestamp serialization
maciejdfinity Nov 6, 2024
6953942
use thread local for ledger state
maciejdfinity Nov 7, 2024
d3f51c4
clippy
maciejdfinity Nov 7, 2024
a7fd4ab
update canbench results
maciejdfinity Nov 7, 2024
b33b6a0
migrate some allowances in post_upgrade
maciejdfinity Nov 8, 2024
a4fa643
speed up account serialization and deserialization
maciejdfinity Nov 11, 2024
b9ed933
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Nov 11, 2024
2730a5c
simplify the code a bit
maciejdfinity Nov 12, 2024
186b892
migrating with interval timer
maciejdfinity Nov 12, 2024
a5ec43d
store allowance expiration length while serializing
maciejdfinity Nov 15, 2024
c93ecbb
test if migration resumes when frozen and unfrozen
maciejdfinity Nov 18, 2024
cfa4744
Revert "migrating with interval timer"
maciejdfinity Nov 18, 2024
dafc6c7
make sure the timer was attempted to be scheduled
maciejdfinity Nov 19, 2024
40b015c
serializa Account with minicbor
maciejdfinity Nov 19, 2024
1e349d4
fix error message
maciejdfinity Nov 19, 2024
50119ed
clippy
maciejdfinity Nov 19, 2024
70ed4ae
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Nov 19, 2024
b661488
clippy
maciejdfinity Nov 19, 2024
ead1399
clippy
maciejdfinity Nov 19, 2024
16a64ee
clippy
maciejdfinity Nov 19, 2024
4be7e56
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Nov 20, 2024
4c97ac5
build fix
maciejdfinity Nov 20, 2024
d538875
use minicbor for allowance serialization
maciejdfinity Nov 20, 2024
a4eeb3e
clippy
maciejdfinity Nov 20, 2024
f1af825
clippy
maciejdfinity Nov 20, 2024
13da037
rename decoder
maciejdfinity Nov 20, 2024
1501fa5
comment about arrived_at unused
maciejdfinity Nov 20, 2024
fe34d6d
clear stable allowances in case of incomplete migration
maciejdfinity Nov 20, 2024
e1a72b0
simplify clearing stable allowances
maciejdfinity Nov 21, 2024
8867fa3
start migration only if ledger_version smaller
maciejdfinity Nov 21, 2024
0cac10f
proptest storable allowance
maciejdfinity Nov 21, 2024
6b07167
test minicbor serialization stable
maciejdfinity Nov 21, 2024
e96ab18
Adapt ICRC golden state tests to handle ledger V3 stable structures m…
mbjorkqvist Nov 21, 2024
5ebfed8
Upgrade the ledger to master twice also after first upgrading to V2
mbjorkqvist Nov 21, 2024
f4a8670
Merge branch 'master' into maciej-icrc-v3
maciejdfinity Nov 21, 2024
4ee6b80
build fix
maciejdfinity Nov 21, 2024
0b4ac9c
clear stable allowances in post_upgrade
maciejdfinity Nov 21, 2024
bdc2bcf
Buildifier
mbjorkqvist Nov 21, 2024
0627938
Merge branch 'maciej-icrc-v3' into mathias-FI-1589-adapt-icrc-golden-…
mbjorkqvist Nov 21, 2024
51f01a3
Merge branch 'master' into mathias-FI-1589-adapt-icrc-golden-state-te…
mbjorkqvist Nov 28, 2024
969e6c2
Incorrectly handled merge conflicts
mbjorkqvist Nov 28, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions WORKSPACE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ canisters(
"sns_governance": "sns-governance-canister.wasm.gz",
"swap": "sns-swap-canister.wasm.gz",
"sns_ledger": "ic-icrc1-ledger.wasm.gz",
"sns_ledger_v2": "ic-icrc1-ledger.wasm.gz",
"sns_archive": "ic-icrc1-archive.wasm.gz",
"sns_index": "ic-icrc1-index-ng.wasm.gz",
},
Expand All @@ -59,6 +60,7 @@ canisters(
"sns_governance": "mainnet_sns-governance-canister",
"swap": "mainnet_sns-swap-canister",
"sns_ledger": "mainnet_ic-icrc1-ledger",
"sns_ledger_v2": "mainnet_ic-icrc1-ledger-v2",
"sns_archive": "mainnet_ic-icrc1-archive",
"sns_index": "mainnet_ic-icrc1-index-ng",
},
Expand Down
4 changes: 4 additions & 0 deletions mainnet-canisters.json
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,10 @@
"rev": "e54d3fa34ded227c885d04e64505fa4b5d564743",
"sha256": "3d808fa63a3d8ebd4510c0400aa078e99a31afaa0515f0b68778f929ce4b2a46"
},
"sns_ledger_v2": {
mbjorkqvist marked this conversation as resolved.
Show resolved Hide resolved
"rev": "e54d3fa34ded227c885d04e64505fa4b5d564743",
"sha256": "3d808fa63a3d8ebd4510c0400aa078e99a31afaa0515f0b68778f929ce4b2a46"
},
"sns_root": {
"rev": "aa91ecacdf3824e193e21b70e0127e8d3edab51a",
"sha256": "431cb333feb3f762f742b0dea58745633a2a2ca41075e9933183d850b4ddb259"
Expand Down
2 changes: 2 additions & 0 deletions rs/ledger_suite/icrc1/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,7 @@ rust_test(
"@mainnet_cketh_ic-icrc1-ledger-u256//file",
"@mainnet_ic-icrc1-archive//file",
"@mainnet_ic-icrc1-index-ng//file",
"@mainnet_ic-icrc1-ledger-v2//file",
"@mainnet_ic-icrc1-ledger//file",
],
env = {
Expand All @@ -142,6 +143,7 @@ rust_test(
"IC_ICRC1_ARCHIVE_DEPLOYED_VERSION_WASM_PATH": "$(rootpath @mainnet_ic-icrc1-archive//file)",
"IC_ICRC1_INDEX_DEPLOYED_VERSION_WASM_PATH": "$(rootpath @mainnet_ic-icrc1-index-ng//file)",
"IC_ICRC1_LEDGER_DEPLOYED_VERSION_WASM_PATH": "$(rootpath @mainnet_ic-icrc1-ledger//file)",
"IC_ICRC1_LEDGER_DEPLOYED_VERSION_2_WASM_PATH": "$(rootpath @mainnet_ic-icrc1-ledger-v2//file)",
"IC_ICRC1_ARCHIVE_WASM_PATH": "$(rootpath //rs/ledger_suite/icrc1/archive:archive_canister" + name_suffix + ".wasm.gz)",
"IC_ICRC1_INDEX_NG_WASM_PATH": "$(rootpath //rs/ledger_suite/icrc1/index-ng:index_ng_canister" + name_suffix + ".wasm.gz)",
"IC_ICRC1_LEDGER_WASM_PATH": "$(rootpath //rs/ledger_suite/icrc1/ledger:ledger_canister" + name_suffix + ".wasm)",
Expand Down
108 changes: 79 additions & 29 deletions rs/ledger_suite/icrc1/tests/golden_state_upgrade_downgrade.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ use ic_ledger_suite_state_machine_tests::{
TransactionGenerationParameters,
};
use ic_nns_test_utils_golden_nns_state::new_state_machine_with_golden_fiduciary_state_or_panic;
use ic_state_machine_tests::StateMachine;
use ic_state_machine_tests::{ErrorCode, StateMachine, UserError};
use icrc_ledger_types::icrc1::account::Account;
use lazy_static::lazy_static;
use std::str::FromStr;
Expand Down Expand Up @@ -44,7 +44,8 @@ lazy_static! {
)),
Wasm::from_bytes(load_wasm_using_env_var(
"CKBTC_IC_ICRC1_ARCHIVE_DEPLOYED_VERSION_WASM_PATH",
))
)),
None,
);
pub static ref MAINNET_SNS_WASMS: Wasms = Wasms::new(
Wasm::from_bytes(load_wasm_using_env_var(
Expand All @@ -55,12 +56,16 @@ lazy_static! {
)),
Wasm::from_bytes(load_wasm_using_env_var(
"IC_ICRC1_ARCHIVE_DEPLOYED_VERSION_WASM_PATH",
))
)),
Some(Wasm::from_bytes(load_wasm_using_env_var(
"IC_ICRC1_LEDGER_DEPLOYED_VERSION_2_WASM_PATH"
))),
);
pub static ref MASTER_WASMS: Wasms = Wasms::new(
Wasm::from_bytes(index_ng_wasm()),
Wasm::from_bytes(ledger_wasm()),
Wasm::from_bytes(archive_wasm())
Wasm::from_bytes(archive_wasm()),
None,
);
}

Expand All @@ -75,27 +80,36 @@ lazy_static! {
)),
Wasm::from_bytes(load_wasm_using_env_var(
"CKETH_IC_ICRC1_ARCHIVE_DEPLOYED_VERSION_WASM_PATH",
))
)),
None,
);
pub static ref MASTER_WASMS: Wasms = Wasms::new(
Wasm::from_bytes(index_ng_wasm()),
Wasm::from_bytes(ledger_wasm()),
Wasm::from_bytes(archive_wasm())
Wasm::from_bytes(archive_wasm()),
None,
);
}

pub struct Wasms {
index_wasm: Wasm,
ledger_wasm: Wasm,
archive_wasm: Wasm,
ledger_wasm_v2: Option<Wasm>,
}

impl Wasms {
fn new(index_wasm: Wasm, ledger_wasm: Wasm, archive_wasm: Wasm) -> Self {
fn new(
index_wasm: Wasm,
ledger_wasm: Wasm,
archive_wasm: Wasm,
ledger_wasm_v2: Option<Wasm>,
) -> Self {
Self {
index_wasm,
ledger_wasm,
archive_wasm,
ledger_wasm_v2,
}
}
}
Expand Down Expand Up @@ -188,7 +202,7 @@ impl LedgerSuiteConfig {
}
}

fn upgrade_archives(&self, state_machine: &StateMachine, wasm: &Wasm) {
fn upgrade_archives_or_panic(&self, state_machine: &StateMachine, wasm: &Wasm) {
let canister_id =
CanisterId::unchecked_from_principal(PrincipalId::from_str(self.ledger_id).unwrap());
let archives = list_archives(state_machine, canister_id);
Expand All @@ -208,7 +222,7 @@ impl LedgerSuiteConfig {
println!("Upgraded {} archive(s)", num_archives);
}

fn upgrade_index(&self, state_machine: &StateMachine, wasm: &Wasm) {
fn upgrade_index_or_panic(&self, state_machine: &StateMachine, wasm: &Wasm) {
let canister_id =
CanisterId::unchecked_from_principal(PrincipalId::from_str(self.index_id).unwrap());
let index_upgrade_arg = IndexArg::Upgrade(IndexUpgradeArg {
Expand All @@ -222,38 +236,74 @@ impl LedgerSuiteConfig {
println!("Upgraded {} index '{}'", self.canister_name, self.index_id);
}

fn upgrade_ledger(&self, state_machine: &StateMachine, wasm: &Wasm) {
fn upgrade_ledger(&self, state_machine: &StateMachine, wasm: &Wasm) -> Result<(), UserError> {
let canister_id =
CanisterId::unchecked_from_principal(PrincipalId::from_str(self.ledger_id).unwrap());
let args = ic_icrc1_ledger::LedgerArgument::Upgrade(None);
let args = Encode!(&args).unwrap();
state_machine
.upgrade_canister(canister_id, wasm.clone().bytes(), args.clone())
.expect("should successfully upgrade ledger canister");
println!(
"Upgraded {} ledger '{}'",
self.canister_name, self.ledger_id
);
match state_machine.upgrade_canister(canister_id, wasm.clone().bytes(), args.clone()) {
Ok(_) => {
println!(
"Upgraded {} ledger '{}'",
self.canister_name, self.ledger_id
);
Ok(())
}
Err(e) => {
println!(
"Error upgrading {} ledger '{}': {:?}",
self.canister_name, self.ledger_id, e
);
Err(e)
}
}
}

fn upgrade_to_mainnet(&self, state_machine: &StateMachine) {
// Upgrade each canister twice to exercise pre-upgrade
self.upgrade_index(state_machine, &self.mainnet_wasms.index_wasm);
self.upgrade_index(state_machine, &self.mainnet_wasms.index_wasm);
self.upgrade_ledger(state_machine, &self.mainnet_wasms.ledger_wasm);
self.upgrade_ledger(state_machine, &self.mainnet_wasms.ledger_wasm);
self.upgrade_archives(state_machine, &self.mainnet_wasms.archive_wasm);
self.upgrade_archives(state_machine, &self.mainnet_wasms.archive_wasm);
self.upgrade_index_or_panic(state_machine, &self.mainnet_wasms.index_wasm);
self.upgrade_index_or_panic(state_machine, &self.mainnet_wasms.index_wasm);
match self.upgrade_ledger(state_machine, &self.mainnet_wasms.ledger_wasm) {
Ok(_) => {
panic!("should not successfully downgrade ledger");
}
Err(user_error) => user_error.assert_contains(
ErrorCode::CanisterCalledTrap,
"Trying to downgrade from incompatible version",
),
}
self.upgrade_archives_or_panic(state_machine, &self.mainnet_wasms.archive_wasm);
self.upgrade_archives_or_panic(state_machine, &self.mainnet_wasms.archive_wasm);
}

fn upgrade_to_master(&self, state_machine: &StateMachine) {
// Upgrade each canister twice to exercise pre-upgrade
self.upgrade_index(state_machine, &self.master_wasms.index_wasm);
self.upgrade_index(state_machine, &self.master_wasms.index_wasm);
self.upgrade_ledger(state_machine, &self.master_wasms.ledger_wasm);
self.upgrade_ledger(state_machine, &self.master_wasms.ledger_wasm);
self.upgrade_archives(state_machine, &self.master_wasms.archive_wasm);
self.upgrade_archives(state_machine, &self.master_wasms.archive_wasm);
self.upgrade_index_or_panic(state_machine, &self.master_wasms.index_wasm);
self.upgrade_index_or_panic(state_machine, &self.master_wasms.index_wasm);
self.upgrade_ledger(state_machine, &self.master_wasms.ledger_wasm)
.or_else(|e| {
match (
e.description().contains(
"Cannot upgrade from scratch stable memory, please upgrade to memory manager first."
),
&self.mainnet_wasms.ledger_wasm_v2
) {
// The upgrade may fail if the target canister is too old - in the case of
// migration to stable structures, the ledger canister must be at least at V2,
// i.e., the ledger state must be managed by the memory manager.
(true, Some(wasm_v2)) => {
self.upgrade_ledger(state_machine, wasm_v2)
.expect("should successfully upgrade ledger to V2");
self.upgrade_ledger(state_machine, &self.master_wasms.ledger_wasm)
}
_ => Err(e)
}
})
.expect("should successfully upgrade ledger");
self.upgrade_ledger(state_machine, &self.master_wasms.ledger_wasm)
.expect("should successfully upgrade ledger");
self.upgrade_archives_or_panic(state_machine, &self.master_wasms.archive_wasm);
self.upgrade_archives_or_panic(state_machine, &self.master_wasms.archive_wasm);
}
}

Expand Down