mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-29 19:37:56 +00:00
RPC calls should execute with configured strategy (#4772)
This commit is contained in:
@@ -30,7 +30,7 @@ use sp_blockchain::{
|
||||
Result as ClientResult, Error as ClientError, HeaderMetadata, CachedHeaderMetadata
|
||||
};
|
||||
use sc_client::{
|
||||
Client, CallExecutor, BlockchainEvents,
|
||||
Client, CallExecutor, BlockchainEvents
|
||||
};
|
||||
use sp_core::{
|
||||
Bytes, storage::{well_known_keys, StorageKey, StorageData, StorageChangeSet, ChildInfo},
|
||||
@@ -213,15 +213,14 @@ impl<B, E, Block: BlockT, RA> FullState<B, E, Block, RA>
|
||||
}
|
||||
}
|
||||
|
||||
impl<B, E, Block, RA> StateBackend<B, E, Block, RA> for FullState<B, E, Block, RA>
|
||||
where
|
||||
Block: BlockT + 'static,
|
||||
B: Backend<Block> + Send + Sync + 'static,
|
||||
E: CallExecutor<Block> + Send + Sync + 'static + Clone,
|
||||
RA: Send + Sync + 'static,
|
||||
Client<B, E, Block, RA>: ProvideRuntimeApi<Block>,
|
||||
<Client<B, E, Block, RA> as ProvideRuntimeApi<Block>>::Api:
|
||||
Metadata<Block, Error = sp_blockchain::Error>,
|
||||
impl<B, E, Block, RA> StateBackend<B, E, Block, RA> for FullState<B, E, Block, RA> where
|
||||
Block: BlockT + 'static,
|
||||
B: Backend<Block> + Send + Sync + 'static,
|
||||
E: CallExecutor<Block> + Send + Sync + 'static + Clone,
|
||||
RA: Send + Sync + 'static,
|
||||
Client<B, E, Block, RA>: ProvideRuntimeApi<Block>,
|
||||
<Client<B, E, Block, RA> as ProvideRuntimeApi<Block>>::Api:
|
||||
Metadata<Block, Error = sp_blockchain::Error>,
|
||||
{
|
||||
fn call(
|
||||
&self,
|
||||
@@ -229,21 +228,20 @@ impl<B, E, Block, RA> StateBackend<B, E, Block, RA> for FullState<B, E, Block, R
|
||||
method: String,
|
||||
call_data: Bytes,
|
||||
) -> FutureResult<Bytes> {
|
||||
Box::new(result(
|
||||
self.block_or_best(block)
|
||||
.and_then(|block|
|
||||
self
|
||||
.client
|
||||
.executor()
|
||||
.call(
|
||||
&BlockId::Hash(block),
|
||||
&method,
|
||||
&*call_data,
|
||||
ExecutionStrategy::NativeElseWasm,
|
||||
None,
|
||||
)
|
||||
.map(Into::into))
|
||||
.map_err(client_err)))
|
||||
let r = self.block_or_best(block)
|
||||
.and_then(|block| self
|
||||
.client
|
||||
.executor()
|
||||
.call(
|
||||
&BlockId::Hash(block),
|
||||
&method,
|
||||
&*call_data,
|
||||
self.client.execution_extensions().strategies().other,
|
||||
None,
|
||||
)
|
||||
.map(Into::into)
|
||||
).map_err(client_err);
|
||||
Box::new(result(r))
|
||||
}
|
||||
|
||||
fn storage_keys(
|
||||
|
||||
Reference in New Issue
Block a user