From f572af52090c0b409c42a74197054785d62207f3 Mon Sep 17 00:00:00 2001 From: rustdev Date: Thu, 7 Dec 2023 00:12:26 +0000 Subject: [PATCH 1/2] lsd-get-relay-block-number-after-on-finalize --- code/parachain/frame/liquid-staking/src/lib.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/parachain/frame/liquid-staking/src/lib.rs b/code/parachain/frame/liquid-staking/src/lib.rs index 4dd7df88c3..ed44becc94 100644 --- a/code/parachain/frame/liquid-staking/src/lib.rs +++ b/code/parachain/frame/liquid-staking/src/lib.rs @@ -1840,7 +1840,9 @@ pub mod pallet { &offset, ); - EraStartBlock::::put(T::RelayChainValidationDataProvider::current_block_number()); + let relay_block_number: BlockNumberFor = + ValidationData::::get().map(|i| i.relay_parent_number).unwrap_or(0).into(); + EraStartBlock::::put(relay_block_number); CurrentEra::::mutate(|e| *e = e.saturating_add(offset)); // ignore error From 5794d4351b4fa8c42cc37e8c7e77381d1422ab23 Mon Sep 17 00:00:00 2001 From: rustdev Date: Thu, 7 Dec 2023 12:26:08 +0000 Subject: [PATCH 2/2] fix the test --- code/parachain/frame/liquid-staking/src/tests.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/parachain/frame/liquid-staking/src/tests.rs b/code/parachain/frame/liquid-staking/src/tests.rs index 70125c36d5..7a1f36b44b 100644 --- a/code/parachain/frame/liquid-staking/src/tests.rs +++ b/code/parachain/frame/liquid-staking/src/tests.rs @@ -705,7 +705,8 @@ fn test_on_initialize_work() { LiquidStaking::on_finalize(System::block_number()); System::set_block_number(System::block_number() + 1); LiquidStaking::on_initialize(System::block_number()); - assert_eq!(EraStartBlock::::get(), total_era_blocknumbers); + let current_era: u64 = CurrentEra::::get() as u64; + assert_eq!(EraStartBlock::::get(), total_era_blocknumbers * current_era); // ValidationDataProvider return relay_parent_number = 100 // total_era_blocknumbers = 10 so the current era is 10 assert_eq!(CurrentEra::::get(), 10);