You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
BESU's GasCalculator interface gets a new implementation with every EVM version. (Usually just small changes.). We subclass one of those implementations in CustomGasCalculator. But that's currently a singleton with only one version allowed. It should be a thing that can have per-EVM-version implementations, akin to the EVM modules we currently have (e.g., V046Module, V050Module, etc.)
At the same time ... the Cancun version added an overload to GasCalculator.callOperationGasCost which has an additional argument accountIsWarm (a boolean). The previously existing method without that argument is deprecated. We need to support that. It also surfaces in the same way at Besu's AbstractCallOperation.cost() which we override at HederaDelegateCallOperation.
(See // FUTURE: comments in both CustomGasCalculator.java and HederaDelegateCallOperation.java.)
The text was updated successfully, but these errors were encountered:
david-bakin-sl
changed the title
feat: Support injecting EVM-version specific GasCalculators in smart contract service
feat: Support injecting EVM-version specific GasCalculatorss in smart contract service
Apr 24, 2024
david-bakin-sl
changed the title
feat: Support injecting EVM-version specific GasCalculatorss in smart contract service
feat: Support injecting EVM-version specific GasCalculators in smart contract service
Apr 24, 2024
BESU's
GasCalculator
interface gets a new implementation with every EVM version. (Usually just small changes.). We subclass one of those implementations inCustomGasCalculator
. But that's currently a singleton with only one version allowed. It should be a thing that can have per-EVM-version implementations, akin to the EVM modules we currently have (e.g.,V046Module
,V050Module
, etc.)At the same time ... the Cancun version added an overload to
GasCalculator.callOperationGasCost
which has an additional argumentaccountIsWarm
(a boolean). The previously existing method without that argument is deprecated. We need to support that. It also surfaces in the same way at Besu'sAbstractCallOperation.cost()
which we override atHederaDelegateCallOperation
.(See
// FUTURE:
comments in bothCustomGasCalculator.java
andHederaDelegateCallOperation.java
.)The text was updated successfully, but these errors were encountered: