Skip to content
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

En 12318 gascost txs frozen #4159

Merged
merged 8 commits into from
Jun 21, 2022
30 changes: 30 additions & 0 deletions api/groups/networkGroup_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,36 @@ func TestNetworkConfigMetrics_ShouldWork(t *testing.T) {
assert.True(t, keyAndValueFoundInResponse)
}

func TestNetworkConfigMetrics_GasLimitGuardedTxShouldWork(t *testing.T) {
t.Parallel()

statusMetricsProvider := statusHandler.NewStatusMetrics()
key := common.MetricExtraGasLimitGuardedTx
value := uint64(37)
statusMetricsProvider.SetUInt64Value(key, value)

facade := mock.FacadeStub{}
facade.StatusMetricsHandler = func() external.StatusMetricsHandler {
return statusMetricsProvider
}

networkGroup, err := groups.NewNetworkGroup(&facade)
require.NoError(t, err)

ws := startWebServer(networkGroup, "network", getNetworkRoutesConfig())

req, _ := http.NewRequest("GET", "/network/config", nil)
resp := httptest.NewRecorder()
ws.ServeHTTP(resp, req)

respBytes, _ := ioutil.ReadAll(resp.Body)
respStr := string(respBytes)
assert.Equal(t, resp.Code, http.StatusOK)

keyAndValueFoundInResponse := strings.Contains(respStr, key) && strings.Contains(respStr, fmt.Sprintf("%d", value))
assert.True(t, keyAndValueFoundInResponse)
}

func TestNetworkStatusMetrics_ShouldWork(t *testing.T) {
t.Parallel()

Expand Down
1 change: 0 additions & 1 deletion cmd/node/config/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,6 @@
# it is a good idea to increase the maximum number of opened files allowed by the operating system
FullArchiveNumActivePersisters = 10


[MiniBlocksStorage]
[MiniBlocksStorage.Cache]
Name = "MiniBlocksStorage"
Expand Down
6 changes: 3 additions & 3 deletions cmd/node/config/economics.toml
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,9 @@

[FeeSettings]
GasLimitSettings = [
{EnableEpoch = 0, MaxGasLimitPerBlock = "1500000000", MaxGasLimitPerMiniBlock = "1500000000", MaxGasLimitPerMetaBlock = "15000000000", MaxGasLimitPerMetaMiniBlock = "15000000000", MaxGasLimitPerTx = "1500000000", MinGasLimit = "50000"},
{EnableEpoch = 1, MaxGasLimitPerBlock = "1500000000", MaxGasLimitPerMiniBlock = "600000000", MaxGasLimitPerMetaBlock = "15000000000", MaxGasLimitPerMetaMiniBlock = "600000000", MaxGasLimitPerTx = "600000000", MinGasLimit = "50000"},
{EnableEpoch = 2, MaxGasLimitPerBlock = "1500000000", MaxGasLimitPerMiniBlock = "250000000", MaxGasLimitPerMetaBlock = "15000000000", MaxGasLimitPerMetaMiniBlock = "250000000", MaxGasLimitPerTx = "600000000", MinGasLimit = "50000"},
{EnableEpoch = 0, MaxGasLimitPerBlock = "1500000000", MaxGasLimitPerMiniBlock = "1500000000", MaxGasLimitPerMetaBlock = "15000000000", MaxGasLimitPerMetaMiniBlock = "15000000000", MaxGasLimitPerTx = "1500000000", MinGasLimit = "50000", ExtraGasLimitGuardedTx = "50000"},
{EnableEpoch = 1, MaxGasLimitPerBlock = "1500000000", MaxGasLimitPerMiniBlock = "600000000", MaxGasLimitPerMetaBlock = "15000000000", MaxGasLimitPerMetaMiniBlock = "600000000", MaxGasLimitPerTx = "600000000", MinGasLimit = "50000", ExtraGasLimitGuardedTx = "50000"},
{EnableEpoch = 2, MaxGasLimitPerBlock = "1500000000", MaxGasLimitPerMiniBlock = "250000000", MaxGasLimitPerMetaBlock = "15000000000", MaxGasLimitPerMetaMiniBlock = "250000000", MaxGasLimitPerTx = "600000000", MinGasLimit = "50000", ExtraGasLimitGuardedTx = "50000"},
]
MinGasPrice = "1000000000" #will yield min tx fee of 0.00005 eGLD
GasPriceModifier = 0.01
Expand Down
3 changes: 3 additions & 0 deletions common/constants.go
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,9 @@ const MetricMinGasPrice = "erd_min_gas_price"
// MetricMinGasLimit is the metric that specifies the minimum gas limit
const MetricMinGasLimit = "erd_min_gas_limit"

// MetricExtraGasLimitGuardedTx specifies the extra gas limit required for guarded transactions
const MetricExtraGasLimitGuardedTx = "erd_extra_gas_limit_guarded_tx"

// MetricRewardsTopUpGradientPoint is the metric that specifies the rewards top up gradient point
const MetricRewardsTopUpGradientPoint = "erd_rewards_top_up_gradient_point"

Expand Down
1 change: 1 addition & 0 deletions config/economicsConfig.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ type GasLimitSetting struct {
MaxGasLimitPerMetaMiniBlock string
MaxGasLimitPerTx string
MinGasLimit string
ExtraGasLimitGuardedTx string
}

// FeeSettings will hold economics fee settings
Expand Down
8 changes: 5 additions & 3 deletions config/tomlConfig_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -224,6 +224,7 @@ func TestTomlEconomicsParser(t *testing.T) {
maxGasLimitPerBlock := "18446744073709551615"
minGasPrice := "18446744073709551615"
minGasLimit := "18446744073709551615"
extraGasLimitGuardedTx := "50000"
protocolSustainabilityAddress := "erd1932eft30w753xyvme8d49qejgkjc09n5e49w4mwdjtm0neld797su0dlxp"
denomination := 18

Expand Down Expand Up @@ -252,8 +253,9 @@ func TestTomlEconomicsParser(t *testing.T) {
FeeSettings: FeeSettings{
GasLimitSettings: []GasLimitSetting{
{
MaxGasLimitPerBlock: maxGasLimitPerBlock,
MinGasLimit: minGasLimit,
MaxGasLimitPerBlock: maxGasLimitPerBlock,
MinGasLimit: minGasLimit,
ExtraGasLimitGuardedTx: extraGasLimitGuardedTx,
},
},
MinGasPrice: minGasPrice,
Expand All @@ -279,7 +281,7 @@ func TestTomlEconomicsParser(t *testing.T) {
ProtocolSustainabilityAddress = "` + protocolSustainabilityAddress + `"

[FeeSettings]
GasLimitSettings = [{EnableEpoch = 0, MaxGasLimitPerBlock = "` + maxGasLimitPerBlock + `", MaxGasLimitPerMiniBlock = "", MaxGasLimitPerMetaBlock = "", MaxGasLimitPerMetaMiniBlock = "", MaxGasLimitPerTx = "", MinGasLimit = "` + minGasLimit + `"}]
GasLimitSettings = [{EnableEpoch = 0, MaxGasLimitPerBlock = "` + maxGasLimitPerBlock + `", MaxGasLimitPerMiniBlock = "", MaxGasLimitPerMetaBlock = "", MaxGasLimitPerMetaMiniBlock = "", MaxGasLimitPerTx = "", MinGasLimit = "` + minGasLimit + `", ExtraGasLimitGuardedTx = "` + extraGasLimitGuardedTx + `"}]
MinGasPrice = "` + minGasPrice + `"
`
cfg := EconomicsConfig{}
Expand Down
2 changes: 2 additions & 0 deletions epochStart/metachain/systemSCs_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1064,6 +1064,7 @@ func createEconomicsData() process.EconomicsDataHandler {
MaxGasLimitPerMetaMiniBlock: maxGasLimitPerBlock,
MaxGasLimitPerTx: maxGasLimitPerBlock,
MinGasLimit: minGasLimit,
ExtraGasLimitGuardedTx: "50000",
},
},
MinGasPrice: minGasPrice,
Expand All @@ -1074,6 +1075,7 @@ func createEconomicsData() process.EconomicsDataHandler {
PenalizedTooMuchGasEnableEpoch: 0,
EpochNotifier: &epochNotifier.EpochNotifierStub{},
BuiltInFunctionsCostHandler: &mock.BuiltInCostHandlerStub{},
TxVersionChecker: &testscommon.TxVersionCheckerStub{},
}
economicsData, _ := economicsHandler.NewEconomicsData(argsNewEconomicsData)
return economicsData
Expand Down
266 changes: 0 additions & 266 deletions epochStart/mock/economicsHandlerStub.go

This file was deleted.

Loading