From ec4b2482001045fe779dfa41d5f1e525e30560c7 Mon Sep 17 00:00:00 2001 From: Nisheeth Barthwal Date: Mon, 16 Oct 2023 11:09:00 +0200 Subject: [PATCH 1/3] fix incorrect parent hashes --- node/service/src/lib.rs | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/node/service/src/lib.rs b/node/service/src/lib.rs index 3a956bcd08b..dfd3f848d7a 100644 --- a/node/service/src/lib.rs +++ b/node/service/src/lib.rs @@ -79,6 +79,7 @@ use sp_api::{ConstructRuntimeApi, ProvideRuntimeApi}; use sp_blockchain::{Error as BlockChainError, HeaderBackend, HeaderMetadata}; use sp_core::{ByteArray, H256}; use sp_keystore::{Keystore, KeystorePtr}; +use std::str::FromStr; use std::sync::Arc; use std::{collections::BTreeMap, path::Path, sync::Mutex, time::Duration}; use substrate_prometheus_endpoint::Registry; @@ -800,6 +801,20 @@ where let keystore = params.keystore_container.keystore(); move |deny_unsafe, subscription_task_executor| { + let mut forced_parent_hashes = BTreeMap::new(); + // Fixes for https://github.com/paritytech/frontier/pull/570 + // #1648995 + forced_parent_hashes.insert( + H256::from_str( + "0x4f38af62c0ce9f2c66c38135b24cf900b4bd7e4044700aa85522358e1365f734", + ) + .expect("must be valid hash"), + H256::from_str( + "0x0d0fd88778aec08b3a83ce36387dbf130f6f304fc91e9a44c9605eaf8a80ce5d", + ) + .expect("must be valid hash"), + ); + let deps = rpc::FullDeps { backend: backend.clone(), client: client.clone(), @@ -822,7 +837,7 @@ where xcm_senders: None, block_data_cache: block_data_cache.clone(), overrides: overrides.clone(), - forced_parent_hashes: None, + forced_parent_hashes: Some(forced_parent_hashes), }; let pending_consensus_data_provider = Box::new(PendingConsensusDataProvider::new( client.clone(), From 3d543deb819cd267c820a9a52aa83dcf97f1804b Mon Sep 17 00:00:00 2001 From: Nisheeth Barthwal Date: Mon, 16 Oct 2023 11:19:45 +0200 Subject: [PATCH 2/3] apply to moonbase --- node/service/src/lib.rs | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/node/service/src/lib.rs b/node/service/src/lib.rs index dfd3f848d7a..b371a91ebaf 100644 --- a/node/service/src/lib.rs +++ b/node/service/src/lib.rs @@ -801,19 +801,25 @@ where let keystore = params.keystore_container.keystore(); move |deny_unsafe, subscription_task_executor| { - let mut forced_parent_hashes = BTreeMap::new(); - // Fixes for https://github.com/paritytech/frontier/pull/570 - // #1648995 - forced_parent_hashes.insert( - H256::from_str( - "0x4f38af62c0ce9f2c66c38135b24cf900b4bd7e4044700aa85522358e1365f734", - ) - .expect("must be valid hash"), - H256::from_str( - "0x0d0fd88778aec08b3a83ce36387dbf130f6f304fc91e9a44c9605eaf8a80ce5d", - ) - .expect("must be valid hash"), - ); + #[cfg(feature = "moonbase-native")] + let forced_parent_hashes = { + let mut forced_parent_hashes = BTreeMap::new(); + // Fixes for https://github.com/paritytech/frontier/pull/570 + // #1648995 + forced_parent_hashes.insert( + H256::from_str( + "0x4f38af62c0ce9f2c66c38135b24cf900b4bd7e4044700aa85522358e1365f734", + ) + .expect("must be valid hash"), + H256::from_str( + "0x0d0fd88778aec08b3a83ce36387dbf130f6f304fc91e9a44c9605eaf8a80ce5d", + ) + .expect("must be valid hash"), + ); + Some(forced_parent_hashes) + }; + #[cfg(not(feature = "moonbase-native"))] + let forced_parent_hashes = None; let deps = rpc::FullDeps { backend: backend.clone(), @@ -837,7 +843,7 @@ where xcm_senders: None, block_data_cache: block_data_cache.clone(), overrides: overrides.clone(), - forced_parent_hashes: Some(forced_parent_hashes), + forced_parent_hashes, }; let pending_consensus_data_provider = Box::new(PendingConsensusDataProvider::new( client.clone(), From 26ac4c47084dfd454c88950ead742d3ef0148c4b Mon Sep 17 00:00:00 2001 From: Nisheeth Barthwal Date: Mon, 16 Oct 2023 11:24:36 +0200 Subject: [PATCH 3/3] use correct block hash --- node/service/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/node/service/src/lib.rs b/node/service/src/lib.rs index b371a91ebaf..092d9088199 100644 --- a/node/service/src/lib.rs +++ b/node/service/src/lib.rs @@ -808,7 +808,7 @@ where // #1648995 forced_parent_hashes.insert( H256::from_str( - "0x4f38af62c0ce9f2c66c38135b24cf900b4bd7e4044700aa85522358e1365f734", + "0xa352fee3eef9c554a31ec0612af887796a920613358abf3353727760ea14207b", ) .expect("must be valid hash"), H256::from_str(