f267bf2afe
* Start adding interop genesis state to lcli * Use more efficient method to generate genesis state * Remove duplicate int_to_bytes32 * Add lcli command to change state genesis time * Add option to allow VC to start with unsynced BN * Set VC to do parallel key loading * Don't default to dummy eth1 backend * Add endpoint to dump operation pool * Add metrics for op pool * Remove state clone for slot notifier * Add mem size approximation for tree hash cache * Avoid cloning tree hash when getting head * Fix failing API tests * Address Michael's comments * Add HashMap::from_par_iter
29 lines
942 B
Rust
29 lines
942 B
Rust
use crate::response_builder::ResponseBuilder;
|
|
use crate::ApiResult;
|
|
use beacon_chain::{BeaconChain, BeaconChainTypes};
|
|
use hyper::{Body, Request};
|
|
use operation_pool::PersistedOperationPool;
|
|
use std::sync::Arc;
|
|
|
|
/// Returns the `proto_array` fork choice struct, encoded as JSON.
|
|
///
|
|
/// Useful for debugging or advanced inspection of the chain.
|
|
pub fn get_fork_choice<T: BeaconChainTypes>(
|
|
req: Request<Body>,
|
|
beacon_chain: Arc<BeaconChain<T>>,
|
|
) -> ApiResult {
|
|
ResponseBuilder::new(&req)?.body_no_ssz(&*beacon_chain.fork_choice.core_proto_array())
|
|
}
|
|
|
|
/// Returns the `PersistedOperationPool` struct.
|
|
///
|
|
/// Useful for debugging or advanced inspection of the stored operations.
|
|
pub fn get_operation_pool<T: BeaconChainTypes>(
|
|
req: Request<Body>,
|
|
beacon_chain: Arc<BeaconChain<T>>,
|
|
) -> ApiResult {
|
|
ResponseBuilder::new(&req)?.body(&PersistedOperationPool::from_operation_pool(
|
|
&beacon_chain.op_pool,
|
|
))
|
|
}
|