feat: add new engine_opSealPayload API #248
Open
+262
−22
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR adds new engine_opSealPayload API, which can be enabled by flag
--sequencer.combined-api
.If enabled, sequencer will call engine_opSealPayload instead of engine_getPayload/engine_newPayload/engine_forkchoiceUpdated to confirm unsafe payloads when producing block.
The related PR of support new engine_opSealPayload API in op-geth: bnb-chain/op-geth#193
Rationale
Through load test, we found that it took about 200ms(10k tps case) to call/serve of engine apis. So we add this new API to reduce the latency to almost 0ms here to achieve higher TPS.
Example
n/a
Changes
Notable changes:
--sequencer.combined-api
to change to call new engine_opSealPayload API when producing unsafe block