From e1a73d5f1b7cebb689711ab99833ecd6d5e5f195 Mon Sep 17 00:00:00 2001 From: Paul Harris Date: Thu, 1 Jun 2023 10:47:25 +1000 Subject: [PATCH] Moved gossip_max_size into out of constants into spec. (#7209) All of the move constants are in the mainnet.yaml and minimal.yaml, just that they are all disabled except for gossip_max_size. This will be the 'todo' list of #7179. partially addresses #7179 Signed-off-by: Paul Harris --- .../pegasys/teku/spec/config/Constants.java | 2 -- .../spec/config/DelegatingSpecConfig.java | 5 +++ .../pegasys/teku/spec/config/SpecConfig.java | 2 ++ .../teku/spec/config/SpecConfigPhase0.java | 11 ++++++- .../config/builder/SpecConfigBuilder.java | 10 +++++- .../teku/spec/config/configs/mainnet.yaml | 32 ++++++++++++++++++- .../teku/spec/config/configs/minimal.yaml | 32 ++++++++++++++++++- .../spec/config/presets/gnosis/bellatrix.yaml | 7 +++- .../config/presets/mainnet/bellatrix.yaml | 7 +++- .../config/presets/minimal/bellatrix.yaml | 7 +++- .../spec/config/presets/swift/bellatrix.yaml | 7 +++- .../standard/presets/mainnet/bellatrix.yaml | 7 +++- .../standard/presets/minimal/bellatrix.yaml | 7 +++- .../standard/presets/swift/bellatrix.yaml | 7 +++- .../GossipForkSubscriptionsAltair.java | 7 ++-- .../GossipForkSubscriptionsBellatrix.java | 7 ---- .../GossipForkSubscriptionsCapella.java | 4 ++- .../GossipForkSubscriptionsDeneb.java | 4 ++- .../GossipForkSubscriptionsPhase0.java | 25 ++++++++------- .../gossip/AbstractGossipManagerTest.java | 5 +-- .../gossip/AggregateGossipManagerTest.java | 4 +-- .../gossip/AttestationGossipManagerTest.java | 4 +-- .../gossip/BlobSidecarGossipManagerTest.java | 5 +-- .../eth2/gossip/BlockGossipManagerTest.java | 4 +-- .../AttestationSubnetSubscriptionsTest.java | 5 +-- .../topics/AbstractTopicHandlerTest.java | 1 + .../topics/AggregateTopicHandlerTest.java | 3 +- .../AttesterSlashingTopicHandlerTest.java | 3 +- .../gossip/topics/BlockTopicHandlerTest.java | 3 +- .../gossip/topics/Eth2TopicHandlerTest.java | 3 +- .../ProposerSlashingTopicHandlerTest.java | 3 +- .../SingleAttestationTopicHandlerTest.java | 3 +- .../topics/VoluntaryExitTopicHandlerTest.java | 3 +- .../p2p/libp2p/gossip/GossipHandlerTest.java | 12 ++++--- 34 files changed, 185 insertions(+), 66 deletions(-) diff --git a/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/Constants.java b/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/Constants.java index e97e2c249ce..e01f476b385 100644 --- a/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/Constants.java +++ b/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/Constants.java @@ -19,8 +19,6 @@ public class Constants { // Networking - public static final int GOSSIP_MAX_SIZE = 1048576; // bytes - public static final int GOSSIP_MAX_SIZE_BELLATRIX = 10485760; // bytes public static final UInt64 MAX_REQUEST_BLOCKS = UInt64.valueOf(1024); public static final int MAX_CHUNK_SIZE = 1048576; // bytes public static final int MAX_CHUNK_SIZE_BELLATRIX = 10485760; // bytes diff --git a/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/DelegatingSpecConfig.java b/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/DelegatingSpecConfig.java index 0fd08a3fbb2..240eab72e62 100644 --- a/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/DelegatingSpecConfig.java +++ b/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/DelegatingSpecConfig.java @@ -301,6 +301,11 @@ public ProgressiveBalancesMode getProgressiveBalancesMode() { return specConfig.getProgressiveBalancesMode(); } + @Override + public int getGossipMaxSize() { + return specConfig.getGossipMaxSize(); + } + @Override public int getProposerScoreBoost() { return specConfig.getProposerScoreBoost(); diff --git a/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/SpecConfig.java b/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/SpecConfig.java index 99bb1de3258..09de9d48657 100644 --- a/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/SpecConfig.java +++ b/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/SpecConfig.java @@ -144,6 +144,8 @@ static SpecConfigBuilder builder() { ProgressiveBalancesMode getProgressiveBalancesMode(); + int getGossipMaxSize(); + default int getMinEpochsForBlockRequests() { return getMinValidatorWithdrawabilityDelay() + getChurnLimitQuotient() / 2; } diff --git a/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/SpecConfigPhase0.java b/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/SpecConfigPhase0.java index a2766a96d08..302f42224fb 100644 --- a/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/SpecConfigPhase0.java +++ b/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/SpecConfigPhase0.java @@ -102,6 +102,8 @@ public class SpecConfigPhase0 implements SpecConfig { private final ProgressiveBalancesMode progressiveBalancesMode; + private final int gossipMaxSize; + public SpecConfigPhase0( final Map rawConfig, final UInt64 eth1FollowDistance, @@ -153,7 +155,8 @@ public SpecConfigPhase0( final long depositChainId, final long depositNetworkId, final Eth1Address depositContractAddress, - final ProgressiveBalancesMode progressiveBalancesMode) { + final ProgressiveBalancesMode progressiveBalancesMode, + final int gossipMaxSize) { this.rawConfig = rawConfig; this.eth1FollowDistance = eth1FollowDistance; this.maxCommitteesPerSlot = maxCommitteesPerSlot; @@ -206,6 +209,7 @@ public SpecConfigPhase0( this.depositContractAddress = depositContractAddress; this.squareRootSlotsPerEpoch = MathHelpers.integerSquareRoot(slotsPerEpoch); this.progressiveBalancesMode = progressiveBalancesMode; + this.gossipMaxSize = gossipMaxSize; } @Override @@ -488,6 +492,11 @@ public ProgressiveBalancesMode getProgressiveBalancesMode() { return progressiveBalancesMode; } + @Override + public int getGossipMaxSize() { + return gossipMaxSize; + } + @Override public boolean equals(final Object o) { if (this == o) { diff --git a/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/builder/SpecConfigBuilder.java b/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/builder/SpecConfigBuilder.java index 4f9245d6866..c7dc503a357 100644 --- a/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/builder/SpecConfigBuilder.java +++ b/ethereum/spec/src/main/java/tech/pegasys/teku/spec/config/builder/SpecConfigBuilder.java @@ -104,6 +104,8 @@ public class SpecConfigBuilder { private ProgressiveBalancesMode progressiveBalancesMode = ProgressiveBalancesMode.FULL; + private int gossipMaxSize; + private final BuilderChain builderChain = BuilderChain.create(new AltairBuilder()) .appendBuilder(new BellatrixBuilder()) @@ -170,7 +172,8 @@ public SpecConfig build() { depositChainId, depositNetworkId, depositContractAddress, - progressiveBalancesMode); + progressiveBalancesMode, + gossipMaxSize); return builderChain.build(config); } @@ -542,6 +545,11 @@ public SpecConfigBuilder progressiveBalancesMode( return this; } + public SpecConfigBuilder gossipMaxSize(final int gossipMaxSize) { + this.gossipMaxSize = gossipMaxSize; + return this; + } + public SpecConfigBuilder altairBuilder(final Consumer consumer) { builderChain.withBuilder(AltairBuilder.class, consumer); return this; diff --git a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/configs/mainnet.yaml b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/configs/mainnet.yaml index 9e648c34a3b..f96a9768d87 100644 --- a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/configs/mainnet.yaml +++ b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/configs/mainnet.yaml @@ -92,4 +92,34 @@ PROPOSER_SCORE_BOOST: 40 # Ethereum PoW Mainnet DEPOSIT_CHAIN_ID: 1 DEPOSIT_NETWORK_ID: 1 -DEPOSIT_CONTRACT_ADDRESS: 0x00000000219ab540356cBB839Cbe05303d7705Fa \ No newline at end of file +DEPOSIT_CONTRACT_ADDRESS: 0x00000000219ab540356cBB839Cbe05303d7705Fa + + +# Networking +# --------------------------------------------------------------- +# `2**20` (= 1048576, 1 MiB) +GOSSIP_MAX_SIZE: 1048576 +# `2**10` (= 1024) +#MAX_REQUEST_BLOCKS: 1024 +## `2**8` (= 256) +#EPOCHS_PER_SUBNET_SUBSCRIPTION: 256 +## `MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2` (= 33024, ~5 months) +#MIN_EPOCHS_FOR_BLOCK_REQUESTS: 33024 +## `2**20` (=1048576, 1 MiB) +#MAX_CHUNK_SIZE: 1048576 +## 5s +#TTFB_TIMEOUT: 5 +## 10s +#RESP_TIMEOUT: 10 +#ATTESTATION_PROPAGATION_SLOT_RANGE: 32 +## 500ms +#MAXIMUM_GOSSIP_CLOCK_DISPARITY: 500 +#MESSAGE_DOMAIN_INVALID_SNAPPY: 0x00000000 +#MESSAGE_DOMAIN_VALID_SNAPPY: 0x01000000 +## 2 subnets per node +#SUBNETS_PER_NODE: 2 +## 2**8 (= 64) +#ATTESTATION_SUBNET_COUNT: 64 +#ATTESTATION_SUBNET_EXTRA_BITS: 0 +## ceillog2(ATTESTATION_SUBNET_COUNT) + ATTESTATION_SUBNET_EXTRA_BITS +#ATTESTATION_SUBNET_PREFIX_BITS: 6 \ No newline at end of file diff --git a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/configs/minimal.yaml b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/configs/minimal.yaml index 078e025079c..2d9a4e72fb8 100644 --- a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/configs/minimal.yaml +++ b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/configs/minimal.yaml @@ -91,4 +91,34 @@ PROPOSER_SCORE_BOOST: 40 DEPOSIT_CHAIN_ID: 5 DEPOSIT_NETWORK_ID: 5 # Configured on a per testnet basis -DEPOSIT_CONTRACT_ADDRESS: 0x1234567890123456789012345678901234567890 \ No newline at end of file +DEPOSIT_CONTRACT_ADDRESS: 0x1234567890123456789012345678901234567890 + + +# Networking +# --------------------------------------------------------------- +# `2**20` (= 1048576, 1 MiB) +GOSSIP_MAX_SIZE: 1048576 +# `2**10` (= 1024) +#MAX_REQUEST_BLOCKS: 1024 +## `2**8` (= 256) +#EPOCHS_PER_SUBNET_SUBSCRIPTION: 256 +## [customized] `MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2` (= 272) +#MIN_EPOCHS_FOR_BLOCK_REQUESTS: 272 +## `2**20` (=1048576, 1 MiB) +#MAX_CHUNK_SIZE: 1048576 +## 5s +#TTFB_TIMEOUT: 5 +## 10s +#RESP_TIMEOUT: 10 +#ATTESTATION_PROPAGATION_SLOT_RANGE: 32 +## 500ms +#MAXIMUM_GOSSIP_CLOCK_DISPARITY: 500 +#MESSAGE_DOMAIN_INVALID_SNAPPY: 0x00000000 +#MESSAGE_DOMAIN_VALID_SNAPPY: 0x01000000 +## 2 subnets per node +#SUBNETS_PER_NODE: 2 +## 2**8 (= 64) +#ATTESTATION_SUBNET_COUNT: 64 +#ATTESTATION_SUBNET_EXTRA_BITS: 0 +## ceillog2(ATTESTATION_SUBNET_COUNT) + ATTESTATION_SUBNET_EXTRA_BITS +#ATTESTATION_SUBNET_PREFIX_BITS: 6 \ No newline at end of file diff --git a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/gnosis/bellatrix.yaml b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/gnosis/bellatrix.yaml index a6e3ce5079a..29884cfe62c 100644 --- a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/gnosis/bellatrix.yaml +++ b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/gnosis/bellatrix.yaml @@ -19,4 +19,9 @@ MAX_TRANSACTIONS_PER_PAYLOAD: 1048576 # 2**8 (= 256) BYTES_PER_LOGS_BLOOM: 256 # 2**5 (= 32) -MAX_EXTRA_DATA_BYTES: 32 \ No newline at end of file +MAX_EXTRA_DATA_BYTES: 32 + +# Networking +# --------------------------------------------------------------- +# `10 * 2**20` (= 10485760, 10 MiB) +GOSSIP_MAX_SIZE: 10485760 \ No newline at end of file diff --git a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/mainnet/bellatrix.yaml b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/mainnet/bellatrix.yaml index 5ae57d24f24..4a7135e562c 100644 --- a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/mainnet/bellatrix.yaml +++ b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/mainnet/bellatrix.yaml @@ -18,4 +18,9 @@ MAX_TRANSACTIONS_PER_PAYLOAD: 1048576 # 2**8 (= 256) BYTES_PER_LOGS_BLOOM: 256 # 2**5 (= 32) -MAX_EXTRA_DATA_BYTES: 32 \ No newline at end of file +MAX_EXTRA_DATA_BYTES: 32 + +# Networking +# --------------------------------------------------------------- +# `10 * 2**20` (= 10485760, 10 MiB) +GOSSIP_MAX_SIZE: 10485760 \ No newline at end of file diff --git a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/minimal/bellatrix.yaml b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/minimal/bellatrix.yaml index d664094d373..1f3501fab86 100644 --- a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/minimal/bellatrix.yaml +++ b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/minimal/bellatrix.yaml @@ -18,4 +18,9 @@ MAX_TRANSACTIONS_PER_PAYLOAD: 1048576 # 2**8 (= 256) BYTES_PER_LOGS_BLOOM: 256 # 2**5 (= 32) -MAX_EXTRA_DATA_BYTES: 32 \ No newline at end of file +MAX_EXTRA_DATA_BYTES: 32 + +# Networking +# --------------------------------------------------------------- +# `10 * 2**20` (= 10485760, 10 MiB) +GOSSIP_MAX_SIZE: 10485760 \ No newline at end of file diff --git a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/swift/bellatrix.yaml b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/swift/bellatrix.yaml index d664094d373..1f3501fab86 100644 --- a/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/swift/bellatrix.yaml +++ b/ethereum/spec/src/main/resources/tech/pegasys/teku/spec/config/presets/swift/bellatrix.yaml @@ -18,4 +18,9 @@ MAX_TRANSACTIONS_PER_PAYLOAD: 1048576 # 2**8 (= 256) BYTES_PER_LOGS_BLOOM: 256 # 2**5 (= 32) -MAX_EXTRA_DATA_BYTES: 32 \ No newline at end of file +MAX_EXTRA_DATA_BYTES: 32 + +# Networking +# --------------------------------------------------------------- +# `10 * 2**20` (= 10485760, 10 MiB) +GOSSIP_MAX_SIZE: 10485760 \ No newline at end of file diff --git a/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/mainnet/bellatrix.yaml b/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/mainnet/bellatrix.yaml index 5ae57d24f24..4a7135e562c 100644 --- a/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/mainnet/bellatrix.yaml +++ b/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/mainnet/bellatrix.yaml @@ -18,4 +18,9 @@ MAX_TRANSACTIONS_PER_PAYLOAD: 1048576 # 2**8 (= 256) BYTES_PER_LOGS_BLOOM: 256 # 2**5 (= 32) -MAX_EXTRA_DATA_BYTES: 32 \ No newline at end of file +MAX_EXTRA_DATA_BYTES: 32 + +# Networking +# --------------------------------------------------------------- +# `10 * 2**20` (= 10485760, 10 MiB) +GOSSIP_MAX_SIZE: 10485760 \ No newline at end of file diff --git a/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/minimal/bellatrix.yaml b/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/minimal/bellatrix.yaml index d664094d373..1f3501fab86 100644 --- a/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/minimal/bellatrix.yaml +++ b/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/minimal/bellatrix.yaml @@ -18,4 +18,9 @@ MAX_TRANSACTIONS_PER_PAYLOAD: 1048576 # 2**8 (= 256) BYTES_PER_LOGS_BLOOM: 256 # 2**5 (= 32) -MAX_EXTRA_DATA_BYTES: 32 \ No newline at end of file +MAX_EXTRA_DATA_BYTES: 32 + +# Networking +# --------------------------------------------------------------- +# `10 * 2**20` (= 10485760, 10 MiB) +GOSSIP_MAX_SIZE: 10485760 \ No newline at end of file diff --git a/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/swift/bellatrix.yaml b/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/swift/bellatrix.yaml index d664094d373..1f3501fab86 100644 --- a/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/swift/bellatrix.yaml +++ b/ethereum/spec/src/test/resources/tech/pegasys/teku/spec/config/standard/presets/swift/bellatrix.yaml @@ -18,4 +18,9 @@ MAX_TRANSACTIONS_PER_PAYLOAD: 1048576 # 2**8 (= 256) BYTES_PER_LOGS_BLOOM: 256 # 2**5 (= 32) -MAX_EXTRA_DATA_BYTES: 32 \ No newline at end of file +MAX_EXTRA_DATA_BYTES: 32 + +# Networking +# --------------------------------------------------------------- +# `10 * 2**20` (= 10485760, 10 MiB) +GOSSIP_MAX_SIZE: 10485760 \ No newline at end of file diff --git a/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsAltair.java b/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsAltair.java index a2576220d2e..c1ba0a10622 100644 --- a/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsAltair.java +++ b/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsAltair.java @@ -22,6 +22,7 @@ import tech.pegasys.teku.networking.eth2.gossip.topics.OperationProcessor; import tech.pegasys.teku.networking.p2p.discovery.DiscoveryNetwork; import tech.pegasys.teku.spec.Spec; +import tech.pegasys.teku.spec.config.SpecConfig; import tech.pegasys.teku.spec.datastructures.attestation.ValidatableAttestation; import tech.pegasys.teku.spec.datastructures.blocks.SignedBeaconBlock; import tech.pegasys.teku.spec.datastructures.operations.AttesterSlashing; @@ -84,6 +85,7 @@ public GossipForkSubscriptionsAltair( void addSignedContributionAndProofGossipManager(final ForkInfo forkInfo) { final SchemaDefinitionsAltair schemaDefinitions = SchemaDefinitionsAltair.required(spec.atEpoch(getActivationEpoch()).getSchemaDefinitions()); + final SpecConfig specConfig = spec.atEpoch(getActivationEpoch()).getConfig(); syncCommitteeContributionGossipManager = new SignedContributionAndProofGossipManager( recentChainData, @@ -93,13 +95,14 @@ void addSignedContributionAndProofGossipManager(final ForkInfo forkInfo) { gossipEncoding, forkInfo, signedContributionAndProofOperationProcessor, - getMessageMaxSize()); + specConfig.getGossipMaxSize()); addGossipManager(syncCommitteeContributionGossipManager); } void addSyncCommitteeMessageGossipManager(final ForkInfo forkInfo) { final SchemaDefinitionsAltair schemaDefinitions = SchemaDefinitionsAltair.required(spec.atEpoch(getActivationEpoch()).getSchemaDefinitions()); + final SpecConfig specConfig = spec.atEpoch(getActivationEpoch()).getConfig(); final SyncCommitteeSubnetSubscriptions syncCommitteeSubnetSubscriptions = new SyncCommitteeSubnetSubscriptions( spec, @@ -110,7 +113,7 @@ void addSyncCommitteeMessageGossipManager(final ForkInfo forkInfo) { asyncRunner, syncCommitteeMessageOperationProcessor, forkInfo, - getMessageMaxSize()); + specConfig.getGossipMaxSize()); syncCommitteeMessageGossipManager = new SyncCommitteeMessageGossipManager( metricsSystem, diff --git a/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsBellatrix.java b/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsBellatrix.java index 967113e526a..9d6a94b533e 100644 --- a/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsBellatrix.java +++ b/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsBellatrix.java @@ -13,8 +13,6 @@ package tech.pegasys.teku.networking.eth2.gossip.forks.versions; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE_BELLATRIX; - import org.hyperledger.besu.plugin.services.MetricsSystem; import tech.pegasys.teku.infrastructure.async.AsyncRunner; import tech.pegasys.teku.networking.eth2.gossip.encoding.GossipEncoding; @@ -68,9 +66,4 @@ public GossipForkSubscriptionsBellatrix( signedContributionAndProofOperationProcessor, syncCommitteeMessageOperationProcessor); } - - @Override - protected int getMessageMaxSize() { - return GOSSIP_MAX_SIZE_BELLATRIX; - } } diff --git a/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsCapella.java b/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsCapella.java index ea295a9c316..8506f74591c 100644 --- a/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsCapella.java +++ b/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsCapella.java @@ -23,6 +23,7 @@ import tech.pegasys.teku.networking.eth2.gossip.topics.OperationProcessor; import tech.pegasys.teku.networking.p2p.discovery.DiscoveryNetwork; import tech.pegasys.teku.spec.Spec; +import tech.pegasys.teku.spec.config.SpecConfig; import tech.pegasys.teku.spec.datastructures.attestation.ValidatableAttestation; import tech.pegasys.teku.spec.datastructures.blocks.SignedBeaconBlock; import tech.pegasys.teku.spec.datastructures.operations.AttesterSlashing; @@ -92,6 +93,7 @@ void addSignedBlsToExecutionChangeGossipManager(final ForkInfo forkInfo) { final SchemaDefinitionsCapella schemaDefinitions = SchemaDefinitionsCapella.required( spec.atEpoch(getActivationEpoch()).getSchemaDefinitions()); + final SpecConfig specConfig = spec.atEpoch(getActivationEpoch()).getConfig(); final SignedBlsToExecutionChangeGossipManager gossipManager = new SignedBlsToExecutionChangeGossipManager( @@ -102,7 +104,7 @@ void addSignedBlsToExecutionChangeGossipManager(final ForkInfo forkInfo) { gossipEncoding, forkInfo, signedBlsToExecutionChangeOperationProcessor, - getMessageMaxSize()); + specConfig.getGossipMaxSize()); addGossipManager(gossipManager); this.signedBlsToExecutionChangeGossipManager = Optional.of(gossipManager); diff --git a/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsDeneb.java b/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsDeneb.java index e9cac815c67..8a5d75ce3dc 100644 --- a/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsDeneb.java +++ b/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsDeneb.java @@ -21,6 +21,7 @@ import tech.pegasys.teku.networking.eth2.gossip.topics.OperationProcessor; import tech.pegasys.teku.networking.p2p.discovery.DiscoveryNetwork; import tech.pegasys.teku.spec.Spec; +import tech.pegasys.teku.spec.config.SpecConfig; import tech.pegasys.teku.spec.datastructures.attestation.ValidatableAttestation; import tech.pegasys.teku.spec.datastructures.blobs.versions.deneb.SignedBlobSidecar; import tech.pegasys.teku.spec.datastructures.blocks.SignedBeaconBlock; @@ -90,6 +91,7 @@ protected void addGossipManagers(final ForkInfo forkInfo) { } void addBlobSidecarGossipManager(final ForkInfo forkInfo) { + final SpecConfig specConfig = spec.atEpoch(getActivationEpoch()).getConfig(); blobSidecarGossipManager = BlobSidecarGossipManager.create( recentChainData, @@ -99,7 +101,7 @@ void addBlobSidecarGossipManager(final ForkInfo forkInfo) { gossipEncoding, forkInfo, blobSidecarProcessor, - getMessageMaxSize()); + specConfig.getGossipMaxSize()); addGossipManager(blobSidecarGossipManager); } diff --git a/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsPhase0.java b/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsPhase0.java index c80d0edf85a..34554a64294 100644 --- a/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsPhase0.java +++ b/networking/eth2/src/main/java/tech/pegasys/teku/networking/eth2/gossip/forks/versions/GossipForkSubscriptionsPhase0.java @@ -13,8 +13,6 @@ package tech.pegasys.teku.networking.eth2.gossip.forks.versions; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; - import java.util.ArrayList; import java.util.List; import org.apache.tuweni.bytes.Bytes32; @@ -34,6 +32,7 @@ import tech.pegasys.teku.networking.eth2.gossip.topics.OperationProcessor; import tech.pegasys.teku.networking.p2p.discovery.DiscoveryNetwork; import tech.pegasys.teku.spec.Spec; +import tech.pegasys.teku.spec.config.SpecConfig; import tech.pegasys.teku.spec.datastructures.attestation.ValidatableAttestation; import tech.pegasys.teku.spec.datastructures.blocks.SignedBeaconBlock; import tech.pegasys.teku.spec.datastructures.operations.AttesterSlashing; @@ -115,6 +114,7 @@ public final void startGossip( } void addAttestationGossipManager(final ForkInfo forkInfo) { + final SpecConfig specConfig = spec.atEpoch(getActivationEpoch()).getConfig(); AttestationSubnetSubscriptions attestationSubnetSubscriptions = new AttestationSubnetSubscriptions( spec, @@ -124,7 +124,7 @@ void addAttestationGossipManager(final ForkInfo forkInfo) { recentChainData, attestationProcessor, forkInfo, - getMessageMaxSize()); + specConfig.getGossipMaxSize()); attestationGossipManager = new AttestationGossipManager(metricsSystem, attestationSubnetSubscriptions); @@ -132,6 +132,7 @@ void addAttestationGossipManager(final ForkInfo forkInfo) { } void addBlockGossipManager(final ForkInfo forkInfo) { + final SpecConfig specConfig = spec.atEpoch(getActivationEpoch()).getConfig(); blockGossipManager = new BlockGossipManager( recentChainData, @@ -141,11 +142,12 @@ void addBlockGossipManager(final ForkInfo forkInfo) { gossipEncoding, forkInfo, blockProcessor, - getMessageMaxSize()); + specConfig.getGossipMaxSize()); addGossipManager(blockGossipManager); } void addAggregateGossipManager(final ForkInfo forkInfo) { + final SpecConfig specConfig = spec.atEpoch(getActivationEpoch()).getConfig(); aggregateGossipManager = new AggregateGossipManager( spec, @@ -155,11 +157,12 @@ void addAggregateGossipManager(final ForkInfo forkInfo) { gossipEncoding, forkInfo, aggregateProcessor, - getMessageMaxSize()); + specConfig.getGossipMaxSize()); addGossipManager(aggregateGossipManager); } void addVoluntaryExitGossipManager(final ForkInfo forkInfo) { + final SpecConfig specConfig = spec.atEpoch(getActivationEpoch()).getConfig(); voluntaryExitGossipManager = new VoluntaryExitGossipManager( recentChainData, @@ -168,11 +171,12 @@ void addVoluntaryExitGossipManager(final ForkInfo forkInfo) { gossipEncoding, forkInfo, voluntaryExitProcessor, - getMessageMaxSize()); + specConfig.getGossipMaxSize()); addGossipManager(voluntaryExitGossipManager); } void addProposerSlashingGossipManager(final ForkInfo forkInfo) { + final SpecConfig specConfig = spec.atEpoch(getActivationEpoch()).getConfig(); proposerSlashingGossipManager = new ProposerSlashingGossipManager( recentChainData, @@ -181,11 +185,12 @@ void addProposerSlashingGossipManager(final ForkInfo forkInfo) { gossipEncoding, forkInfo, proposerSlashingProcessor, - getMessageMaxSize()); + specConfig.getGossipMaxSize()); addGossipManager(proposerSlashingGossipManager); } void addAttesterSlashingGossipManager(final ForkInfo forkInfo) { + final SpecConfig specConfig = spec.atEpoch(getActivationEpoch()).getConfig(); attesterSlashingGossipManager = new AttesterSlashingGossipManager( spec, @@ -195,7 +200,7 @@ void addAttesterSlashingGossipManager(final ForkInfo forkInfo) { gossipEncoding, forkInfo, attesterSlashingProcessor, - getMessageMaxSize()); + specConfig.getGossipMaxSize()); addGossipManager(attesterSlashingGossipManager); } @@ -259,8 +264,4 @@ public void subscribeToAttestationSubnetId(final int subnetId) { public void unsubscribeFromAttestationSubnetId(final int subnetId) { attestationGossipManager.unsubscribeFromSubnetId(subnetId); } - - protected int getMessageMaxSize() { - return GOSSIP_MAX_SIZE; - } } diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AbstractGossipManagerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AbstractGossipManagerTest.java index f206e629152..13c08684513 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AbstractGossipManagerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AbstractGossipManagerTest.java @@ -20,7 +20,6 @@ import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoInteractions; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -47,6 +46,8 @@ class AbstractGossipManagerTest { private static final GossipTopicName TOPIC_NAME = GossipTopicName.VOLUNTARY_EXIT; private final Spec spec = TestSpecFactory.createDefault(); + + private final int gossipMaxSize = spec.getGenesisSpecConfig().getGossipMaxSize(); private final DataStructureUtil dataStructureUtil = new DataStructureUtil(spec); private final StorageSystem storageSystem = InMemoryStorageSystemBuilder.buildDefault(spec); private final StubAsyncRunner asyncRunner = new StubAsyncRunner(); @@ -77,7 +78,7 @@ void setUp() { forkInfo, processor, SszPrimitiveSchemas.UINT64_SCHEMA, - GOSSIP_MAX_SIZE); + gossipMaxSize); } @Test diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AggregateGossipManagerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AggregateGossipManagerTest.java index 0ba85c36ca5..b455f2c1f31 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AggregateGossipManagerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AggregateGossipManagerTest.java @@ -18,7 +18,6 @@ import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import org.apache.tuweni.bytes.Bytes; import org.junit.jupiter.api.BeforeEach; @@ -42,6 +41,7 @@ public class AggregateGossipManagerTest { private final Spec spec = TestSpecFactory.createDefault(); + private final int gossipMaxSize = spec.getGenesisSpecConfig().getGossipMaxSize(); private final StorageSystem storageSystem = InMemoryStorageSystemBuilder.buildDefault(spec); private final DataStructureUtil dataStructureUtil = new DataStructureUtil(spec); private final StubAsyncRunner asyncRunner = new StubAsyncRunner(); @@ -72,7 +72,7 @@ public void setup() { gossipEncoding, forkInfo, processor, - GOSSIP_MAX_SIZE); + gossipMaxSize); gossipManager.subscribe(); } diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AttestationGossipManagerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AttestationGossipManagerTest.java index 9610f16a9ce..460ffec3979 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AttestationGossipManagerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/AttestationGossipManagerTest.java @@ -19,7 +19,6 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static tech.pegasys.teku.infrastructure.async.SafeFutureAssert.safeJoin; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import org.apache.tuweni.bytes.Bytes; import org.junit.jupiter.api.BeforeEach; @@ -48,6 +47,7 @@ public class AttestationGossipManagerTest { private final Spec spec = TestSpecFactory.createMinimalPhase0(); + private final int gossipMaxSize = spec.getGenesisSpecConfig().getGossipMaxSize(); private final DataStructureUtil dataStructureUtil = new DataStructureUtil(spec); @SuppressWarnings("unchecked") @@ -71,7 +71,7 @@ public class AttestationGossipManagerTest { recentChainData, gossipedAttestationProcessor, forkInfo, - GOSSIP_MAX_SIZE); + gossipMaxSize); @BeforeEach public void setup() { diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/BlobSidecarGossipManagerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/BlobSidecarGossipManagerTest.java index b1cc67cf9dc..8285374b7b4 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/BlobSidecarGossipManagerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/BlobSidecarGossipManagerTest.java @@ -20,7 +20,6 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoInteractions; import static org.mockito.Mockito.when; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import java.util.HashMap; import java.util.Map; @@ -53,6 +52,8 @@ public class BlobSidecarGossipManagerTest { private static final Pattern BLOB_SIDECAR_TOPIC_PATTERN = Pattern.compile("blob_sidecar_(\\d+)"); private final Spec spec = TestSpecFactory.createMainnetDeneb(); + + private final int gossipMaxSize = spec.getGenesisSpecConfig().getGossipMaxSize(); private final StorageSystem storageSystem = InMemoryStorageSystemBuilder.buildDefault(spec); private final DataStructureUtil dataStructureUtil = new DataStructureUtil(spec); @@ -101,7 +102,7 @@ public void setup() { gossipEncoding, forkInfo, processor, - GOSSIP_MAX_SIZE); + gossipMaxSize); blobSidecarGossipManager.subscribe(); } diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/BlockGossipManagerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/BlockGossipManagerTest.java index de7aa19693d..93a4c6c8e68 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/BlockGossipManagerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/BlockGossipManagerTest.java @@ -18,7 +18,6 @@ import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import org.apache.tuweni.bytes.Bytes; import org.junit.jupiter.api.BeforeEach; @@ -41,6 +40,7 @@ public class BlockGossipManagerTest { private final Spec spec = TestSpecFactory.createMinimalPhase0(); + private final int gossipMaxSize = spec.getGenesisSpecConfig().getGossipMaxSize(); private final StorageSystem storageSystem = InMemoryStorageSystemBuilder.buildDefault(spec); private final DataStructureUtil dataStructureUtil = new DataStructureUtil(spec); private final StubAsyncRunner asyncRunner = new StubAsyncRunner(); @@ -70,7 +70,7 @@ public void setup() { gossipEncoding, forkInfo, processor, - GOSSIP_MAX_SIZE); + gossipMaxSize); blockGossipManager.subscribe(); } diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/subnets/AttestationSubnetSubscriptionsTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/subnets/AttestationSubnetSubscriptionsTest.java index 5c72a2ccf39..e7ddf666780 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/subnets/AttestationSubnetSubscriptionsTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/subnets/AttestationSubnetSubscriptionsTest.java @@ -23,7 +23,6 @@ import static org.mockito.Mockito.when; import static tech.pegasys.teku.infrastructure.async.SafeFutureAssert.assertThatSafeFuture; import static tech.pegasys.teku.infrastructure.async.SafeFutureAssert.safeJoin; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import java.util.Optional; import org.junit.jupiter.api.BeforeEach; @@ -44,6 +43,8 @@ public class AttestationSubnetSubscriptionsTest { private final Spec spec = TestSpecFactory.createMinimalPhase0(); + + private final int gossipMaxSize = spec.getGenesisSpecConfig().getGossipMaxSize(); private final DataStructureUtil dataStructureUtil = new DataStructureUtil(spec); private final StubAsyncRunner asyncRunner = new StubAsyncRunner(); private final RecentChainData recentChainData = MemoryOnlyRecentChainData.create(spec); @@ -68,7 +69,7 @@ void setUp() { recentChainData, processor, recentChainData.getCurrentForkInfo().orElseThrow(), - GOSSIP_MAX_SIZE); + gossipMaxSize); subnetSubscriptions.subscribe(); when(gossipNetwork.subscribe(any(), any())).thenReturn(mock(TopicChannel.class)); diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AbstractTopicHandlerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AbstractTopicHandlerTest.java index 41e5e6adf95..ddebba41ecc 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AbstractTopicHandlerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AbstractTopicHandlerTest.java @@ -39,6 +39,7 @@ public abstract class AbstractTopicHandlerTest { protected final Spec spec = TestSpecFactory.createMinimalWithAltairAndBellatrixForkEpoch( UInt64.ONE, BELLATRIX_FORK_EPOCH); + protected final int gossipMaxSize = spec.getGenesisSpecConfig().getGossipMaxSize(); protected final GossipNetwork gossipNetwork = mock(GossipNetwork.class); protected final DataStructureUtil dataStructureUtil = new DataStructureUtil(spec); protected final GossipEncoding gossipEncoding = GossipEncoding.SSZ_SNAPPY; diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AggregateTopicHandlerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AggregateTopicHandlerTest.java index d22ad11d4a5..8964df428c9 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AggregateTopicHandlerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AggregateTopicHandlerTest.java @@ -16,7 +16,6 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.verifyNoInteractions; import static org.mockito.Mockito.when; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import io.libp2p.core.pubsub.ValidationResult; import org.junit.jupiter.api.Test; @@ -38,7 +37,7 @@ protected Eth2TopicHandler createHandler() { gossipEncoding, forkInfo, processor, - GOSSIP_MAX_SIZE) + gossipMaxSize) .getTopicHandler(); } diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AttesterSlashingTopicHandlerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AttesterSlashingTopicHandlerTest.java index 4c072c4dd35..ef36ef862e6 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AttesterSlashingTopicHandlerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/AttesterSlashingTopicHandlerTest.java @@ -16,7 +16,6 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.verifyNoInteractions; import static org.mockito.Mockito.when; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import io.libp2p.core.pubsub.ValidationResult; import org.apache.tuweni.bytes.Bytes; @@ -40,7 +39,7 @@ protected Eth2TopicHandler createHandler() { gossipEncoding, forkInfo, processor, - GOSSIP_MAX_SIZE); + gossipMaxSize); return gossipManager.getTopicHandler(); } diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/BlockTopicHandlerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/BlockTopicHandlerTest.java index a871413793a..0706401d408 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/BlockTopicHandlerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/BlockTopicHandlerTest.java @@ -16,7 +16,6 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.verifyNoInteractions; import static org.mockito.Mockito.when; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import io.libp2p.core.pubsub.ValidationResult; import org.apache.tuweni.bytes.Bytes; @@ -41,7 +40,7 @@ protected Eth2TopicHandler createHandler() { gossipEncoding, forkInfo, processor, - GOSSIP_MAX_SIZE) + gossipMaxSize) .getTopicHandler(); } diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/Eth2TopicHandlerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/Eth2TopicHandlerTest.java index 54ecf1bcac8..10b5bd84966 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/Eth2TopicHandlerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/Eth2TopicHandlerTest.java @@ -14,7 +14,6 @@ package tech.pegasys.teku.networking.eth2.gossip.topics; import static tech.pegasys.teku.infrastructure.async.SafeFutureAssert.assertThatSafeFuture; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import io.libp2p.core.pubsub.ValidationResult; import java.util.concurrent.CompletionException; @@ -306,7 +305,7 @@ protected MockEth2TopicHandler( new OperationMilestoneValidator<>( spec, spec.getForkSchedule().getFork(UInt64.ZERO), message -> UInt64.ZERO), spec.getGenesisSchemaDefinitions().getSignedBeaconBlockSchema(), - GOSSIP_MAX_SIZE); + spec.getGenesisSpecConfig().getGossipMaxSize()); this.forkDigest = recentChainData.getForkDigestByMilestone(SpecMilestone.PHASE0).orElseThrow(); deserializer = diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/ProposerSlashingTopicHandlerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/ProposerSlashingTopicHandlerTest.java index 33d40bcfee6..6d7f7a294a4 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/ProposerSlashingTopicHandlerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/ProposerSlashingTopicHandlerTest.java @@ -16,7 +16,6 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.verifyNoInteractions; import static org.mockito.Mockito.when; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import io.libp2p.core.pubsub.ValidationResult; import org.apache.tuweni.bytes.Bytes; @@ -39,7 +38,7 @@ protected Eth2TopicHandler createHandler() { gossipEncoding, forkInfo, processor, - GOSSIP_MAX_SIZE) + gossipMaxSize) .getTopicHandler(); } diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/SingleAttestationTopicHandlerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/SingleAttestationTopicHandlerTest.java index 5e838e9259b..a037e7b9401 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/SingleAttestationTopicHandlerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/SingleAttestationTopicHandlerTest.java @@ -16,7 +16,6 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.verifyNoInteractions; import static org.mockito.Mockito.when; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import io.libp2p.core.pubsub.ValidationResult; import java.util.List; @@ -49,7 +48,7 @@ protected Eth2TopicHandler createHandler() { GossipTopicName.getAttestationSubnetTopicName(SUBNET_ID), spec.getGenesisSchemaDefinitions().getAttestationSchema(), SUBNET_ID, - GOSSIP_MAX_SIZE); + gossipMaxSize); } @Test diff --git a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/VoluntaryExitTopicHandlerTest.java b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/VoluntaryExitTopicHandlerTest.java index ce995d3b681..56622772139 100644 --- a/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/VoluntaryExitTopicHandlerTest.java +++ b/networking/eth2/src/test/java/tech/pegasys/teku/networking/eth2/gossip/topics/VoluntaryExitTopicHandlerTest.java @@ -17,7 +17,6 @@ import static org.mockito.Mockito.verifyNoInteractions; import static org.mockito.Mockito.when; import static tech.pegasys.teku.infrastructure.async.SafeFutureAssert.safeJoin; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import io.libp2p.core.pubsub.ValidationResult; import org.apache.tuweni.bytes.Bytes; @@ -47,7 +46,7 @@ protected Eth2TopicHandler createHandler() { gossipEncoding, forkInfo, processor, - GOSSIP_MAX_SIZE) + gossipMaxSize) .getTopicHandler(); } diff --git a/networking/p2p/src/test/java/tech/pegasys/teku/networking/p2p/libp2p/gossip/GossipHandlerTest.java b/networking/p2p/src/test/java/tech/pegasys/teku/networking/p2p/libp2p/gossip/GossipHandlerTest.java index ae9f3f672b5..e6215a10f2f 100644 --- a/networking/p2p/src/test/java/tech/pegasys/teku/networking/p2p/libp2p/gossip/GossipHandlerTest.java +++ b/networking/p2p/src/test/java/tech/pegasys/teku/networking/p2p/libp2p/gossip/GossipHandlerTest.java @@ -20,7 +20,6 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; -import static tech.pegasys.teku.spec.config.Constants.GOSSIP_MAX_SIZE; import io.libp2p.core.pubsub.PubsubPublisherApi; import io.libp2p.core.pubsub.Topic; @@ -34,8 +33,13 @@ import tech.pegasys.teku.infrastructure.metrics.StubMetricsSystem; import tech.pegasys.teku.network.p2p.jvmlibp2p.MockMessageApi; import tech.pegasys.teku.networking.p2p.gossip.TopicHandler; +import tech.pegasys.teku.spec.Spec; +import tech.pegasys.teku.spec.TestSpecFactory; public class GossipHandlerTest { + + private final Spec spec = TestSpecFactory.createMinimalPhase0(); + private final int gossipMaxSize = spec.getGenesisSpecConfig().getGossipMaxSize(); private final Topic topic = new Topic("Testing"); private final PubsubPublisherApi publisher = mock(PubsubPublisherApi.class); private final TopicHandler topicHandler = mock(TopicHandler.class); @@ -46,7 +50,7 @@ public class GossipHandlerTest { public void setup() { when(topicHandler.handleMessage(any())) .thenReturn(SafeFuture.completedFuture(ValidationResult.Valid)); - when(topicHandler.getMaxMessageSize()).thenReturn(GOSSIP_MAX_SIZE); + when(topicHandler.getMaxMessageSize()).thenReturn(gossipMaxSize); when(publisher.publish(any(), any())).thenReturn(SafeFuture.completedFuture(null)); } @@ -72,7 +76,7 @@ public void apply_invalid() { @Test public void apply_exceedsMaxSize() { - final Bytes data = Bytes.wrap(new byte[GOSSIP_MAX_SIZE + 1]); + final Bytes data = Bytes.wrap(new byte[gossipMaxSize + 1]); final MockMessageApi message = new MockMessageApi(data, topic); final SafeFuture result = gossipHandler.apply(message); @@ -82,7 +86,7 @@ public void apply_exceedsMaxSize() { @Test public void apply_bufferCapacityExceedsMaxSize() { - ByteBuf data = Unpooled.buffer(GOSSIP_MAX_SIZE + 1).writeBytes(new byte[GOSSIP_MAX_SIZE]); + ByteBuf data = Unpooled.buffer(gossipMaxSize + 1).writeBytes(new byte[gossipMaxSize]); final MockMessageApi message = new MockMessageApi(data, topic); final SafeFuture result = gossipHandler.apply(message);