/
如何调整共识参数

如何调整共识参数

先确认当前的共识参数

state get resource 0x1 0x1::Config::Config<0x1::ConsensusConfig::ConsensusConfig> { "ok": { "json": { "payload": { "base_block_difficulty_window": 24, "base_block_gas_limit": 200000000, "base_block_time_target": 10000, "base_max_uncles_per_block": 2, "base_reward_per_block": 10000000000, "base_reward_per_uncle_percent": 10, "epoch_block_count": 240, "max_block_time_target": 60000, "min_block_time_target": 5000, "strategy": 3, "uncle_rate_target": 100 } }, "raw": "0x6400000000000000102700000000000000e40b540200000000000000000000000a00000000000000f0000000000000001800000000000000881300000000000060ea000000000000020000000000000000c2eb0b0000000003" } }

 

发起提案交易

这个交易可以以任何账号发起,注意参数顺序,确保不要变更其他不想变更的字段, 可以参考方法:

module OnChainConfig{ public ( script ) fun propose_update_consensus_config(account: signer, uncle_rate_target: u64, base_block_time_target: u64, base_reward_per_block: u128, base_reward_per_uncle_percent: u64, epoch_block_count: u64, base_block_difficulty_window: u64, min_block_time_target: u64, max_block_time_target: u64, base_max_uncles_per_block: u64, base_block_gas_limit: u64, strategy: u8, exec_delay: u64); }

比如下面的提案就只修改了 uncle_rate_target 到 300,max_block_time_target 为 30000

account execute-function -s 0x68b069383b902607f1a9d8c0da7cf539 --function 0x1::OnChainConfigScripts::propose_update_consensus_config --arg 300 --arg 10000 --arg 10000000000u128 --arg 10 --arg 240 --arg 24 --arg 3000 --arg 30000 --arg 2 --arg 200000000 --arg 3u8 --arg 0 -b

交易执行后,再次确认自己提交的提案数据:

 

确认提案状态并进行投票

确认提案状态, 第一个参数是发起提案的地址,第二个参数是提案 id ,确认返回值是 2, 如果是 1 说明是在公示阶段,需要等待。如果是 3 说明投票已经过期,需要删除提案,重新发起(测试网的过期时间比较快)。

可通过以下命令删除提案

 

通过以下命令确认投票阈值:

通过以下命令进行投票:

投票完成后等待投票期过, 可以通过以下命令投票时间,返回值的第一个值是 id,第二个值是开始时间,第三个值是结束时间,第四个值是同意的票数,第五个值时反对的票数。

proposal_state 返回值为 4 的时候,说明投票通过。

放入待执行队列

 

执行提案

检查提案状态,待执行公示期过后:

 

取回质押 Token

 

参看文档:

通过治理机制修改链上配置 | Starcoin

投票状态说明

 

Related content

链上Move字节码版本号配置升级
链上Move字节码版本号配置升级
Read with this
DAO 执行提案过程
DAO 执行提案过程
More like this
Weekly meeting notes
Weekly meeting notes
Read with this
DAO 链上合约接口文档
DAO 链上合约接口文档
More like this
jolestar
jolestar
Read with this
starcoin-framework v12讨论
starcoin-framework v12讨论
More like this