[Proposal Draft] Issue regarding validator minimum-gas-prices
This proposal draft addresses potential concerns regarding minimum-gas-prices. Any feedbacks/suggestions/discussions are welcomed. Premise • Validator nodes can set their own minimum-gas-prices. • Minimum-gas-prices allows independent nodes to define the minimum Tx fee they will broadcast/process. • Defining minimum-gas-prices also allows validator nodes to maintain node stability and prevent Tx spam. Problem • minimum-gas-prices of independent nodes aren’t publicly known. • min_fee_rate of most validators that frequently propose blocks are unknown, inducing difficulties on end-user experience when calculating Tx fee. (There is the possibility of a Tx not being included in the next block even when the user pays enough Tx fee and the chain isn’t busy) • Most validators are using a rate of 0.025, which is the rate suggested by the Interchain Foundation. • However, few of the top validators with significant voting power are using a substantially higher fee_rate. • This allows for few of the top validators to continue frequently proposing blocks while not processing a single transaction. • At the current early state of the network where there aren’t that many…
Excerpt (1194 of 2056 characters). Read the whole post on the forum ↗
Here is what my proposal.
Every validator SHOULD expose a subdomain meta.<validator_domain>. Validator Domain should match the validator website from the chain state. For example, https://meta.iqlusion.io
On the subdomain, there should be /gas endpoint.
ex. https://meta.iqlusion.io/gas
This return a json response.
{
"gas_prices": [{
"amount": 0.01,
"denom": "uatom"
}, {
"amount": 0.005,
"denom": "photon"
}]
}
}
I’m not a professional programmer, but that looks like a quick patch, the easiest way. You need to have a domain and web hosting server to do that. Quick fixes can result a future long-term issues.
I don’t view this as a quick patch solution.
Validators can always run their own censorship policies. There should be a standard procedure for advertising those policies. We can expand this spec to include this like public sentry nodes and transaction ingestion endpoints
- Set minimum and maximum rates for minimum-gas-prices.
I will be writing an ADR for this in the coming weeks. Ref: Preventing 0 fee Tx spamming - Consensus Min Fee · Issue #4527 · cosmos/cosmos-sdk · GitHub
Not sure why you’d want a maximum fee though.
Oh right. I meant to write minimum fee. There shouldn’t be a limit to how high a validator can set minimum-gas-prices.
This seems like a practical solution that would let applications (i.e. wallet providers like Imtoken, Cosmostation, etc.) figure out minimum-gas-prices for different validators a bit easier. I agree that validators should be allowed to run their own censorship policies.
I still do think that there should be some sort of global minimum implemented, either static or dynamic.