lighthouse/beacon_node/http_api
Paul Hauner e4eb0eb168 Use advanced state for block production (#2241)
## Issue Addressed

NA

## Proposed Changes

- Use the pre-states from #2174 during block production.
    - Running this on Pyrmont shows block production times dropping from ~550ms to ~150ms.
- Create `crit` and `warn` logs when a block is published to the API later than we expect.
    - On mainnet we are issuing a warn if the block is published more than 1s later than the slot start and a crit for more than 3s.
- Rename some methods on the `SnapshotCache` for clarity.
- Add the ability to pass the state root to `BeaconChain::produce_block_on_state` to avoid computing a state root. This is a very common LH optimization.
- Add a metric that tracks how late we broadcast blocks received from the HTTP API. This is *technically* a duplicate of a `ValidatorMonitor` log, but I wanted to have it for the case where we aren't monitoring validators too.
2021-03-04 04:43:31 +00:00
..
src Use advanced state for block production (#2241) 2021-03-04 04:43:31 +00:00
tests Allow HTTP API to return SSZ blocks (#2209) 2021-02-24 04:15:14 +00:00
Cargo.toml update tokio-stream to 0.1.3 and use BroadcastStream (#2212) 2021-03-01 01:58:05 +00:00