Why is my newly created validator unbonded?
Hi all, I tried becoming a validator in the gaia-13003 with this command ``` gaiacli tx staking create-validator \ --amount=500000muon \ --pubkey=$(gaiad tendermint show-validator) \ --moniker="hawking_pool_testnet_validator" \ --chain-id=gaia-13003 \ --commission-rate="0.10" \ --commission-max-rate="0.50" \ --commission-max-change-rate="0.01" \ --min-self-delegation="1" \ --gas="120000" \ --gas-prices="0.025muon" \ --from=account001 ``` It seems that I became a validator, but my status in unbonded: ``` $ gaiacli query staking validator cosmosvaloper1pan26at8x8u5rz53l5cldtx6he3zghp6n3nyjy --chain-id=gaia-13003 Validator Operator Address: cosmosvaloper1pan26at8x8u5rz53l5cldtx6he3zghp6n3nyjy Validator Consensus Pubkey: cosmosvalconspub1zcjduepqwg353d7aelyeearx0q6ccj0cccsx7f3f6upx8yxqj0wyt5hga4fs0q75qe Jailed: false Status: Unbonded Tokens: 500000 Delegator Shares: 500000.000000000000000000 Description: {hawking_pool_testnet_validator } Unbonding Height: 0 Unbonding Completion Time: 1970-01-01 00:00:00 +0000 UTC Minimum Self…
Excerpt (1195 of 1458 characters). Read the whole post on the forum ↗
You only have 500k tokens bound which is not enough to have 1 voting power and it results in unbonded. Increase your delegation to over 1M muon and make your validator has more than 1 voting power will make it bonded.
@kwunyeung Thanks for the reply. So does it mean that:
Minimum Self Delegation: 1
means 1bigunit which is 1000000muon? Where can I find the unit and coversions? (tried searching for it but couldn’t find anything)
The code is here.
github.comcosmos/cosmos-sdk/blob/bc8d2d4414954edd2b8ec9b5868d4ed663daff87/types/staking.go#L45
- case 0x01:
- return "Unbonding"
- case 0x02:
- return "Bonded"
- default:
- panic("improper use of BondStatusToString")
- }
- }
-
- // PowerReduction is the amount of staking tokens required for 1 unit of Tendermint power
- var PowerReduction = NewIntFromBigInt(new(big.Int).Exp(big.NewInt(10), big.NewInt(6), nil))
-
- // TokensToTendermintPower - convert input tokens to potential tendermint power
- func TokensToTendermintPower(tokens Int) int64 {
- return (tokens.Quo(PowerReduction)).Int64()
- }
-
- // TokensFromTendermintPower - convert input power to tokens
- func TokensFromTendermintPower(power int64) Int {
- return NewInt(power).Mul(PowerReduction)
- }
Many thanks! Will delve into the code