fix(op): activate node-api optimism feature (#6065)

This commit is contained in:
Matthias Seitz
2024-01-14 21:25:15 +01:00
committed by GitHub
parent 220a2715e9
commit cb515d4e92
5 changed files with 15 additions and 5 deletions

View File

@ -153,6 +153,7 @@ optimism = [
"reth-payload-builder/optimism",
"reth-optimism-payload-builder/optimism",
"reth-ethereum-payload-builder/optimism",
"reth-node-api/optimism",
]
# no-op feature flag for switching between the `optimism` and default functionality in CI matrices

View File

@ -22,3 +22,6 @@ serde.workspace = true
[dev-dependencies]
# for examples
reth-payload-builder.workspace = true
[features]
optimism = []

View File

@ -501,6 +501,7 @@ where
// with this branch. remove this branch from the non-op code. remove
// `on_missing_payload` requirement from builder trait
if let Some(payload) = self.builder.on_missing_payload(args) {
debug!(target: "payload_builder", id=%self.config.payload_id(), "resolving fallback payload as best payload");
return (
ResolveBestPayload { best_payload: Some(payload), maybe_better, empty_payload },
KeepPayloadJobAlive::Yes,

View File

@ -64,14 +64,14 @@ impl PayloadBuilderAttributes for OptimismPayloadBuilderAttributes {
})
}
fn parent(&self) -> B256 {
self.payload_attributes.parent
}
fn payload_id(&self) -> PayloadId {
self.payload_attributes.id
}
fn parent(&self) -> B256 {
self.payload_attributes.parent
}
fn timestamp(&self) -> u64 {
self.payload_attributes.timestamp
}

View File

@ -117,6 +117,11 @@ mod builder {
Client: StateProviderFactory,
Pool: TransactionPool,
{
debug_assert!(
args.config.initialized_cfg.optimism,
"optimism payload builder called on non-optimism chain"
);
let BuildArguments { client, pool, mut cached_reads, config, cancel, best_payload } = args;
let state_provider = client.state_by_block_hash(config.parent_block.hash)?;
@ -212,7 +217,7 @@ mod builder {
Err(err) => {
match err {
EVMError::Transaction(err) => {
trace!(target: "optimism_payload_builder", ?err, ?sequencer_tx, "Error in sequencer transaction, skipping.");
trace!(target: "payload_builder", ?err, ?sequencer_tx, "Error in sequencer transaction, skipping.");
continue
}
err => {