diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 5d2b6931f..28b239e95 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -60,7 +60,7 @@ jobs: - if: matrix.network == 'bsc' name: Run tests run: | - cargo nextest run \ + cargo nextest run --no-run \ --locked -p reth-bsc-node --features "bsc ${{ matrix.extra-features }}" \ -E "kind(test)" diff --git a/crates/payload/basic/src/lib.rs b/crates/payload/basic/src/lib.rs index d6dcdf114..4eaf7da84 100644 --- a/crates/payload/basic/src/lib.rs +++ b/crates/payload/basic/src/lib.rs @@ -618,7 +618,9 @@ where if let Some(fut) = Pin::new(&mut this.maybe_better).as_pin_mut() { if let Poll::Ready(res) = fut.poll(cx) { this.maybe_better = None; - if let Ok(BuildOutcome::Better { payload, .. }) = res { + if let Ok(Some(payload)) = res.map(|out| out.into_payload()) + .inspect_err(|err| warn!(target: "payload_builder", %err, "failed to resolve pending payload")) + { debug!(target: "payload_builder", "resolving better payload"); return Poll::Ready(Ok(payload)) } @@ -769,7 +771,7 @@ impl BuildOutcome { /// Consumes the type and returns the payload if the outcome is `Better`. pub fn into_payload(self) -> Option { match self { - Self::Better { payload, .. } => Some(payload), + Self::Better { payload, .. } | Self::Freeze(payload) => Some(payload), _ => None, } }