Skip to content

Commit

Permalink
tweak paris def remove from mergespecific mods
Browse files Browse the repository at this point in the history
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
  • Loading branch information
garyschulte authored and siladu committed Dec 22, 2022
1 parent 5dd8a34 commit ddf785a
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 109 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -15,21 +15,16 @@
package org.hyperledger.besu.consensus.merge;

import org.hyperledger.besu.config.GenesisConfigOptions;
import org.hyperledger.besu.datatypes.Wei;
import org.hyperledger.besu.ethereum.core.PrivacyParameters;
import org.hyperledger.besu.ethereum.mainnet.BlockHeaderValidator;
import org.hyperledger.besu.ethereum.mainnet.ProtocolSchedule;
import org.hyperledger.besu.ethereum.mainnet.ProtocolScheduleBuilder;
import org.hyperledger.besu.ethereum.mainnet.ProtocolSpecAdapters;
import org.hyperledger.besu.ethereum.mainnet.ProtocolSpecBuilder;
import org.hyperledger.besu.ethereum.mainnet.TimestampSchedule;
import org.hyperledger.besu.ethereum.mainnet.TimestampScheduleBuilder;
import org.hyperledger.besu.ethereum.mainnet.feemarket.FeeMarket;
import org.hyperledger.besu.evm.MainnetEVMs;
import org.hyperledger.besu.evm.internal.EvmConfiguration;

import java.math.BigInteger;
import java.util.Optional;

public class MergeProtocolSchedule {

Expand All @@ -48,11 +43,7 @@ public static ProtocolSchedule create(
return new ProtocolScheduleBuilder(
config,
DEFAULT_CHAIN_ID,
ProtocolSpecAdapters.create(
0,
(specBuilder) ->
MergeProtocolSchedule.applyMergeSpecificModifications(
specBuilder, config.getChainId())),
ProtocolSpecAdapters.create(0, MergeProtocolSchedule::applyMergeSpecificModifications),
privacyParameters,
isRevertReasonEnabled,
config.isQuorum(),
Expand All @@ -69,9 +60,7 @@ public static TimestampSchedule createTimestamp(
DEFAULT_CHAIN_ID,
ProtocolSpecAdapters.create(
config.getShanghaiTime().orElse(0),
(specBuilder) ->
MergeProtocolSchedule.applyMergeSpecificModifications(
specBuilder, config.getChainId())),
MergeProtocolSchedule::applyMergeSpecificModifications),
privacyParameters,
isRevertReasonEnabled,
config.isQuorum(),
Expand All @@ -80,21 +69,8 @@ public static TimestampSchedule createTimestamp(
}

private static ProtocolSpecBuilder applyMergeSpecificModifications(
final ProtocolSpecBuilder specBuilder, final Optional<BigInteger> chainId) {

return specBuilder
.evmBuilder(
(gasCalculator, jdCacheConfig) ->
MainnetEVMs.paris(
gasCalculator, chainId.orElse(BigInteger.ZERO), EvmConfiguration.DEFAULT))
.blockProcessorBuilder(MergeBlockProcessor::new)
.blockHeaderValidatorBuilder(MergeProtocolSchedule::getBlockHeaderValidator)
.blockReward(Wei.ZERO)
.difficultyCalculator((a, b, c) -> BigInteger.ZERO)
.skipZeroBlockRewards(true);
}
final ProtocolSpecBuilder specBuilder) {

private static BlockHeaderValidator.Builder getBlockHeaderValidator(final FeeMarket feeMarket) {
return MergeValidationRulesetFactory.mergeBlockHeaderValidator(feeMarket);
return specBuilder.blockProcessorBuilder(MergeBlockProcessor::new);
}
}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -99,8 +99,7 @@ private MainnetDifficultyCalculators() {}
calculateThawedDifficulty(time, parent, GRAY_GLACIER_FAKE_BLOCK_OFFSET);

// Proof-of-Stake difficulty must not be altered
static final DifficultyCalculator PROOF_OF_STAKE_DIFFICULTY =
(time, parent, protocolContext) -> parent.getDifficulty().getAsBigInteger();
static final DifficultyCalculator PROOF_OF_STAKE_DIFFICULTY = (time, parent, protocolContext) -> BigInteger.ZERO;

private static BigInteger calculateThawedDifficulty(
final long time, final BlockHeader parent, final long fakeBlockOffset) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
*/
package org.hyperledger.besu.ethereum.mainnet;

import static org.hyperledger.besu.ethereum.mainnet.MainnetDifficultyCalculators.PROOF_OF_STAKE_DIFFICULTY;

import org.hyperledger.besu.config.GenesisConfigOptions;
import org.hyperledger.besu.config.PowAlgorithm;
import org.hyperledger.besu.datatypes.Address;
Expand Down Expand Up @@ -634,9 +636,10 @@ static ProtocolSpecBuilder parisDefinition(
.evmBuilder(
(gasCalculator, jdCacheConfig) ->
MainnetEVMs.paris(gasCalculator, chainId.orElse(BigInteger.ZERO), evmConfiguration))
.difficultyCalculator(MainnetDifficultyCalculators.PROOF_OF_STAKE_DIFFICULTY)
.difficultyCalculator(PROOF_OF_STAKE_DIFFICULTY)
.blockHeaderValidatorBuilder(MainnetBlockHeaderValidator::mergeBlockHeaderValidator)
.blockReward(Wei.ZERO)
.skipZeroBlockRewards(true)
.name("ParisFork");
}

Expand Down

0 comments on commit ddf785a

Please sign in to comment.