From a20d311b2f53b7faf844170c5eb51b65ada39d5a Mon Sep 17 00:00:00 2001 From: Jayash Satolia Date: Sun, 8 Oct 2023 20:31:30 +0530 Subject: [PATCH 1/7] Debug min stake per delegate and fix config --- code/go/0chain.net/miner/testdata/config/sc.yaml | 1 + code/go/0chain.net/smartcontract/benchmark/benchmark.go | 1 + .../smartcontract/benchmark/main/config/benchmark.yaml | 1 + code/go/0chain.net/smartcontract/minersc/miner.go | 2 ++ code/go/0chain.net/smartcontract/minersc/models.go | 2 ++ code/go/0chain.net/smartcontract/minersc/settings.go | 3 +++ code/go/0chain.net/smartcontract/stakepool/stakepool.go | 1 + code/go/0chain.net/smartcontract/storagesc/benchmark_tests.go | 3 ++- code/go/0chain.net/smartcontract/storagesc/config_settigns.go | 4 ++++ docker.local/config/benchmark.yaml | 1 + docker.local/config/loadtest_benchmark.yaml | 1 + docker.local/config/sc.yaml | 1 + .../config/1s_2m_4b/0Chain/docker.local/config/sc.yaml | 1 + .../config/1s_2m_4b/blobber/config/0chain_blobber.yaml | 1 - .../config/reference/0Chain/docker.local/config/sc.yaml | 1 + .../config/reference/blobber/config/0chain_blobber.yaml | 1 - 16 files changed, 22 insertions(+), 3 deletions(-) diff --git a/code/go/0chain.net/miner/testdata/config/sc.yaml b/code/go/0chain.net/miner/testdata/config/sc.yaml index c317af7ec8..f98cef9ef8 100644 --- a/code/go/0chain.net/miner/testdata/config/sc.yaml +++ b/code/go/0chain.net/miner/testdata/config/sc.yaml @@ -104,6 +104,7 @@ smart_contracts: time_unit: "720h" min_stake: 0.01 # min stake can be set by a node (boundary for all nodes) max_stake: 20000.0 # max stake can be set by a node (boundary for all nodes) + min_stake_per_delegate: 1 # max_mint max_mint: 1500000.0 # tokens, max amount of tokens can be minted by SC # min possible allocations size in bytes allowed by the SC diff --git a/code/go/0chain.net/smartcontract/benchmark/benchmark.go b/code/go/0chain.net/smartcontract/benchmark/benchmark.go index 5906fd769c..6106aac84a 100644 --- a/code/go/0chain.net/smartcontract/benchmark/benchmark.go +++ b/code/go/0chain.net/smartcontract/benchmark/benchmark.go @@ -176,6 +176,7 @@ const ( StorageMaxCharge = SmartContract + StorageSc + "max_charge" StorageMinStake = SmartContract + StorageSc + "min_stake" StorageMaxStake = SmartContract + StorageSc + "max_stake" + StorageMinStakePerDelegates = SmartContract + StorageSc + "min_stake_per_delegate" StorageMaxDelegates = SmartContract + StorageSc + "max_delegates" StorageDiverseBlobbers = SmartContract + StorageSc + "diverse_blobbers" StorageReadPoolMinLock = SmartContract + StorageSc + "readpool.min_lock" diff --git a/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml b/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml index 4025ac6c85..2a345d4064 100644 --- a/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml +++ b/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml @@ -135,6 +135,7 @@ smart_contracts: max_charge: 0.2 min_stake: 0.0 max_stake: 20000.0 + min_stake_per_delegate: 1 max_delegates: 200 diverse_blobbers: false failed_challenges_to_cancel: 0 diff --git a/code/go/0chain.net/smartcontract/minersc/miner.go b/code/go/0chain.net/smartcontract/minersc/miner.go index 315a28eb7c..fd46b0c8ee 100644 --- a/code/go/0chain.net/smartcontract/minersc/miner.go +++ b/code/go/0chain.net/smartcontract/minersc/miner.go @@ -51,6 +51,8 @@ func (msc *MinerSmartContract) AddMiner(t *transaction.Transaction, lockAllMiners.Lock() defer lockAllMiners.Unlock() + + logging.Logger.Info("Jayash add_miner: The new miner info", zap.Any("minStakePerDelegate", gn.MinStakePerDelegate)) newMiner.Settings.MinStake = gn.MinStakePerDelegate magicBlockMiners := balances.GetChainCurrentMagicBlock().Miners diff --git a/code/go/0chain.net/smartcontract/minersc/models.go b/code/go/0chain.net/smartcontract/minersc/models.go index e659430055..019023f996 100644 --- a/code/go/0chain.net/smartcontract/minersc/models.go +++ b/code/go/0chain.net/smartcontract/minersc/models.go @@ -271,6 +271,7 @@ func (gn *GlobalNode) readConfig() (err error) { return } gn.MinStakePerDelegate, err = currency.ParseZCN(config2.SmartContractConfig.GetFloat64(pfx + SettingName[MinStakePerDelegate])) + logging.Logger.Info("Jayash MinStakePerDelegate", zap.Any("MinStakePerDelegate", gn.MinStakePerDelegate)) if err != nil { return } @@ -380,6 +381,7 @@ func (gn *GlobalNode) Get(key Setting) (interface{}, error) { case MinStake: return gn.MinStake, nil case MinStakePerDelegate: + logging.Logger.Info("Jayash get", zap.Any("MinStakePerDelegate", gn.MinStakePerDelegate)) return gn.MinStakePerDelegate, nil case HealthCheckPeriod: return gn.HealthCheckPeriod, nil diff --git a/code/go/0chain.net/smartcontract/minersc/settings.go b/code/go/0chain.net/smartcontract/minersc/settings.go index 1630e1fab8..c1dd7a3ab2 100644 --- a/code/go/0chain.net/smartcontract/minersc/settings.go +++ b/code/go/0chain.net/smartcontract/minersc/settings.go @@ -4,6 +4,8 @@ import ( "encoding/hex" "errors" "fmt" + "github.com/0chain/common/core/logging" + "go.uber.org/zap" "strconv" "strings" "time" @@ -232,6 +234,7 @@ func (gn *GlobalNode) setBalance(key string, change currency.Coin) error { case MinStake: gn.MinStake = change case MinStakePerDelegate: + logging.Logger.Info("Jayash setBalance", zap.Any("change", change)) gn.MinStakePerDelegate = change case MaxStake: gn.MaxStake = change diff --git a/code/go/0chain.net/smartcontract/stakepool/stakepool.go b/code/go/0chain.net/smartcontract/stakepool/stakepool.go index c44018c106..3284110610 100644 --- a/code/go/0chain.net/smartcontract/stakepool/stakepool.go +++ b/code/go/0chain.net/smartcontract/stakepool/stakepool.go @@ -390,6 +390,7 @@ func (sp *StakePool) DistributeRewardsRandN( return err } + logging.Logger.Info("Jayash DistributeRewardsRandN", zap.Any("Minstake", sp.Settings.MinStake), zap.Any("total", total), zap.Any("value", value), zap.Any("randN", randN)) if value == 0 || sp.HasBeenKilled || total < sp.Settings.MinStake { return nil // nothing to move } diff --git a/code/go/0chain.net/smartcontract/storagesc/benchmark_tests.go b/code/go/0chain.net/smartcontract/storagesc/benchmark_tests.go index f00e21e3e7..a798ac1370 100644 --- a/code/go/0chain.net/smartcontract/storagesc/benchmark_tests.go +++ b/code/go/0chain.net/smartcontract/storagesc/benchmark_tests.go @@ -770,13 +770,14 @@ func BenchmarkTests( "blobber_slash": "0.1", "max_read_price": "100", "max_write_price": "100", - "max_file_size": "40000000000000", + "max_file_size": "40000000000000", "challenge_enabled": "true", "challenge_generation_gap": "1", "validators_per_challenge": "2", "num_validators_rewarded": "10", "max_blobber_select_for_challenge": "5", "max_delegates": "100", + "min_stake_per_delegate": "1", "block_reward.block_reward": "1000", "block_reward.qualifying_stake": "1", diff --git a/code/go/0chain.net/smartcontract/storagesc/config_settigns.go b/code/go/0chain.net/smartcontract/storagesc/config_settigns.go index becb6ce894..63201d4ae6 100644 --- a/code/go/0chain.net/smartcontract/storagesc/config_settigns.go +++ b/code/go/0chain.net/smartcontract/storagesc/config_settigns.go @@ -4,6 +4,8 @@ import ( "encoding/hex" "errors" "fmt" + "github.com/0chain/common/core/logging" + "go.uber.org/zap" "strconv" "strings" "time" @@ -393,6 +395,7 @@ func (conf *Config) setCoin(key string, change currency.Coin) error { case MinStake: conf.MinStake = change case MinStakePerDelegate: + logging.Logger.Info("Jayash setting min stake per delegate", zap.Any("change", change)) conf.MinStakePerDelegate = change case MaxTotalFreeAllocation: conf.MaxTotalFreeAllocation = change @@ -640,6 +643,7 @@ func (conf *Config) get(key Setting) interface{} { case MinStake: return conf.MinStake case MinStakePerDelegate: + logging.Logger.Info("Jayash getting min stake per delegate", zap.Any("conf", conf.MinStakePerDelegate)) return conf.MinStakePerDelegate case TimeUnit: return conf.TimeUnit diff --git a/docker.local/config/benchmark.yaml b/docker.local/config/benchmark.yaml index fc557e1500..14d2c7e416 100644 --- a/docker.local/config/benchmark.yaml +++ b/docker.local/config/benchmark.yaml @@ -130,6 +130,7 @@ smart_contracts: max_charge: 0.2 min_stake: 0.0 max_stake: 20000.0 + min_stake_per_delegate: 1 max_delegates: 200 diverse_blobbers: false failed_challenges_to_cancel: 0 diff --git a/docker.local/config/loadtest_benchmark.yaml b/docker.local/config/loadtest_benchmark.yaml index fd6472c07b..69da4b7238 100644 --- a/docker.local/config/loadtest_benchmark.yaml +++ b/docker.local/config/loadtest_benchmark.yaml @@ -103,6 +103,7 @@ smart_contracts: max_charge: 0.2 min_stake: 0.0 max_stake: 20000.0 + min_stake_per_delegate: 1 max_delegates: 200 diverse_blobbers: false failed_challenges_to_cancel: 0 diff --git a/docker.local/config/sc.yaml b/docker.local/config/sc.yaml index 87a873c95f..b9ff12028c 100644 --- a/docker.local/config/sc.yaml +++ b/docker.local/config/sc.yaml @@ -92,6 +92,7 @@ smart_contracts: time_unit: "720h" min_stake: 0.01 # min stake can be set by a node (boundary for all nodes) max_stake: 20000.0 # max stake can be set by a node (boundary for all nodes) + min_stake_per_delegate: 1 # max_mint max_mint: 75000000.0 # tokens, max amount of tokens can be minted by SC # min possible allocations size in bytes allowed by the SC diff --git a/quickstart/1s_2m_4b/config/1s_2m_4b/0Chain/docker.local/config/sc.yaml b/quickstart/1s_2m_4b/config/1s_2m_4b/0Chain/docker.local/config/sc.yaml index ee7eb74141..bb1e41e3be 100644 --- a/quickstart/1s_2m_4b/config/1s_2m_4b/0Chain/docker.local/config/sc.yaml +++ b/quickstart/1s_2m_4b/config/1s_2m_4b/0Chain/docker.local/config/sc.yaml @@ -70,6 +70,7 @@ smart_contracts: time_unit: '720h' min_stake: 0.01 # min stake can be set by a node (boundary for all nodes) max_stake: 20000.0 # max stake can be set by a node (boundary for all nodes) + min_stake_per_delegate: 1 # max_mint max_mint: 4000000.0 # tokens, max amount of tokens can be minted by SC # min possible allocations size in bytes allowed by the SC diff --git a/quickstart/1s_2m_4b/config/1s_2m_4b/blobber/config/0chain_blobber.yaml b/quickstart/1s_2m_4b/config/1s_2m_4b/blobber/config/0chain_blobber.yaml index 16aff40a78..54e9bde509 100755 --- a/quickstart/1s_2m_4b/config/1s_2m_4b/blobber/config/0chain_blobber.yaml +++ b/quickstart/1s_2m_4b/config/1s_2m_4b/blobber/config/0chain_blobber.yaml @@ -36,7 +36,6 @@ challenge_completion_time: 2m # duration to complete a challenge # a task and redeem tokens, it should be big enough read_lock_timeout: 1m write_lock_timeout: 1m -max_file_size: 10485760 #10MB # update_allocations_interval used to refresh known allocation objects from SC update_allocations_interval: 1m diff --git a/quickstart/1s_2m_4b/config/reference/0Chain/docker.local/config/sc.yaml b/quickstart/1s_2m_4b/config/reference/0Chain/docker.local/config/sc.yaml index fa18c56292..1c02c35111 100644 --- a/quickstart/1s_2m_4b/config/reference/0Chain/docker.local/config/sc.yaml +++ b/quickstart/1s_2m_4b/config/reference/0Chain/docker.local/config/sc.yaml @@ -30,6 +30,7 @@ smart_contracts: # etc min_stake: 0.0 # 0.01 # min stake can be set by a node (boundary for all nodes) max_stake: 20000.0 # max stake can be set by a node (boundary for all nodes) + min_stake_per_delegate : 1 start_rounds: 50 contribute_rounds: 50 share_rounds: 50 diff --git a/quickstart/1s_2m_4b/config/reference/blobber/config/0chain_blobber.yaml b/quickstart/1s_2m_4b/config/reference/blobber/config/0chain_blobber.yaml index b43b2502d5..8ed5fd8d22 100755 --- a/quickstart/1s_2m_4b/config/reference/blobber/config/0chain_blobber.yaml +++ b/quickstart/1s_2m_4b/config/reference/blobber/config/0chain_blobber.yaml @@ -36,7 +36,6 @@ challenge_completion_time: 2m # duration to complete a challenge # a task and redeem tokens, it should be big enough read_lock_timeout: 1m write_lock_timeout: 1m -max_file_size: 10485760 #10MB # update_allocations_interval used to refresh known allocation objects from SC update_allocations_interval: 1m From e18dd561f00b6b7ef89d6d1050e92a1b403d2807 Mon Sep 17 00:00:00 2001 From: Jayash Satolia Date: Mon, 9 Oct 2023 00:47:23 +0530 Subject: [PATCH 2/7] Fix --- code/go/0chain.net/miner/testdata/config/sc.yaml | 1 + .../smartcontract/benchmark/main/config/benchmark.yaml | 1 + code/go/0chain.net/smartcontract/minersc/models.go | 2 +- docker.local/config/benchmark.yaml | 1 + docker.local/config/loadtest_benchmark.yaml | 1 + docker.local/config/sc.yaml | 1 + .../1s_2m_4b/config/1s_2m_4b/0Chain/docker.local/config/sc.yaml | 1 + 7 files changed, 7 insertions(+), 1 deletion(-) diff --git a/code/go/0chain.net/miner/testdata/config/sc.yaml b/code/go/0chain.net/miner/testdata/config/sc.yaml index f98cef9ef8..f9ff3a9139 100644 --- a/code/go/0chain.net/miner/testdata/config/sc.yaml +++ b/code/go/0chain.net/miner/testdata/config/sc.yaml @@ -42,6 +42,7 @@ smart_contracts: # etc min_stake: 0.0 # min stake can be set by a node (boundary for all nodes) max_stake: 20000.0 # max stake can be set by a node (boundary for all nodes) + min_stake_per_delegate: 1 start_rounds: 50 contribute_rounds: 50 share_rounds: 50 diff --git a/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml b/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml index 2a345d4064..ac5a12dd22 100644 --- a/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml +++ b/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml @@ -74,6 +74,7 @@ smart_contracts: max_delegates: 200 min_stake: 0.0 max_stake: 170.0 + min_stake_per_delegate: 1 max_n: 7 # 100 min_n: 3 # 3 max_s: 2 # 30 diff --git a/code/go/0chain.net/smartcontract/minersc/models.go b/code/go/0chain.net/smartcontract/minersc/models.go index 019023f996..1c3978ac00 100644 --- a/code/go/0chain.net/smartcontract/minersc/models.go +++ b/code/go/0chain.net/smartcontract/minersc/models.go @@ -271,7 +271,7 @@ func (gn *GlobalNode) readConfig() (err error) { return } gn.MinStakePerDelegate, err = currency.ParseZCN(config2.SmartContractConfig.GetFloat64(pfx + SettingName[MinStakePerDelegate])) - logging.Logger.Info("Jayash MinStakePerDelegate", zap.Any("MinStakePerDelegate", gn.MinStakePerDelegate)) + logging.Logger.Info("Jayash MinStakePerDelegate", zap.Any("MinStakePerDelegate", gn.MinStakePerDelegate), zap.Any("config", config2.SmartContractConfig.GetFloat64(pfx+SettingName[MinStakePerDelegate]))) if err != nil { return } diff --git a/docker.local/config/benchmark.yaml b/docker.local/config/benchmark.yaml index 14d2c7e416..9785868238 100644 --- a/docker.local/config/benchmark.yaml +++ b/docker.local/config/benchmark.yaml @@ -67,6 +67,7 @@ smart_contracts: max_delegates: 200 min_stake: 0.0 max_stake: 170.0 + min_stake_per_delegate: 1 max_n: 7 # 100 min_n: 3 # 3 max_s: 2 # 30 diff --git a/docker.local/config/loadtest_benchmark.yaml b/docker.local/config/loadtest_benchmark.yaml index 69da4b7238..b82919bf54 100644 --- a/docker.local/config/loadtest_benchmark.yaml +++ b/docker.local/config/loadtest_benchmark.yaml @@ -61,6 +61,7 @@ smart_contracts: max_delegates: 200 min_stake: 0.0 max_stake: 170.0 + min_stake_per_delegate: 1 max_n: 7 # 100 min_n: 3 # 3 max_s: 2 # 30 diff --git a/docker.local/config/sc.yaml b/docker.local/config/sc.yaml index b9ff12028c..ae38912b8f 100644 --- a/docker.local/config/sc.yaml +++ b/docker.local/config/sc.yaml @@ -31,6 +31,7 @@ smart_contracts: # etc min_stake: 0.0 # min stake can be set by a node (boundary for all nodes) max_stake: 20000.0 # max stake can be set by a node (boundary for all nodes) + min_stake_per_delegate: 1 start_rounds: 50 contribute_rounds: 50 share_rounds: 50 diff --git a/quickstart/1s_2m_4b/config/1s_2m_4b/0Chain/docker.local/config/sc.yaml b/quickstart/1s_2m_4b/config/1s_2m_4b/0Chain/docker.local/config/sc.yaml index bb1e41e3be..4d4674ae2c 100644 --- a/quickstart/1s_2m_4b/config/1s_2m_4b/0Chain/docker.local/config/sc.yaml +++ b/quickstart/1s_2m_4b/config/1s_2m_4b/0Chain/docker.local/config/sc.yaml @@ -30,6 +30,7 @@ smart_contracts: # etc min_stake: 0.0 # 0.01 # min stake can be set by a node (boundary for all nodes) max_stake: 20000.0 # max stake can be set by a node (boundary for all nodes) + min_stake_per_delegate: 1 start_rounds: 50 contribute_rounds: 50 share_rounds: 50 From c4c4aaca6c3435223ae8f6ec0c55351061845783 Mon Sep 17 00:00:00 2001 From: Jayash Satolia Date: Mon, 9 Oct 2023 22:35:15 +0530 Subject: [PATCH 3/7] Debug --- .../smartcontract/benchmark/main/config/benchmark.yaml | 1 + code/go/0chain.net/smartcontract/storagesc/config.go | 3 +++ code/go/0chain.net/smartcontract/storagesc/stakepool.go | 4 ++++ code/go/0chain.net/smartcontract/zcnsc/stakepool.go | 5 +++++ docker.local/config/benchmark.yaml | 1 + docker.local/config/loadtest_benchmark.yaml | 1 + docker.local/config/sc.yaml | 1 + 7 files changed, 16 insertions(+) diff --git a/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml b/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml index ac5a12dd22..1ae040ca99 100644 --- a/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml +++ b/code/go/0chain.net/smartcontract/benchmark/main/config/benchmark.yaml @@ -199,6 +199,7 @@ smart_contracts: min_mint: 1 min_burn: 1 min_stake: 0 + min_stake_per_delegate : 1 max_stake: 2.7 min_lock: 0 min_authorizers: 1 diff --git a/code/go/0chain.net/smartcontract/storagesc/config.go b/code/go/0chain.net/smartcontract/storagesc/config.go index 107e26b936..d015b2dbc3 100644 --- a/code/go/0chain.net/smartcontract/storagesc/config.go +++ b/code/go/0chain.net/smartcontract/storagesc/config.go @@ -2,6 +2,8 @@ package storagesc import ( "fmt" + "github.com/0chain/common/core/logging" + "go.uber.org/zap" "time" "0chain.net/core/config" @@ -332,6 +334,7 @@ func getConfiguredConfig() (conf *Config, err error) { return nil, err } conf.MinStakePerDelegate, err = currency.ParseZCN(scc.GetFloat64(pfx + "min_stake_per_delegate")) + logging.Logger.Info("Jayash getConfiguredConfig", zap.Any("MinStakePerDelegate", conf.MinStakePerDelegate)) if err != nil { return nil, err } diff --git a/code/go/0chain.net/smartcontract/storagesc/stakepool.go b/code/go/0chain.net/smartcontract/storagesc/stakepool.go index b2118f207e..e25b54f195 100644 --- a/code/go/0chain.net/smartcontract/storagesc/stakepool.go +++ b/code/go/0chain.net/smartcontract/storagesc/stakepool.go @@ -4,6 +4,8 @@ import ( "encoding/json" "errors" "fmt" + "github.com/0chain/common/core/logging" + "go.uber.org/zap" "0chain.net/chaincore/state" "0chain.net/smartcontract/dbs/event" @@ -324,6 +326,7 @@ func (ssc *StorageSmartContract) getOrCreateStakePool( sp.Settings.ServiceChargeRatio = settings.ServiceChargeRatio sp.Settings.MaxNumDelegates = settings.MaxNumDelegates + logging.Logger.Info("Jayash getOrCreateStakePool", zap.Any("MinStakePerDelegate", conf.MinStakePerDelegate)) sp.Settings.MinStake = conf.MinStakePerDelegate return sp, nil } @@ -341,6 +344,7 @@ func (ssc *StorageSmartContract) createStakePool( sp.Minter = chainstate.MinterStorage sp.Settings.ServiceChargeRatio = settings.ServiceChargeRatio sp.Settings.MaxNumDelegates = settings.MaxNumDelegates + logging.Logger.Info("Jayash 2getOrCreateStakePool", zap.Any("MinStakePerDelegate", conf.MinStakePerDelegate)) sp.Settings.MinStake = conf.MinStakePerDelegate return sp, nil diff --git a/code/go/0chain.net/smartcontract/zcnsc/stakepool.go b/code/go/0chain.net/smartcontract/zcnsc/stakepool.go index 038ccd9f6e..7a0f6e0b14 100644 --- a/code/go/0chain.net/smartcontract/zcnsc/stakepool.go +++ b/code/go/0chain.net/smartcontract/zcnsc/stakepool.go @@ -3,6 +3,8 @@ package zcnsc import ( "errors" "fmt" + "github.com/0chain/common/core/logging" + "go.uber.org/zap" cstate "0chain.net/chaincore/chain/state" "0chain.net/chaincore/state" @@ -137,6 +139,9 @@ func (zcn *ZCNSmartContract) getOrUpdateStakePool(gn *GlobalNode, sp.Settings.MaxNumDelegates = settings.MaxNumDelegates changed = true } + + logging.Logger.Info("Jayash getOrCreateStakePool", zap.Any("MinStakePerDelegate", gn.MinStakePerDelegate)) + if sp.Settings.MinStake != gn.MinStakePerDelegate { sp.Settings.MinStake = gn.MinStakePerDelegate changed = true diff --git a/docker.local/config/benchmark.yaml b/docker.local/config/benchmark.yaml index 9785868238..441d837349 100644 --- a/docker.local/config/benchmark.yaml +++ b/docker.local/config/benchmark.yaml @@ -194,6 +194,7 @@ smart_contracts: min_mint: 1 min_burn: 1 min_stake: 0 + min_stake_per_delegate : 1 max_stake: 2.7 min_lock: 0 min_authorizers: 1 diff --git a/docker.local/config/loadtest_benchmark.yaml b/docker.local/config/loadtest_benchmark.yaml index b82919bf54..f41144d84e 100644 --- a/docker.local/config/loadtest_benchmark.yaml +++ b/docker.local/config/loadtest_benchmark.yaml @@ -158,6 +158,7 @@ smart_contracts: min_mint: 1 min_burn: 1 min_stake: 3 + min_stake_per_delegate : 1 min_lock: 0 min_authorizers: 1 percent_authorizers: 0 diff --git a/docker.local/config/sc.yaml b/docker.local/config/sc.yaml index ae38912b8f..e58acc6183 100644 --- a/docker.local/config/sc.yaml +++ b/docker.local/config/sc.yaml @@ -234,6 +234,7 @@ smart_contracts: min_mint: 1 min_burn: 1 min_stake: 0 + min_stake_per_delegate : 1 min_authorizers: 1 percent_authorizers: 0.7 max_delegates: 10 From a5cace1d16129924078301dc4c95051a524e4752 Mon Sep 17 00:00:00 2001 From: Jayash Satolia Date: Mon, 9 Oct 2023 23:10:37 +0530 Subject: [PATCH 4/7] Fix --- code/go/0chain.net/smartcontract/minersc/sharder.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/go/0chain.net/smartcontract/minersc/sharder.go b/code/go/0chain.net/smartcontract/minersc/sharder.go index f25f5021d0..085ba286f9 100644 --- a/code/go/0chain.net/smartcontract/minersc/sharder.go +++ b/code/go/0chain.net/smartcontract/minersc/sharder.go @@ -130,6 +130,8 @@ func (msc *MinerSmartContract) AddSharder( newSharder.NodeType = NodeTypeSharder // set node type newSharder.ProviderType = spenum.Sharder + newSharder.Settings.MinStake = gn.MinStakePerDelegate + exist, err := msc.getSharderNode(newSharder.ID, balances) if err != nil && err != util.ErrValueNotPresent { return "", common.NewErrorf("add_sharder", "unexpected error: %v", err) From e413c55ded7254536a8f8456b51e1a363a6f5efa Mon Sep 17 00:00:00 2001 From: Jayash Satolia Date: Tue, 10 Oct 2023 02:36:31 +0530 Subject: [PATCH 5/7] Remove logging --- code/go/0chain.net/smartcontract/minersc/miner.go | 1 - code/go/0chain.net/smartcontract/minersc/models.go | 2 -- code/go/0chain.net/smartcontract/minersc/settings.go | 3 --- .../0chain.net/smartcontract/stakepool/stakepool.go | 1 - code/go/0chain.net/smartcontract/storagesc/config.go | 3 --- .../smartcontract/storagesc/config_settigns.go | 4 ---- .../0chain.net/smartcontract/storagesc/stakepool.go | 11 +++-------- code/go/0chain.net/smartcontract/zcnsc/stakepool.go | 9 ++------- 8 files changed, 5 insertions(+), 29 deletions(-) diff --git a/code/go/0chain.net/smartcontract/minersc/miner.go b/code/go/0chain.net/smartcontract/minersc/miner.go index fd46b0c8ee..8053b7aac4 100644 --- a/code/go/0chain.net/smartcontract/minersc/miner.go +++ b/code/go/0chain.net/smartcontract/minersc/miner.go @@ -52,7 +52,6 @@ func (msc *MinerSmartContract) AddMiner(t *transaction.Transaction, lockAllMiners.Lock() defer lockAllMiners.Unlock() - logging.Logger.Info("Jayash add_miner: The new miner info", zap.Any("minStakePerDelegate", gn.MinStakePerDelegate)) newMiner.Settings.MinStake = gn.MinStakePerDelegate magicBlockMiners := balances.GetChainCurrentMagicBlock().Miners diff --git a/code/go/0chain.net/smartcontract/minersc/models.go b/code/go/0chain.net/smartcontract/minersc/models.go index 1c3978ac00..e659430055 100644 --- a/code/go/0chain.net/smartcontract/minersc/models.go +++ b/code/go/0chain.net/smartcontract/minersc/models.go @@ -271,7 +271,6 @@ func (gn *GlobalNode) readConfig() (err error) { return } gn.MinStakePerDelegate, err = currency.ParseZCN(config2.SmartContractConfig.GetFloat64(pfx + SettingName[MinStakePerDelegate])) - logging.Logger.Info("Jayash MinStakePerDelegate", zap.Any("MinStakePerDelegate", gn.MinStakePerDelegate), zap.Any("config", config2.SmartContractConfig.GetFloat64(pfx+SettingName[MinStakePerDelegate]))) if err != nil { return } @@ -381,7 +380,6 @@ func (gn *GlobalNode) Get(key Setting) (interface{}, error) { case MinStake: return gn.MinStake, nil case MinStakePerDelegate: - logging.Logger.Info("Jayash get", zap.Any("MinStakePerDelegate", gn.MinStakePerDelegate)) return gn.MinStakePerDelegate, nil case HealthCheckPeriod: return gn.HealthCheckPeriod, nil diff --git a/code/go/0chain.net/smartcontract/minersc/settings.go b/code/go/0chain.net/smartcontract/minersc/settings.go index c1dd7a3ab2..1630e1fab8 100644 --- a/code/go/0chain.net/smartcontract/minersc/settings.go +++ b/code/go/0chain.net/smartcontract/minersc/settings.go @@ -4,8 +4,6 @@ import ( "encoding/hex" "errors" "fmt" - "github.com/0chain/common/core/logging" - "go.uber.org/zap" "strconv" "strings" "time" @@ -234,7 +232,6 @@ func (gn *GlobalNode) setBalance(key string, change currency.Coin) error { case MinStake: gn.MinStake = change case MinStakePerDelegate: - logging.Logger.Info("Jayash setBalance", zap.Any("change", change)) gn.MinStakePerDelegate = change case MaxStake: gn.MaxStake = change diff --git a/code/go/0chain.net/smartcontract/stakepool/stakepool.go b/code/go/0chain.net/smartcontract/stakepool/stakepool.go index 3284110610..c44018c106 100644 --- a/code/go/0chain.net/smartcontract/stakepool/stakepool.go +++ b/code/go/0chain.net/smartcontract/stakepool/stakepool.go @@ -390,7 +390,6 @@ func (sp *StakePool) DistributeRewardsRandN( return err } - logging.Logger.Info("Jayash DistributeRewardsRandN", zap.Any("Minstake", sp.Settings.MinStake), zap.Any("total", total), zap.Any("value", value), zap.Any("randN", randN)) if value == 0 || sp.HasBeenKilled || total < sp.Settings.MinStake { return nil // nothing to move } diff --git a/code/go/0chain.net/smartcontract/storagesc/config.go b/code/go/0chain.net/smartcontract/storagesc/config.go index d015b2dbc3..107e26b936 100644 --- a/code/go/0chain.net/smartcontract/storagesc/config.go +++ b/code/go/0chain.net/smartcontract/storagesc/config.go @@ -2,8 +2,6 @@ package storagesc import ( "fmt" - "github.com/0chain/common/core/logging" - "go.uber.org/zap" "time" "0chain.net/core/config" @@ -334,7 +332,6 @@ func getConfiguredConfig() (conf *Config, err error) { return nil, err } conf.MinStakePerDelegate, err = currency.ParseZCN(scc.GetFloat64(pfx + "min_stake_per_delegate")) - logging.Logger.Info("Jayash getConfiguredConfig", zap.Any("MinStakePerDelegate", conf.MinStakePerDelegate)) if err != nil { return nil, err } diff --git a/code/go/0chain.net/smartcontract/storagesc/config_settigns.go b/code/go/0chain.net/smartcontract/storagesc/config_settigns.go index 63201d4ae6..becb6ce894 100644 --- a/code/go/0chain.net/smartcontract/storagesc/config_settigns.go +++ b/code/go/0chain.net/smartcontract/storagesc/config_settigns.go @@ -4,8 +4,6 @@ import ( "encoding/hex" "errors" "fmt" - "github.com/0chain/common/core/logging" - "go.uber.org/zap" "strconv" "strings" "time" @@ -395,7 +393,6 @@ func (conf *Config) setCoin(key string, change currency.Coin) error { case MinStake: conf.MinStake = change case MinStakePerDelegate: - logging.Logger.Info("Jayash setting min stake per delegate", zap.Any("change", change)) conf.MinStakePerDelegate = change case MaxTotalFreeAllocation: conf.MaxTotalFreeAllocation = change @@ -643,7 +640,6 @@ func (conf *Config) get(key Setting) interface{} { case MinStake: return conf.MinStake case MinStakePerDelegate: - logging.Logger.Info("Jayash getting min stake per delegate", zap.Any("conf", conf.MinStakePerDelegate)) return conf.MinStakePerDelegate case TimeUnit: return conf.TimeUnit diff --git a/code/go/0chain.net/smartcontract/storagesc/stakepool.go b/code/go/0chain.net/smartcontract/storagesc/stakepool.go index e25b54f195..858577e515 100644 --- a/code/go/0chain.net/smartcontract/storagesc/stakepool.go +++ b/code/go/0chain.net/smartcontract/storagesc/stakepool.go @@ -1,15 +1,12 @@ package storagesc import ( - "encoding/json" - "errors" - "fmt" - "github.com/0chain/common/core/logging" - "go.uber.org/zap" - "0chain.net/chaincore/state" "0chain.net/smartcontract/dbs/event" "0chain.net/smartcontract/stakepool/spenum" + "encoding/json" + "errors" + "fmt" "github.com/0chain/common/core/currency" "0chain.net/smartcontract/stakepool" @@ -326,7 +323,6 @@ func (ssc *StorageSmartContract) getOrCreateStakePool( sp.Settings.ServiceChargeRatio = settings.ServiceChargeRatio sp.Settings.MaxNumDelegates = settings.MaxNumDelegates - logging.Logger.Info("Jayash getOrCreateStakePool", zap.Any("MinStakePerDelegate", conf.MinStakePerDelegate)) sp.Settings.MinStake = conf.MinStakePerDelegate return sp, nil } @@ -344,7 +340,6 @@ func (ssc *StorageSmartContract) createStakePool( sp.Minter = chainstate.MinterStorage sp.Settings.ServiceChargeRatio = settings.ServiceChargeRatio sp.Settings.MaxNumDelegates = settings.MaxNumDelegates - logging.Logger.Info("Jayash 2getOrCreateStakePool", zap.Any("MinStakePerDelegate", conf.MinStakePerDelegate)) sp.Settings.MinStake = conf.MinStakePerDelegate return sp, nil diff --git a/code/go/0chain.net/smartcontract/zcnsc/stakepool.go b/code/go/0chain.net/smartcontract/zcnsc/stakepool.go index 7a0f6e0b14..19e029793c 100644 --- a/code/go/0chain.net/smartcontract/zcnsc/stakepool.go +++ b/code/go/0chain.net/smartcontract/zcnsc/stakepool.go @@ -1,11 +1,6 @@ package zcnsc import ( - "errors" - "fmt" - "github.com/0chain/common/core/logging" - "go.uber.org/zap" - cstate "0chain.net/chaincore/chain/state" "0chain.net/chaincore/state" "0chain.net/chaincore/transaction" @@ -13,6 +8,8 @@ import ( "0chain.net/core/datastore" "0chain.net/smartcontract/stakepool" "0chain.net/smartcontract/stakepool/spenum" + "errors" + "fmt" "github.com/0chain/common/core/util" ) @@ -140,8 +137,6 @@ func (zcn *ZCNSmartContract) getOrUpdateStakePool(gn *GlobalNode, changed = true } - logging.Logger.Info("Jayash getOrCreateStakePool", zap.Any("MinStakePerDelegate", gn.MinStakePerDelegate)) - if sp.Settings.MinStake != gn.MinStakePerDelegate { sp.Settings.MinStake = gn.MinStakePerDelegate changed = true From 0beaeccc1cc27f4e2451c9852f32d9e4a05afdc9 Mon Sep 17 00:00:00 2001 From: Jayash Satolia Date: Tue, 10 Oct 2023 03:51:25 +0530 Subject: [PATCH 6/7] Added logging --- code/go/0chain.net/smartcontract/stakepool/stakepool.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/go/0chain.net/smartcontract/stakepool/stakepool.go b/code/go/0chain.net/smartcontract/stakepool/stakepool.go index c44018c106..a560cfe9ae 100644 --- a/code/go/0chain.net/smartcontract/stakepool/stakepool.go +++ b/code/go/0chain.net/smartcontract/stakepool/stakepool.go @@ -540,6 +540,8 @@ func (sp *StakePool) DistributeRewards( return err } + logging.Logger.Info("DistributeRewards", zap.Any("value", value), zap.Any("total", total), zap.Any("min_stake", sp.Settings.MinStake)) + if value == 0 || sp.HasBeenKilled || total < sp.Settings.MinStake { return nil // nothing to move } From 4bdc0fe3071270a7f14be5fce052db8baf157403 Mon Sep 17 00:00:00 2001 From: Jayash Satolia Date: Tue, 10 Oct 2023 16:41:12 +0530 Subject: [PATCH 7/7] Revert "Added logging" This reverts commit 0beaeccc1cc27f4e2451c9852f32d9e4a05afdc9. --- code/go/0chain.net/smartcontract/stakepool/stakepool.go | 2 -- 1 file changed, 2 deletions(-) diff --git a/code/go/0chain.net/smartcontract/stakepool/stakepool.go b/code/go/0chain.net/smartcontract/stakepool/stakepool.go index a560cfe9ae..c44018c106 100644 --- a/code/go/0chain.net/smartcontract/stakepool/stakepool.go +++ b/code/go/0chain.net/smartcontract/stakepool/stakepool.go @@ -540,8 +540,6 @@ func (sp *StakePool) DistributeRewards( return err } - logging.Logger.Info("DistributeRewards", zap.Any("value", value), zap.Any("total", total), zap.Any("min_stake", sp.Settings.MinStake)) - if value == 0 || sp.HasBeenKilled || total < sp.Settings.MinStake { return nil // nothing to move }