-
Notifications
You must be signed in to change notification settings - Fork 862
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 genesis configuration isPoa() convenience function, and use it in validation of --miner-enabled
option
#5669
Conversation
|
min-gas-price
option--miner-enabled
option
…to modify the min-gas-price option validation Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
d79c6ad
to
a5e2509
Compare
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
config/src/main/java/org/hyperledger/besu/config/GenesisConfigOptions.java
Outdated
Show resolved
Hide resolved
if (!isMergeEnabled() | ||
&& !(Optional.ofNullable(genesisConfigOptions) | ||
.orElseGet(() -> new StubGenesisConfigOptions()) | ||
.isPoa())) { |
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.
Wonder if we can get away with !isMergeEnabled && isEthHash
instead?
Note, currently public networks genesis' are either clique or ethash, but future public testnets (proof of stake at genesis) might have the consensus unspecified. These networks shouldn't care about miner-enabled either I think.
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.
Thanks for the comments @siladu I agree that if there's an existing flag that suitably covers all the cases where merge-enabled is/isn't relevant then I'm very happy to use that instead. It sounds like that would cover the cases you describe where consensus isn't specified, since no ethash
in the genesis config equates to either a) POA or b) POS?
I'll test that out locally, but assuming it works then maybe do away with a new isPos()
function entirely?
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.
Had a play and I think that !isMergeEnabled && isEthHash
is what we want for both checks, i.e. the miner-stratum-enabled
one underneath this (I think it's a bug it doesn't have !isMergeEnabled
)
PoS-at-genesis networks that omit the consensus engine will default to "unknown" in the besu code, so it works for them too.
Maybe eventually it can simply be isEthHash
but might have to always support a "merged" mainnet config (where it was originally ethash).
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.
...so yes, the isPoa is probably redundant for this, though potentially useful for other things at some point?
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.
Thanks @siladu yes for this case I think isEthHash()
makes sense. Maybe it's worth leaving isPoa()
as a general utility that could help make future code changes/logic a little clearer. I'll submit a new commit that changes the current logic but leaves isPoa()
in. Let me know what you think.
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.
I think I need to do more refactoring in BesuCommand.java
to check whether ethash
is being used, specifically for the case where the a network config is being used, not a genesis file. We don't currently load network config until after option validation has happened.
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.
Realised that getActualGenesisConfigOptions()
provides the combined output of a genesis file or network config, + overrides, so no refactoring required.
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.
@siladu I think I'm happy with the current shape of the PR:
- switched to using
isEthash()
- moved
--miner-stratum
option warning check inside same block as--miner-enabled
- left
isPoa()
in as a helper function - added some new unit tests for QBFT & IBFT2 option checking
Ready for you to take another look at when you have a mo.
…Options.java Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>
…nfig, and use that for miner checks Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
6a1d70b
to
137d4db
Compare
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
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.
Looks good!
@@ -2133,7 +2133,7 @@ private void issueOptionWarnings() { | |||
"--remote-connections-max-percentage")); | |||
|
|||
// Check that block producer options work | |||
if (!isMergeEnabled()) { | |||
if (!isMergeEnabled() && getActualGenesisConfigOptions().isEthHash()) { |
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.
Nice! Didn't know about this one.
@@ -3684,7 +3698,7 @@ public void stratumMiningIsEnabledWhenSpecified() throws Exception { | |||
@Test | |||
public void stratumMiningOptionsRequiresServiceToBeEnabled() { | |||
|
|||
parseCommand("--miner-stratum-enabled"); | |||
parseCommand("--network", "dev", "--miner-stratum-enabled"); |
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.
Why was this needed?
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.
I needed to modify the test in a way that would ensure it was being run with a) merge
enabled and b) ethash
enabled, so that the warning message it was testing for would be produced. The default network is mainnet.json
which doesn't have ethash
enabled but dev.json
does so I ended up going with that.
@matthew1001 Do you have merge permission or need a maintainer to merge it? |
No not yet @siladu, still working towards maintainer status so you or one of the other maintainers will need to merge it please. |
…er#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
…er#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
…er#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
* Extend OperationTracer with new methods, create Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Rename ExtendedOperationTracer to BlockAwareOperationTracer Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * fixed plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * added missing javadoc comments Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Update evm/src/main/java/org/hyperledger/besu/evm/tracing/OperationTracer.java Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Only update peer with the first and last block (#5659) * only update peer with the first and last block Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Put download links into CHANGELOG and do some clean up (#5660) * put the download links for 23.4.4 into the CHANGELOG.md * clean up CHANGELOG Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add --amend to docker manifest create to fix docker latest tag (#5661) We need to replace previous release's latest tag. Might be broken due to a recent change in the docker command implementation Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add Xlayered-tx-pool to the config log printout (#5665) Unrelated: clarify epoch length in javadoc Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add hooks to AbstractCreateOperation for library users (#5656) Add hooks for a successful contract create, a failed contract create, and an invalid contact create. Users of the library will be able to customize create responses without having to replace core logic. Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Test updates for cancun execution-spec-tests (#5670) - support legacy V values (larger V value) and type 1+ (v is recId only) - new fields - shared transaction extraction - rejection detection Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Upgrade BouncyCastle libraries (#5675) Upgrade bouncy castle to v1.75. This involved a change in maven coordinates for other modules. Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Introduce transaction validator interface (phase 1) (#5673) Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Only validate `--miner-enabled` option for ethash networks (#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Update tuweni2.4.2 (#5684) * Revert "Revert "Update Tuweni to 2.4.1 (#5513)" (#5585)" This reverts commit 6111e1b. Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> * update Tuweni to 2.4.2 Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> --------- Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Do not leak references to PendingTransactions (#5693) Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * remove v0 version of the database (#5698) Signed-off-by: Karim TAAM <karim.t2am@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * updated plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * spotless Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * updating plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * moved transcation interface to datatypes to use it in the OperationTracer.traceStartTransaction method Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * fix import Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> --------- Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> Signed-off-by: Karim TAAM <karim.t2am@gmail.com> Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com> Co-authored-by: Stefan Pingel <16143240+pinges@users.noreply.github.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com> Co-authored-by: Danno Ferrin <danno.ferrin@gmail.com> Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net> Co-authored-by: Matt Whitehead <matthew1001@gmail.com> Co-authored-by: Antoine Toulme <antoine@lunar-ocean.com> Co-authored-by: matkt <karim.t2am@gmail.com>
…er#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
* Extend OperationTracer with new methods, create Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Rename ExtendedOperationTracer to BlockAwareOperationTracer Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * fixed plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * added missing javadoc comments Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Update evm/src/main/java/org/hyperledger/besu/evm/tracing/OperationTracer.java Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Only update peer with the first and last block (hyperledger#5659) * only update peer with the first and last block Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Put download links into CHANGELOG and do some clean up (hyperledger#5660) * put the download links for 23.4.4 into the CHANGELOG.md * clean up CHANGELOG Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add --amend to docker manifest create to fix docker latest tag (hyperledger#5661) We need to replace previous release's latest tag. Might be broken due to a recent change in the docker command implementation Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add Xlayered-tx-pool to the config log printout (hyperledger#5665) Unrelated: clarify epoch length in javadoc Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add hooks to AbstractCreateOperation for library users (hyperledger#5656) Add hooks for a successful contract create, a failed contract create, and an invalid contact create. Users of the library will be able to customize create responses without having to replace core logic. Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Test updates for cancun execution-spec-tests (hyperledger#5670) - support legacy V values (larger V value) and type 1+ (v is recId only) - new fields - shared transaction extraction - rejection detection Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Upgrade BouncyCastle libraries (hyperledger#5675) Upgrade bouncy castle to v1.75. This involved a change in maven coordinates for other modules. Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Introduce transaction validator interface (phase 1) (hyperledger#5673) Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Only validate `--miner-enabled` option for ethash networks (hyperledger#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Update tuweni2.4.2 (hyperledger#5684) * Revert "Revert "Update Tuweni to 2.4.1 (hyperledger#5513)" (hyperledger#5585)" This reverts commit 6111e1b. Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> * update Tuweni to 2.4.2 Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> --------- Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Do not leak references to PendingTransactions (hyperledger#5693) Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * remove v0 version of the database (hyperledger#5698) Signed-off-by: Karim TAAM <karim.t2am@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * updated plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * spotless Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * updating plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * moved transcation interface to datatypes to use it in the OperationTracer.traceStartTransaction method Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * fix import Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> --------- Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> Signed-off-by: Karim TAAM <karim.t2am@gmail.com> Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com> Co-authored-by: Stefan Pingel <16143240+pinges@users.noreply.github.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com> Co-authored-by: Danno Ferrin <danno.ferrin@gmail.com> Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net> Co-authored-by: Matt Whitehead <matthew1001@gmail.com> Co-authored-by: Antoine Toulme <antoine@lunar-ocean.com> Co-authored-by: matkt <karim.t2am@gmail.com>
…yperledger#5669)" This reverts commit 61c779f.
…er#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
* Extend OperationTracer with new methods, create Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Rename ExtendedOperationTracer to BlockAwareOperationTracer Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * fixed plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * added missing javadoc comments Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Update evm/src/main/java/org/hyperledger/besu/evm/tracing/OperationTracer.java Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Only update peer with the first and last block (hyperledger#5659) * only update peer with the first and last block Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Put download links into CHANGELOG and do some clean up (hyperledger#5660) * put the download links for 23.4.4 into the CHANGELOG.md * clean up CHANGELOG Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add --amend to docker manifest create to fix docker latest tag (hyperledger#5661) We need to replace previous release's latest tag. Might be broken due to a recent change in the docker command implementation Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add Xlayered-tx-pool to the config log printout (hyperledger#5665) Unrelated: clarify epoch length in javadoc Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add hooks to AbstractCreateOperation for library users (hyperledger#5656) Add hooks for a successful contract create, a failed contract create, and an invalid contact create. Users of the library will be able to customize create responses without having to replace core logic. Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Test updates for cancun execution-spec-tests (hyperledger#5670) - support legacy V values (larger V value) and type 1+ (v is recId only) - new fields - shared transaction extraction - rejection detection Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Upgrade BouncyCastle libraries (hyperledger#5675) Upgrade bouncy castle to v1.75. This involved a change in maven coordinates for other modules. Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Introduce transaction validator interface (phase 1) (hyperledger#5673) Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Only validate `--miner-enabled` option for ethash networks (hyperledger#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Update tuweni2.4.2 (hyperledger#5684) * Revert "Revert "Update Tuweni to 2.4.1 (hyperledger#5513)" (hyperledger#5585)" This reverts commit 6111e1b. Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> * update Tuweni to 2.4.2 Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> --------- Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Do not leak references to PendingTransactions (hyperledger#5693) Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * remove v0 version of the database (hyperledger#5698) Signed-off-by: Karim TAAM <karim.t2am@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * updated plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * spotless Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * updating plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * moved transcation interface to datatypes to use it in the OperationTracer.traceStartTransaction method Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * fix import Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> --------- Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> Signed-off-by: Karim TAAM <karim.t2am@gmail.com> Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com> Co-authored-by: Stefan Pingel <16143240+pinges@users.noreply.github.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com> Co-authored-by: Danno Ferrin <danno.ferrin@gmail.com> Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net> Co-authored-by: Matt Whitehead <matthew1001@gmail.com> Co-authored-by: Antoine Toulme <antoine@lunar-ocean.com> Co-authored-by: matkt <karim.t2am@gmail.com>
…er#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
* Extend OperationTracer with new methods, create Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Rename ExtendedOperationTracer to BlockAwareOperationTracer Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * fixed plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * added missing javadoc comments Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Update evm/src/main/java/org/hyperledger/besu/evm/tracing/OperationTracer.java Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Only update peer with the first and last block (hyperledger#5659) * only update peer with the first and last block Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Put download links into CHANGELOG and do some clean up (hyperledger#5660) * put the download links for 23.4.4 into the CHANGELOG.md * clean up CHANGELOG Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add --amend to docker manifest create to fix docker latest tag (hyperledger#5661) We need to replace previous release's latest tag. Might be broken due to a recent change in the docker command implementation Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add Xlayered-tx-pool to the config log printout (hyperledger#5665) Unrelated: clarify epoch length in javadoc Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Add hooks to AbstractCreateOperation for library users (hyperledger#5656) Add hooks for a successful contract create, a failed contract create, and an invalid contact create. Users of the library will be able to customize create responses without having to replace core logic. Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Test updates for cancun execution-spec-tests (hyperledger#5670) - support legacy V values (larger V value) and type 1+ (v is recId only) - new fields - shared transaction extraction - rejection detection Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Upgrade BouncyCastle libraries (hyperledger#5675) Upgrade bouncy castle to v1.75. This involved a change in maven coordinates for other modules. Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Introduce transaction validator interface (phase 1) (hyperledger#5673) Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Only validate `--miner-enabled` option for ethash networks (hyperledger#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Update tuweni2.4.2 (hyperledger#5684) * Revert "Revert "Update Tuweni to 2.4.1 (hyperledger#5513)" (hyperledger#5585)" This reverts commit 6111e1b. Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> * update Tuweni to 2.4.2 Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> --------- Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * Do not leak references to PendingTransactions (hyperledger#5693) Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * remove v0 version of the database (hyperledger#5698) Signed-off-by: Karim TAAM <karim.t2am@gmail.com> Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * updated plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * spotless Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * updating plugin api hash Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * moved transcation interface to datatypes to use it in the OperationTracer.traceStartTransaction method Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> * fix import Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> --------- Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net> Signed-off-by: Stefan <stefan.pingel@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com> Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com> Signed-off-by: Karim TAAM <karim.t2am@gmail.com> Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com> Co-authored-by: Stefan Pingel <16143240+pinges@users.noreply.github.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com> Co-authored-by: Danno Ferrin <danno.ferrin@gmail.com> Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net> Co-authored-by: Matt Whitehead <matthew1001@gmail.com> Co-authored-by: Antoine Toulme <antoine@lunar-ocean.com> Co-authored-by: matkt <karim.t2am@gmail.com>
…er#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
…er#5669) * Modify the min-gas-price option validation * Check for whether ethash is in use, either from genesis or network config, and use that for miner checks * Add genesis configuration isPoa() convenience function --------- Signed-off-by: Matthew Whitehead <matthew1001@gmail.com> Signed-off-by: Matt Whitehead <matthew1001@hotmail.com> Co-authored-by: Simon Dudley <simon.dudley@consensys.net> Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
PR description
This PR indirectly relates to issue #5528.
The intention of the PR is to change the validation logic of the
--miner-enabled
option, particularly with regard to--min-gas-price
option which is a common requirement for private POA chains.Specifically, in the case where a POA consensus algorithm has been configured (
qbft
,ibft2
,ibft
, orclique
) validation of options that would otherwise require--miner-enabled
to be set, is skipped.Fixed Issue(s)
No specific issue is open for this.