besu
besu copied to clipboard
Implement override to force engine-api in the absence of TTD
Description
In order to smooth the preparations for the merge, consensus is that we want execution clients to enable the engine API even in the absence of merge parameters. This is in essence a re-enabling of the --engine-rpc-enabled
api flag removed in #3875
Acceptance Criteria
- make the engine-api available in the absence of merge configs
- ensure rational behavior pre-TTD calls to engine api endpoints
I just pulled the latest develop
docker image and I'm getting this trying to run on mainnet. The error seems to happen every time my Lighthouse node tries to talk to it:
2022-08-01 22:04:40.021+00:00 | vert.x-eventloop-thread-1 | ERROR | ExecutionEngineJsonRpcMethod | failed to exec consensus method engine_exchangeTransitionConfigurationV1
java.util.NoSuchElementException: No value present
at java.base/java.util.Optional.get(Optional.java:148)
at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.engine.EngineExchangeTransitionConfiguration.syncResponse(EngineExchangeTransitionConfiguration.java:85)
at org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.ExecutionEngineJsonRpcMethod.lambda$response$0(ExecutionEngineJsonRpcMethod.java:67)
at io.vertx.core.impl.ContextImpl.lambda$null$0(ContextImpl.java:159)
at io.vertx.core.impl.AbstractContext.dispatch(AbstractContext.java:100)
at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$1(ContextImpl.java:157)
at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:829)
Reopening for above bug - can re-close with investigation @garyschulte