From b0f946e7b700bd8178253832edc96900465b6367 Mon Sep 17 00:00:00 2001 From: Peilun Li Date: Thu, 27 Jun 2024 15:40:10 +0800 Subject: [PATCH] Fix testnet cip136 locking time. --- .../types/src/term_state/pos_state_config.rs | 26 ++++++++++++++++--- crates/client/src/configuration.rs | 6 +++++ 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/crates/cfxcore/core/src/pos/types/src/term_state/pos_state_config.rs b/crates/cfxcore/core/src/pos/types/src/term_state/pos_state_config.rs index 3104cac8c2..19ebe33a5c 100644 --- a/crates/cfxcore/core/src/pos/types/src/term_state/pos_state_config.rs +++ b/crates/cfxcore/core/src/pos/types/src/term_state/pos_state_config.rs @@ -26,6 +26,10 @@ pub struct PosStateConfig { cip136_in_queue_locked_views: u64, cip136_round_per_term: u64, + fix_cip136_transition_view: u64, + fix_cip136_in_queue_locked_views: u64, + fix_cip136_out_queue_locked_views: u64, + nonce_limit_transition_view: u64, max_nonce_per_account: u64, } @@ -56,7 +60,9 @@ impl PosStateConfig { cip99_out_queue_locked_views: u64, nonce_limit_transition_view: u64, max_nonce_per_account: u64, cip136_transition_view: u64, cip136_in_queue_locked_views: u64, cip136_out_queue_locked_views: u64, - cip136_round_per_term: u64, + cip136_round_per_term: u64, fix_cip136_transition_view: u64, + fix_cip136_in_queue_locked_views: u64, + fix_cip136_out_queue_locked_views: u64, ) -> Self { Self { round_per_term, @@ -71,6 +77,9 @@ impl PosStateConfig { cip136_out_queue_locked_views, cip136_in_queue_locked_views, cip136_round_per_term, + fix_cip136_transition_view, + fix_cip136_in_queue_locked_views, + fix_cip136_out_queue_locked_views, nonce_limit_transition_view, max_nonce_per_account, } @@ -120,8 +129,12 @@ impl PosStateConfigTrait for OnceCell { && view < conf.cip136_transition_view { conf.cip99_in_queue_locked_views - } else if view >= conf.cip136_transition_view { + } else if view >= conf.cip136_transition_view + && view < conf.fix_cip136_transition_view + { conf.cip136_in_queue_locked_views + } else if view >= conf.fix_cip136_transition_view { + conf.fix_cip136_in_queue_locked_views } else { conf.in_queue_locked_views } @@ -133,8 +146,12 @@ impl PosStateConfigTrait for OnceCell { && view < conf.cip136_transition_view { conf.cip99_out_queue_locked_views - } else if view >= conf.cip136_transition_view { + } else if view >= conf.cip136_transition_view + && view < conf.fix_cip136_transition_view + { conf.cip136_out_queue_locked_views + } else if view >= conf.fix_cip136_transition_view { + conf.fix_cip136_out_queue_locked_views } else { conf.out_queue_locked_views } @@ -209,6 +226,9 @@ impl Default for PosStateConfig { cip136_out_queue_locked_views: IN_QUEUE_LOCKED_VIEWS, cip136_in_queue_locked_views: OUT_QUEUE_LOCKED_VIEWS, cip136_round_per_term: ROUND_PER_TERM, + fix_cip136_transition_view: u64::MAX, + fix_cip136_in_queue_locked_views: IN_QUEUE_LOCKED_VIEWS, + fix_cip136_out_queue_locked_views: OUT_QUEUE_LOCKED_VIEWS, nonce_limit_transition_view: u64::MAX, max_nonce_per_account: u64::MAX, } diff --git a/crates/client/src/configuration.rs b/crates/client/src/configuration.rs index 8bec832ffa..20f700ece2 100644 --- a/crates/client/src/configuration.rs +++ b/crates/client/src/configuration.rs @@ -356,6 +356,9 @@ build_config! { (pos_cip136_in_queue_locked_views, (u64), IN_QUEUE_LOCKED_VIEWS * 2) (pos_cip136_out_queue_locked_views, (u64), OUT_QUEUE_LOCKED_VIEWS * 2) (pos_cip136_round_per_term, (u64), ROUND_PER_TERM * 2) + (pos_fix_cip136_transition_view, (u64), 1733760) + (pos_fix_cip136_in_queue_locked_views, (u64), 18720 * 2) + (pos_fix_cip136_out_queue_locked_views, (u64), 1440 * 2) (dev_pos_private_key_encryption_password, (Option), None) (pos_started_as_voter, (bool), true) @@ -1286,6 +1289,9 @@ impl Configuration { self.raw_conf.pos_cip136_in_queue_locked_views, self.raw_conf.pos_cip136_out_queue_locked_views, self.raw_conf.pos_cip136_round_per_term, + self.raw_conf.pos_fix_cip136_transition_view, + self.raw_conf.pos_fix_cip136_in_queue_locked_views, + self.raw_conf.pos_fix_cip136_out_queue_locked_views, ) }