Skip to content

Commit e690e3c

Browse files
ferranbt0xKitsune
andauthored
Send FCUs to L2/Builder concurrently (#206)
* Make FCU calls concurrent * Fix * Fix tests * Remove debug statement * More fixes * Remove print statement * Remove from README * Update flag * Fix lint * chore: simplify concurrent fcu logic (#208) * chore: simplify concurrent fcu logic * fix: remove duplicate file * chore: remove unused function * docs: document when fcu does not contain payload attrs * docs: fix comments * docs: use l2 client instead of execution client --------- Co-authored-by: 0xKitsune <[email protected]>
1 parent 931d4d2 commit e690e3c

File tree

5 files changed

+109
-162
lines changed

5 files changed

+109
-162
lines changed

.env.example

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,4 @@ DEBUG_SERVER_PORT=5555
2323
TRACING=false
2424
LOG_LEVEL=info
2525
METRICS=false
26-
BOOST_SYNC=false
2726
LOG_FORMAT=text

README.md

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ cargo run -- [OPTIONS]
2424
- `--log-level <LEVEL>`: Log level (default: info)
2525
- `--log-format <FORMAT>`: Log format (default: text)
2626
- `--metrics`: Enable metrics (default: false)
27-
- `--no-boost-sync`: Disables using the proposer to sync the builder node (default: true)
2827
- `--debug-host <HOST>`: Host to run the server on (default: 127.0.0.1)
2928
- `--debug-server-port <PORT>`: Port to run the debug server on (default: 5555)
3029

@@ -99,13 +98,6 @@ By default, `rollup-boost` will proxy all RPC calls from the proposer `op-node`
9998
- `miner_*`: this allows the builder to be aware of changes in effective gas price, extra data, and [DA throttling requests](https://docs.optimism.io/builders/chain-operators/configuration/batcher) from the batcher.
10099
- `eth_sendRawTransaction*`: this forwards transactions the proposer receives to the builder for block building. This call may not come from the proposer `op-node`, but directly from the rollup's rpc engine.
101100

102-
### Boost Sync
103-
104-
By default, `rollup-boost` will sync the builder with the proposer `op-node`. After the builder is synced, boost sync improves the performance of keeping the builder in sync with the tip of the chainby removing the need to receive chain updates via p2p via the builder `op-node`. This entails additional engine api calls that are multiplexed to the builder from rollup-boost:
105-
106-
- `engine_forkchoiceUpdatedV3`: this call will be multiplexed to the builder regardless of whether the call contains payload attributes or not.
107-
- `engine_newPayloadV3`: ensures the builder has the latest block if the local payload was used.
108-
109101
## Debug API
110102

111103
The Debug API is a JSON-RPC API that can be used to configure rollup-boost's execution mode. The execution mode determines how rollup-boost makes requests to the builder:

src/cli.rs

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,6 @@ pub struct Args {
3535
#[arg(long, env, default_value = "5")]
3636
pub max_unsafe_interval: u64,
3737

38-
/// Disable using the proposer to sync the builder node
39-
#[arg(long, env, default_value = "false")]
40-
pub no_boost_sync: bool,
41-
4238
/// Host to run the server on
4339
#[arg(long, env, default_value = "0.0.0.0")]
4440
pub rpc_host: String,
@@ -159,17 +155,11 @@ impl Args {
159155
PayloadSource::Builder,
160156
)?;
161157

162-
let boost_sync_enabled = !self.no_boost_sync;
163-
if boost_sync_enabled {
164-
info!("Boost sync enabled");
165-
}
166-
167158
let (probe_layer, probes) = ProbeLayer::new();
168159

169160
let rollup_boost = RollupBoostServer::new(
170161
l2_client,
171162
builder_client,
172-
boost_sync_enabled,
173163
self.execution_mode,
174164
probes,
175165
self.health_check_interval,

0 commit comments

Comments
 (0)