From 184939a463fa93ff56388cf084cfea1d09b91b87 Mon Sep 17 00:00:00 2001 From: Vyacheslav Date: Mon, 21 Oct 2024 15:23:34 +0300 Subject: [PATCH] update extra gas to actual value, even if provider set it themselves (#579) --- .../upstream/ethereum/EthereumUpstreamSettingsDetector.kt | 4 +--- .../ethereum/EthereumUpstreamSettingsDetectorSpec.groovy | 3 ++- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/main/kotlin/io/emeraldpay/dshackle/upstream/ethereum/EthereumUpstreamSettingsDetector.kt b/src/main/kotlin/io/emeraldpay/dshackle/upstream/ethereum/EthereumUpstreamSettingsDetector.kt index 3ee933c3..94889284 100644 --- a/src/main/kotlin/io/emeraldpay/dshackle/upstream/ethereum/EthereumUpstreamSettingsDetector.kt +++ b/src/main/kotlin/io/emeraldpay/dshackle/upstream/ethereum/EthereumUpstreamSettingsDetector.kt @@ -82,9 +82,7 @@ class EthereumUpstreamSettingsDetector( }.flatMapMany { val gaslimit = String(it).drop(3).dropLast(1).toBigInteger(16) + (21180).toBigInteger() val labels = mutableListOf(Pair("gas-limit", gaslimit.toString(10))) - if (gaslimit >= (600_000_000).toBigInteger()) { - labels.add(Pair("extra_gas_limit", "600000000")) - } + labels.add(Pair("extra_gas_limit", gaslimit.toString(10))) Flux.fromIterable(labels) }.onErrorResume { Flux.empty() diff --git a/src/test/groovy/io/emeraldpay/dshackle/upstream/ethereum/EthereumUpstreamSettingsDetectorSpec.groovy b/src/test/groovy/io/emeraldpay/dshackle/upstream/ethereum/EthereumUpstreamSettingsDetectorSpec.groovy index 84d9a4fc..dbe02f2b 100644 --- a/src/test/groovy/io/emeraldpay/dshackle/upstream/ethereum/EthereumUpstreamSettingsDetectorSpec.groovy +++ b/src/test/groovy/io/emeraldpay/dshackle/upstream/ethereum/EthereumUpstreamSettingsDetectorSpec.groovy @@ -47,7 +47,8 @@ class EthereumUpstreamSettingsDetectorSpec extends Specification { new Pair("client_type", clientType), new Pair("client_version", version), new Pair("archive", "true"), - new Pair("gas-limit", "50000000") + new Pair("gas-limit", "50000000"), + new Pair("extra_gas_limit", "50000000") ) .expectComplete() .verify(Duration.ofSeconds(1))