今天使用见证人列表工具查看一些信息,竟然发现一个BUG以及一些细节上的问题,作为一个追求完美的强迫症患者,是可忍熟不可忍,必须改!
(图源 :pixabay)
HIVE Power的计算:
先来说BUG,看图中箭头指向:
Reveal spoiler
这个地方显示的是,见证人投票等同于HIVE POWER的数量,因为Vesting shares看起来不是那么直观,1000M或者2000M相当于多少HP啊?所以这块我加了这个功能。
之前这部分显示是正确的,那么肯定是分叉引起的喽,查看了一下代码,使用到类似如下代码:
$gp["total_vesting_fund_steem"]
而分叉后,在dynamic_global_properties
中total_vesting_fund_steem
被相应地修改为total_vesting_fund_hive
,我的代码中没有做对应修改,那么读出来的数值,当然是0
啦。
把这个改成$gp["total_vesting_fund_hive"]
一切正常:
Reveal spoiler
这么大的BUG,我竟然才发现,也是醉了。
版本的显示
从硬分叉角度来看,只要大版本、中版本一致,就是可用的版本。至于小版本可能是一些BUG修复(或者软分叉等)。
另外,硬分叉准备期间(有见证人运行新版本,但是分叉还没执行),大版本,中版本都大于等于指定的合法版本,那么也算是合法版本。
有些绕,但是就目前而言,v1.24.2到v1.24.8都是合法的见证人版本,所以都应该显示为绿色才对:
Reveal spoiler
调整了一下版本判断,嗯,这样比较好一些:
Reveal spoiler
运行时间
最近访问我的见证人列表,总觉得特别的慢,看了一下运行时间:
Reveal spoiler
竟然运行了3.56秒,太夸张了。将节点从https://api.openhive.network
修改为https://anyx.io
,处理速度大幅提升:
Reveal spoiler
整整提升了5倍有余,当然,这不意味着A节点不如B节点,可能从当前的机器上访问B节点更快一些吧。
再另外一台机器上用更是快得夸张,我考虑以后换台机器:
Reveal spoiler
其它
我在程序中发现如下代码:
Reveal spoiler
但是实际上,这个只在0.20.0
硬分叉切换前有用(平滑迁移),分叉后,就没必要进行判断了。所以这个判断直接用后边的逻辑段中的内容即可。
同理,这行语句也就用不着了,省却了一次调用:
$hf_ver = $client->exec("get_hardfork_version", []);
当然了,这个改不改影响不大,不过改掉可读性更强,省的自己迷糊,哈哈哈。
(图源 :pixabay)
另外就是,细节上要改的东西太多了,有大幅改进和优化的余地,不过慢慢来吧,毕竟罗马不是一天建成的(这真是一个好借口)。
Reblogged
看完之后,我直想说,O哥威武
这才是为社区做贡献呢
向程序“猿”致敬!辛苦了!