-
Notifications
You must be signed in to change notification settings - Fork 835
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add getPayloadBodiesByRangeV1 and getPayloadBodiesByHash engine methods #4980
Add getPayloadBodiesByRangeV1 and getPayloadBodiesByHash engine methods #4980
Conversation
Signed-off-by: Zhenyang Shi <[email protected]> Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Zhenyang Shi <[email protected]>
Signed-off-by: Zhenyang Shi <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still reviewing but will add the comments so far...
...r/besu/ethereum/api/jsonrpc/internal/methods/engine/EngineGetPayloadBodiesByRangeV1Test.java
Outdated
Show resolved
Hide resolved
...r/besu/ethereum/api/jsonrpc/internal/methods/engine/EngineGetPayloadBodiesByRangeV1Test.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A test to cover the condition: Client software MUST NOT return trailing null values if the request extends past the current latest known block would be good IMO
does this supersede #4909 ? |
Yes it does @macfarla. Closed previous PR with a reference to this one. |
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
# Conflicts: # ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/BlockResultFactory.java
...edger/besu/ethereum/api/jsonrpc/internal/methods/engine/EngineGetPayloadBodiesByRangeV1.java
Outdated
Show resolved
Hide resolved
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
...edger/besu/ethereum/api/jsonrpc/internal/methods/engine/EngineGetPayloadBodiesByRangeV1.java
Outdated
Show resolved
Hide resolved
...edger/besu/ethereum/api/jsonrpc/internal/methods/engine/EngineGetPayloadBodiesByRangeV1.java
Show resolved
Hide resolved
...main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/BlockResultFactory.java
Outdated
Show resolved
Hide resolved
# Conflicts: # ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/RpcMethod.java # ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/methods/ExecutionEngineJsonRpcMethods.java
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
…o add-getblock-engine-methods
Signed-off-by: Simon Dudley <[email protected]>
* update errorprone and kubernetes versions * fixed errorprone issues in prod cod * fixed errorprone issues in test code --------- Signed-off-by: Sally MacFarlane <[email protected]>
* rename JsonRpcService to EngineJsonRpcService Signed-off-by: Daniel Lehrner <[email protected]>
hyperledger#5037) Signed-off-by: Simon Dudley <[email protected]>
Add the BLS curve precompiles into the registry for cancun. All of the curve precompiles have been here since berlin, so this is just wiring them in. Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]>
e25ea07
to
7554285
Compare
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Simon Dudley <[email protected]>
* update errorprone and kubernetes versions * fixed errorprone issues in prod cod * fixed errorprone issues in test code --------- Signed-off-by: Sally MacFarlane <[email protected]>
* rename JsonRpcService to EngineJsonRpcService Signed-off-by: Daniel Lehrner <[email protected]>
hyperledger#5037) Signed-off-by: Simon Dudley <[email protected]>
Add the BLS curve precompiles into the registry for cancun. All of the curve precompiles have been here since berlin, so this is just wiring them in. Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
# Conflicts: # CHANGELOG.md
Signed-off-by: Gabriel Fukushima <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
import org.apache.tuweni.bytes.Bytes; | ||
|
||
@JsonPropertyOrder({"payloadBodies"}) | ||
public class EngineGetPayloadBodiesResultV1 { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: Not sure it makes sense for this outer result type to be V1...the type in the spec that is versioned is ExecutionPayloadBodyV1 which you have below as PayloadBody...if anything then that should be versioned, but I'm thinking avoid versioning unless we have to.
The only engine api result class that's versioned is EngineGetPayloadResultV1/V2 are versioned because they are different data shapes and we need to distinguish. I am having second thoughts about those names now though.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
* Prepare for version 23.1.1-SNAPSHOT (#5067) Signed-off-by: Simon Dudley <[email protected]> * Add getPayloadBodiesByRangeV1 and getPayloadBodiesByHash engine methods (#4980) * Add engine get payload body methods and test Signed-off-by: Zhenyang Shi <[email protected]> Signed-off-by: Gabriel Fukushima <[email protected]> * Add header Signed-off-by: Zhenyang Shi <[email protected]> * Update result struct & add test Signed-off-by: Zhenyang Shi <[email protected]> * Change constant to use upper case Signed-off-by: Gabriel Fukushima <[email protected]> * Add PayloadBody class and withdrawals to response of methods Signed-off-by: Gabriel Fukushima <[email protected]> * Add unit tests Signed-off-by: Gabriel Fukushima <[email protected]> * Add changelog Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Add check to prevent returning trailing null results past the head Signed-off-by: Gabriel Fukushima <[email protected]> * Add test to check trailing null post head scenario Signed-off-by: Gabriel Fukushima <[email protected]> * Split tests into pre and post shanghai Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Rename methods Signed-off-by: Gabriel Fukushima <[email protected]> * Use getName() to log method name Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Rename variable Signed-off-by: Gabriel Fukushima <[email protected]> * Call constructor directly Signed-off-by: Gabriel Fukushima <[email protected]> * Fix ByHash json parsing Signed-off-by: Simon Dudley <[email protected]> * Fix json parsing again Signed-off-by: Simon Dudley <[email protected]> * Add check to prevent unnecessary queries Signed-off-by: Gabriel Fukushima <[email protected]> * Refactor method Signed-off-by: Gabriel Fukushima <[email protected]> * Add new error code for EngineGetPayloadBodies methods Signed-off-by: Gabriel Fukushima <[email protected]> * Add return error for request above the API limit Signed-off-by: Gabriel Fukushima <[email protected]> * Add constructor for empty response Signed-off-by: Gabriel Fukushima <[email protected]> * add check for number of blocks requested and for requests of post head Signed-off-by: Gabriel Fukushima <[email protected]> * Add test to check error code when request exceeds API limits Signed-off-by: Gabriel Fukushima <[email protected]> * add constant for max blocks allowed per request Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Fix some nits Signed-off-by: Gabriel Fukushima <[email protected]> * Add invalid params check Signed-off-by: Gabriel Fukushima <[email protected]> * Add tests for invalid params check Signed-off-by: Gabriel Fukushima <[email protected]> * Fix test and spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Revert "Fix json parsing again" This reverts commit 558d325. Signed-off-by: Gabriel Fukushima <[email protected]> * Revert "Fix ByHash json parsing Signed-off-by: Simon Dudley <[email protected]>" This reverts commit 663e11e Signed-off-by: Gabriel Fukushima <[email protected]> * Use UnsignedLongParameter to cast params of the request Signed-off-by: Gabriel Fukushima <[email protected]> * Add optional withdrawals to the NewPayload log (#5021) Signed-off-by: Simon Dudley <[email protected]> * kubernetes and errorprone - update versions (#5013) * update errorprone and kubernetes versions * fixed errorprone issues in prod cod * fixed errorprone issues in test code --------- Signed-off-by: Sally MacFarlane <[email protected]> * Rename JsonRpcService to EngineJsonRpcService (#5036) * rename JsonRpcService to EngineJsonRpcService Signed-off-by: Daniel Lehrner <[email protected]> * Params should be single item of array type, not outer array of strings (#5037) Signed-off-by: Simon Dudley <[email protected]> * Add EIP-2537 (BLS12-381 curve precompiles) to Cancun (#5017) Add the BLS curve precompiles into the registry for cancun. All of the curve precompiles have been here since berlin, so this is just wiring them in. Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> * Use UnsignedLongParameter to cast params of the request Signed-off-by: Gabriel Fukushima <[email protected]> * Add optional withdrawals to the NewPayload log (#5021) Signed-off-by: Simon Dudley <[email protected]> * kubernetes and errorprone - update versions (#5013) * update errorprone and kubernetes versions * fixed errorprone issues in prod cod * fixed errorprone issues in test code --------- Signed-off-by: Sally MacFarlane <[email protected]> * Rename JsonRpcService to EngineJsonRpcService (#5036) * rename JsonRpcService to EngineJsonRpcService Signed-off-by: Daniel Lehrner <[email protected]> * Params should be single item of array type, not outer array of strings (#5037) Signed-off-by: Simon Dudley <[email protected]> * Add EIP-2537 (BLS12-381 curve precompiles) to Cancun (#5017) Add the BLS curve precompiles into the registry for cancun. All of the curve precompiles have been here since berlin, so this is just wiring them in. Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> * Convert start and count from hex to match JSON-RPC Spec standard Signed-off-by: Gabriel Fukushima <[email protected]> --------- Signed-off-by: Zhenyang Shi <[email protected]> Signed-off-by: Gabriel Fukushima <[email protected]> Signed-off-by: Simon Dudley <[email protected]> Signed-off-by: Sally MacFarlane <[email protected]> Signed-off-by: Daniel Lehrner <[email protected]> Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Zhenyang Shi <[email protected]> Co-authored-by: Simon Dudley <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> Co-authored-by: Daniel Lehrner <[email protected]> Co-authored-by: Danno Ferrin <[email protected]> * Revert "Keep Worldstate Storage open for Bonsai archive latest layer (#5039)" (#5073) This reverts commit e715010. Signed-off-by: Simon Dudley <[email protected]> * Support post merge forks at genesis for hive tests (#5019) Signed-off-by: Jason Frame <[email protected]> * Fix manifest docker not skipping interim builds for RCs (#5068) Signed-off-by: Jason Frame <[email protected]> * Fix PoS checkpoint validation (#5081) * change validation to lessThan Signed-off-by: Gabriel Fukushima <[email protected]> * Change exception message to PoS instead of Near head Signed-off-by: Gabriel Fukushima <[email protected]> * Add unit test and fix message of existing unit test Signed-off-by: Gabriel Fukushima <[email protected]> --------- Signed-off-by: Gabriel Fukushima <[email protected]> * moves check for init code length before balance check (#5077) Signed-off-by: Justin Florentine <[email protected]> * bump revision for 23.1.x release branch Signed-off-by: garyschulte <[email protected]> * Burn in build of 23.1.0 (#5093) * rebase off of burn-in release, remove unreleased 23.1.0-RC2 from CHANGELOG Signed-off-by: garyschulte <[email protected]> Signed-off-by: Simon Dudley <[email protected]> Signed-off-by: Ameziane H <[email protected]> Signed-off-by: Karim TAAM <[email protected]> * re-default global max rpc batch size to 1k (#5104) (#5105) * default global max rpc batch size to 1000 for now Signed-off-by: garyschulte <[email protected]> * Fix Layered World State issue (#5076) * Use the copy during prepareTrieLog instead of saveTrieLog * add final flag on BonsaiWorldStateUpdater * Use a copy of BonsaiInMemoryWorldState inside prepareTrieLog * add link to persisted worldstate storage * fix tests * Make a copy of the worldstate after committing changes to the trielog * spotless + remove maybeUnSubscribe in setNextWorldView * subscribe storage on layered worldstate * fix null issue * not close layered worldstate during getAccount * clean code * Add changelog entry --------- Signed-off-by: ahamlat <[email protected]> Signed-off-by: Karim TAAM <[email protected]> Co-authored-by: Karim TAAM <[email protected]> * Add shanghaiTime to sepolia (#5088) Update and fix forkId tests Move timestamp forks from getForkBlockNumbers to getForkBlockTimestamps in JsonGenesisConfigOptions - this ultimately gets used to popoulate the ForkIdManager which handles lists of blocks and timestamps the same way so this hasn't changed any actual behaviour, but rather supports the test fixes. Implement TransitionProtocolSchedule.streamMilestoneBlocks as a concatenation of blockNumbers++blockTimestamps. This may have been a latent bug since it's used to update the node record when a fork transition occurs. Signed-off-by: Simon Dudley <[email protected]> * If a PoS block creation repetition takes less than a configurable dur… (#5048) * If a PoS block creation repetition takes less than a configurable duration, then waits before next repetition Signed-off-by: Fabio Di Fabio <[email protected]> * Update CHANGELOG Signed-off-by: Fabio Di Fabio <[email protected]> * Add unit test Signed-off-by: Fabio Di Fabio <[email protected]> * Update besu/src/main/java/org/hyperledger/besu/cli/BesuCommand.java Co-authored-by: Sally MacFarlane <[email protected]> Signed-off-by: Fabio Di Fabio <[email protected]> * Update besu/src/main/java/org/hyperledger/besu/cli/options/unstable/MiningOptions.java Co-authored-by: Sally MacFarlane <[email protected]> Signed-off-by: Fabio Di Fabio <[email protected]> --------- Signed-off-by: Fabio Di Fabio <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> * Allow dashes in ethstats password (#5090) Signed-off-by: Simon Dudley <[email protected]> * reintroduce checking of block height for certain tasks when we are not PoS (Revert PR#3911) (#5083) * reintroduce checking of block height for certain tasks when we are not PoS (Revert PR#3911) Signed-off-by: Stefan Pingel <[email protected]> * Allow other users to read the /opt/besu dir when using docker (#5092) Signed-off-by: Rafael Matias <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> * Only use MAINNET version of KZG (#5095) Signed-off-by: Fabio Di Fabio <[email protected]> * add more context to exception messages and debug logging (#5066) Signed-off-by: Sally MacFarlane <[email protected]> * Fix block value calculation (#5100) * Add gasUsed calculation Signed-off-by: Gabriel Fukushima <[email protected]> * Fix unit test Signed-off-by: Gabriel Fukushima <[email protected]> * Fix typo Signed-off-by: Gabriel Fukushima <[email protected]> --------- Signed-off-by: Gabriel Fukushima <[email protected]> * Add 23.1.1-RC1 changelog Signed-off-by: Jason Frame <[email protected]> * Change version to 23.1.1-RC1 Signed-off-by: Jason Frame <[email protected]> --------- Signed-off-by: Simon Dudley <[email protected]> Signed-off-by: Zhenyang Shi <[email protected]> Signed-off-by: Gabriel Fukushima <[email protected]> Signed-off-by: Sally MacFarlane <[email protected]> Signed-off-by: Daniel Lehrner <[email protected]> Signed-off-by: Danno Ferrin <[email protected]> Signed-off-by: Jason Frame <[email protected]> Signed-off-by: Justin Florentine <[email protected]> Signed-off-by: garyschulte <[email protected]> Signed-off-by: Ameziane H <[email protected]> Signed-off-by: Karim TAAM <[email protected]> Signed-off-by: ahamlat <[email protected]> Signed-off-by: Fabio Di Fabio <[email protected]> Signed-off-by: Stefan Pingel <[email protected]> Signed-off-by: Rafael Matias <[email protected]> Co-authored-by: Simon Dudley <[email protected]> Co-authored-by: Gabriel Fukushima <[email protected]> Co-authored-by: Zhenyang Shi <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> Co-authored-by: Daniel Lehrner <[email protected]> Co-authored-by: Danno Ferrin <[email protected]> Co-authored-by: Justin Florentine <[email protected]> Co-authored-by: garyschulte <[email protected]> Co-authored-by: ahamlat <[email protected]> Co-authored-by: Karim TAAM <[email protected]> Co-authored-by: Fabio Di Fabio <[email protected]> Co-authored-by: Stefan Pingel <[email protected]> Co-authored-by: Rafael Matias <[email protected]>
…ds (hyperledger#4980) * Add engine get payload body methods and test Signed-off-by: Zhenyang Shi <[email protected]> Signed-off-by: Gabriel Fukushima <[email protected]> * Add header Signed-off-by: Zhenyang Shi <[email protected]> * Update result struct & add test Signed-off-by: Zhenyang Shi <[email protected]> * Change constant to use upper case Signed-off-by: Gabriel Fukushima <[email protected]> * Add PayloadBody class and withdrawals to response of methods Signed-off-by: Gabriel Fukushima <[email protected]> * Add unit tests Signed-off-by: Gabriel Fukushima <[email protected]> * Add changelog Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Add check to prevent returning trailing null results past the head Signed-off-by: Gabriel Fukushima <[email protected]> * Add test to check trailing null post head scenario Signed-off-by: Gabriel Fukushima <[email protected]> * Split tests into pre and post shanghai Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Rename methods Signed-off-by: Gabriel Fukushima <[email protected]> * Use getName() to log method name Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Rename variable Signed-off-by: Gabriel Fukushima <[email protected]> * Call constructor directly Signed-off-by: Gabriel Fukushima <[email protected]> * Fix ByHash json parsing Signed-off-by: Simon Dudley <[email protected]> * Fix json parsing again Signed-off-by: Simon Dudley <[email protected]> * Add check to prevent unnecessary queries Signed-off-by: Gabriel Fukushima <[email protected]> * Refactor method Signed-off-by: Gabriel Fukushima <[email protected]> * Add new error code for EngineGetPayloadBodies methods Signed-off-by: Gabriel Fukushima <[email protected]> * Add return error for request above the API limit Signed-off-by: Gabriel Fukushima <[email protected]> * Add constructor for empty response Signed-off-by: Gabriel Fukushima <[email protected]> * add check for number of blocks requested and for requests of post head Signed-off-by: Gabriel Fukushima <[email protected]> * Add test to check error code when request exceeds API limits Signed-off-by: Gabriel Fukushima <[email protected]> * add constant for max blocks allowed per request Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Fix some nits Signed-off-by: Gabriel Fukushima <[email protected]> * Add invalid params check Signed-off-by: Gabriel Fukushima <[email protected]> * Add tests for invalid params check Signed-off-by: Gabriel Fukushima <[email protected]> * Fix test and spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Revert "Fix json parsing again" This reverts commit 558d325. Signed-off-by: Gabriel Fukushima <[email protected]> * Revert "Fix ByHash json parsing Signed-off-by: Simon Dudley <[email protected]>" This reverts commit 663e11e Signed-off-by: Gabriel Fukushima <[email protected]> * Use UnsignedLongParameter to cast params of the request Signed-off-by: Gabriel Fukushima <[email protected]> * Add optional withdrawals to the NewPayload log (hyperledger#5021) Signed-off-by: Simon Dudley <[email protected]> * kubernetes and errorprone - update versions (hyperledger#5013) * update errorprone and kubernetes versions * fixed errorprone issues in prod cod * fixed errorprone issues in test code --------- Signed-off-by: Sally MacFarlane <[email protected]> * Rename JsonRpcService to EngineJsonRpcService (hyperledger#5036) * rename JsonRpcService to EngineJsonRpcService Signed-off-by: Daniel Lehrner <[email protected]> * Params should be single item of array type, not outer array of strings (hyperledger#5037) Signed-off-by: Simon Dudley <[email protected]> * Add EIP-2537 (BLS12-381 curve precompiles) to Cancun (hyperledger#5017) Add the BLS curve precompiles into the registry for cancun. All of the curve precompiles have been here since berlin, so this is just wiring them in. Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> * Use UnsignedLongParameter to cast params of the request Signed-off-by: Gabriel Fukushima <[email protected]> * Add optional withdrawals to the NewPayload log (hyperledger#5021) Signed-off-by: Simon Dudley <[email protected]> * kubernetes and errorprone - update versions (hyperledger#5013) * update errorprone and kubernetes versions * fixed errorprone issues in prod cod * fixed errorprone issues in test code --------- Signed-off-by: Sally MacFarlane <[email protected]> * Rename JsonRpcService to EngineJsonRpcService (hyperledger#5036) * rename JsonRpcService to EngineJsonRpcService Signed-off-by: Daniel Lehrner <[email protected]> * Params should be single item of array type, not outer array of strings (hyperledger#5037) Signed-off-by: Simon Dudley <[email protected]> * Add EIP-2537 (BLS12-381 curve precompiles) to Cancun (hyperledger#5017) Add the BLS curve precompiles into the registry for cancun. All of the curve precompiles have been here since berlin, so this is just wiring them in. Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> * Convert start and count from hex to match JSON-RPC Spec standard Signed-off-by: Gabriel Fukushima <[email protected]> --------- Signed-off-by: Zhenyang Shi <[email protected]> Signed-off-by: Gabriel Fukushima <[email protected]> Signed-off-by: Simon Dudley <[email protected]> Signed-off-by: Sally MacFarlane <[email protected]> Signed-off-by: Daniel Lehrner <[email protected]> Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Zhenyang Shi <[email protected]> Co-authored-by: Simon Dudley <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> Co-authored-by: Daniel Lehrner <[email protected]> Co-authored-by: Danno Ferrin <[email protected]>
…ds (hyperledger#4980) * Add engine get payload body methods and test Signed-off-by: Zhenyang Shi <[email protected]> Signed-off-by: Gabriel Fukushima <[email protected]> * Add header Signed-off-by: Zhenyang Shi <[email protected]> * Update result struct & add test Signed-off-by: Zhenyang Shi <[email protected]> * Change constant to use upper case Signed-off-by: Gabriel Fukushima <[email protected]> * Add PayloadBody class and withdrawals to response of methods Signed-off-by: Gabriel Fukushima <[email protected]> * Add unit tests Signed-off-by: Gabriel Fukushima <[email protected]> * Add changelog Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Add check to prevent returning trailing null results past the head Signed-off-by: Gabriel Fukushima <[email protected]> * Add test to check trailing null post head scenario Signed-off-by: Gabriel Fukushima <[email protected]> * Split tests into pre and post shanghai Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Rename methods Signed-off-by: Gabriel Fukushima <[email protected]> * Use getName() to log method name Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Rename variable Signed-off-by: Gabriel Fukushima <[email protected]> * Call constructor directly Signed-off-by: Gabriel Fukushima <[email protected]> * Fix ByHash json parsing Signed-off-by: Simon Dudley <[email protected]> * Fix json parsing again Signed-off-by: Simon Dudley <[email protected]> * Add check to prevent unnecessary queries Signed-off-by: Gabriel Fukushima <[email protected]> * Refactor method Signed-off-by: Gabriel Fukushima <[email protected]> * Add new error code for EngineGetPayloadBodies methods Signed-off-by: Gabriel Fukushima <[email protected]> * Add return error for request above the API limit Signed-off-by: Gabriel Fukushima <[email protected]> * Add constructor for empty response Signed-off-by: Gabriel Fukushima <[email protected]> * add check for number of blocks requested and for requests of post head Signed-off-by: Gabriel Fukushima <[email protected]> * Add test to check error code when request exceeds API limits Signed-off-by: Gabriel Fukushima <[email protected]> * add constant for max blocks allowed per request Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Fix some nits Signed-off-by: Gabriel Fukushima <[email protected]> * Add invalid params check Signed-off-by: Gabriel Fukushima <[email protected]> * Add tests for invalid params check Signed-off-by: Gabriel Fukushima <[email protected]> * Fix test and spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Revert "Fix json parsing again" This reverts commit 558d325. Signed-off-by: Gabriel Fukushima <[email protected]> * Revert "Fix ByHash json parsing Signed-off-by: Simon Dudley <[email protected]>" This reverts commit 663e11e Signed-off-by: Gabriel Fukushima <[email protected]> * Use UnsignedLongParameter to cast params of the request Signed-off-by: Gabriel Fukushima <[email protected]> * Add optional withdrawals to the NewPayload log (hyperledger#5021) Signed-off-by: Simon Dudley <[email protected]> * kubernetes and errorprone - update versions (hyperledger#5013) * update errorprone and kubernetes versions * fixed errorprone issues in prod cod * fixed errorprone issues in test code --------- Signed-off-by: Sally MacFarlane <[email protected]> * Rename JsonRpcService to EngineJsonRpcService (hyperledger#5036) * rename JsonRpcService to EngineJsonRpcService Signed-off-by: Daniel Lehrner <[email protected]> * Params should be single item of array type, not outer array of strings (hyperledger#5037) Signed-off-by: Simon Dudley <[email protected]> * Add EIP-2537 (BLS12-381 curve precompiles) to Cancun (hyperledger#5017) Add the BLS curve precompiles into the registry for cancun. All of the curve precompiles have been here since berlin, so this is just wiring them in. Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> * Use UnsignedLongParameter to cast params of the request Signed-off-by: Gabriel Fukushima <[email protected]> * Add optional withdrawals to the NewPayload log (hyperledger#5021) Signed-off-by: Simon Dudley <[email protected]> * kubernetes and errorprone - update versions (hyperledger#5013) * update errorprone and kubernetes versions * fixed errorprone issues in prod cod * fixed errorprone issues in test code --------- Signed-off-by: Sally MacFarlane <[email protected]> * Rename JsonRpcService to EngineJsonRpcService (hyperledger#5036) * rename JsonRpcService to EngineJsonRpcService Signed-off-by: Daniel Lehrner <[email protected]> * Params should be single item of array type, not outer array of strings (hyperledger#5037) Signed-off-by: Simon Dudley <[email protected]> * Add EIP-2537 (BLS12-381 curve precompiles) to Cancun (hyperledger#5017) Add the BLS curve precompiles into the registry for cancun. All of the curve precompiles have been here since berlin, so this is just wiring them in. Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> * Convert start and count from hex to match JSON-RPC Spec standard Signed-off-by: Gabriel Fukushima <[email protected]> --------- Signed-off-by: Zhenyang Shi <[email protected]> Signed-off-by: Gabriel Fukushima <[email protected]> Signed-off-by: Simon Dudley <[email protected]> Signed-off-by: Sally MacFarlane <[email protected]> Signed-off-by: Daniel Lehrner <[email protected]> Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Zhenyang Shi <[email protected]> Co-authored-by: Simon Dudley <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> Co-authored-by: Daniel Lehrner <[email protected]> Co-authored-by: Danno Ferrin <[email protected]>
…ds (hyperledger#4980) * Add engine get payload body methods and test Signed-off-by: Zhenyang Shi <[email protected]> Signed-off-by: Gabriel Fukushima <[email protected]> * Add header Signed-off-by: Zhenyang Shi <[email protected]> * Update result struct & add test Signed-off-by: Zhenyang Shi <[email protected]> * Change constant to use upper case Signed-off-by: Gabriel Fukushima <[email protected]> * Add PayloadBody class and withdrawals to response of methods Signed-off-by: Gabriel Fukushima <[email protected]> * Add unit tests Signed-off-by: Gabriel Fukushima <[email protected]> * Add changelog Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Add check to prevent returning trailing null results past the head Signed-off-by: Gabriel Fukushima <[email protected]> * Add test to check trailing null post head scenario Signed-off-by: Gabriel Fukushima <[email protected]> * Split tests into pre and post shanghai Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Rename methods Signed-off-by: Gabriel Fukushima <[email protected]> * Use getName() to log method name Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Rename variable Signed-off-by: Gabriel Fukushima <[email protected]> * Call constructor directly Signed-off-by: Gabriel Fukushima <[email protected]> * Fix ByHash json parsing Signed-off-by: Simon Dudley <[email protected]> * Fix json parsing again Signed-off-by: Simon Dudley <[email protected]> * Add check to prevent unnecessary queries Signed-off-by: Gabriel Fukushima <[email protected]> * Refactor method Signed-off-by: Gabriel Fukushima <[email protected]> * Add new error code for EngineGetPayloadBodies methods Signed-off-by: Gabriel Fukushima <[email protected]> * Add return error for request above the API limit Signed-off-by: Gabriel Fukushima <[email protected]> * Add constructor for empty response Signed-off-by: Gabriel Fukushima <[email protected]> * add check for number of blocks requested and for requests of post head Signed-off-by: Gabriel Fukushima <[email protected]> * Add test to check error code when request exceeds API limits Signed-off-by: Gabriel Fukushima <[email protected]> * add constant for max blocks allowed per request Signed-off-by: Gabriel Fukushima <[email protected]> * spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Fix some nits Signed-off-by: Gabriel Fukushima <[email protected]> * Add invalid params check Signed-off-by: Gabriel Fukushima <[email protected]> * Add tests for invalid params check Signed-off-by: Gabriel Fukushima <[email protected]> * Fix test and spotless Signed-off-by: Gabriel Fukushima <[email protected]> * Revert "Fix json parsing again" This reverts commit 558d325. Signed-off-by: Gabriel Fukushima <[email protected]> * Revert "Fix ByHash json parsing Signed-off-by: Simon Dudley <[email protected]>" This reverts commit 663e11e Signed-off-by: Gabriel Fukushima <[email protected]> * Use UnsignedLongParameter to cast params of the request Signed-off-by: Gabriel Fukushima <[email protected]> * Add optional withdrawals to the NewPayload log (hyperledger#5021) Signed-off-by: Simon Dudley <[email protected]> * kubernetes and errorprone - update versions (hyperledger#5013) * update errorprone and kubernetes versions * fixed errorprone issues in prod cod * fixed errorprone issues in test code --------- Signed-off-by: Sally MacFarlane <[email protected]> * Rename JsonRpcService to EngineJsonRpcService (hyperledger#5036) * rename JsonRpcService to EngineJsonRpcService Signed-off-by: Daniel Lehrner <[email protected]> * Params should be single item of array type, not outer array of strings (hyperledger#5037) Signed-off-by: Simon Dudley <[email protected]> * Add EIP-2537 (BLS12-381 curve precompiles) to Cancun (hyperledger#5017) Add the BLS curve precompiles into the registry for cancun. All of the curve precompiles have been here since berlin, so this is just wiring them in. Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> * Use UnsignedLongParameter to cast params of the request Signed-off-by: Gabriel Fukushima <[email protected]> * Add optional withdrawals to the NewPayload log (hyperledger#5021) Signed-off-by: Simon Dudley <[email protected]> * kubernetes and errorprone - update versions (hyperledger#5013) * update errorprone and kubernetes versions * fixed errorprone issues in prod cod * fixed errorprone issues in test code --------- Signed-off-by: Sally MacFarlane <[email protected]> * Rename JsonRpcService to EngineJsonRpcService (hyperledger#5036) * rename JsonRpcService to EngineJsonRpcService Signed-off-by: Daniel Lehrner <[email protected]> * Params should be single item of array type, not outer array of strings (hyperledger#5037) Signed-off-by: Simon Dudley <[email protected]> * Add EIP-2537 (BLS12-381 curve precompiles) to Cancun (hyperledger#5017) Add the BLS curve precompiles into the registry for cancun. All of the curve precompiles have been here since berlin, so this is just wiring them in. Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> * Convert start and count from hex to match JSON-RPC Spec standard Signed-off-by: Gabriel Fukushima <[email protected]> --------- Signed-off-by: Zhenyang Shi <[email protected]> Signed-off-by: Gabriel Fukushima <[email protected]> Signed-off-by: Simon Dudley <[email protected]> Signed-off-by: Sally MacFarlane <[email protected]> Signed-off-by: Daniel Lehrner <[email protected]> Signed-off-by: Danno Ferrin <[email protected]> Co-authored-by: Zhenyang Shi <[email protected]> Co-authored-by: Simon Dudley <[email protected]> Co-authored-by: Sally MacFarlane <[email protected]> Co-authored-by: Daniel Lehrner <[email protected]> Co-authored-by: Danno Ferrin <[email protected]>
PR description
This PR adds the methods getPayloadBodiesByRangeV1 and getPayloadBodiesByHash to the engine API.
Implementation of ethereum/execution-apis#352.
Fixed Issue(s)
Fixes #4787
Documentation
doc-change-required
label to this PR ifupdates are required.
Changelog