双周报 | 终版测试网上线倒计时3天,IOST利好不断
IOST 双周报每半月一次,与社区成员分享IOST的最新社区进展、全球市场拓展以及项目生态建设情况。感谢大家的关注,也欢迎大家给我们提出宝贵的意见,您的支持对我们很重要。
一、技术进展
主网、测试网上线时间公布
自6月29日发布第一版公测网络Everest v0.5以来,IOST开发团队通过长期6x12小时的马拉松式开发,不断提前上线日期,完成了研发路线图上的每一个里程碑,始终严格兑现我们对社区的承诺。在12月4日,我们向社区宣布了IOST最终版测试网Everest v2.0与主网Mainnet v1.0的发布日期!
技术进展
Tokenlnsight 实时同步各区块链项目GitHub 有效代码提交次数。根据TokenInsight统计,IOST团队过去7天提交代码129次,排名第三;过去30天提交代码701次,排名第一;过去90天提交代码1415次,排名第三。
【共识协议】
[设计]
优化邀请和激励方案
完成设计造块和投票奖励
[开发]
优化配置,去除连续造块冗余配置
review邀请和激励方案
解决针对testnet环境交易查询失败问题
更新develop版本的RPC接口文档
Demo game lucky-bet适配新的测试框架
测试lucky-bet压测脚本
安全审计启动
发现了receipt中GAS用量,和用户实际GAS用量不一致的问题,已经修复
完成了邀请用户可以得到GAS,并且得到新用户GAS分成的功能
Token增加了symbol。现在token有symbol和fullName两种不同长度不同定位的字段
实现storage 分析小工具,用户显示不同人的token余额,RAM使用情况等
增加了获取GAS Rate的RPC
增加了获取RAM State的RPC
rpc 支持跨域访问
重写压测脚本,能更快的发送交易,且速度可指定
重构 event和rpc 增加 event 相关接口
优化servi节点未认证时取消的处理
完成取消unvoteInterval
分析查询合约崩溃问题
测试RPC接口
[Test&Debug]
重构性能测试工具,更方便添加不同合约的性能测试
优化native abi,添加private类型的abi
检查abi可用字符,防止abi代码注入问题 优化了一下内置的js合约中对blockinfo的使用
添加了两个base合约用到的函数的权限检查并修改相关测试
在Set/UpdateCode时检查abi和对应js中的函数(和参数数量)对应关系,不符合要求的合约禁止上链 测试合约中特殊字符的影响
测试了ascii和unicode的控制字符,发现3个未处理的字符会导致合约编译(inject_gas)执行失败。添加了这三个字符的转义
超级节点认证方案:添加了注册和取消注册时的审批流程,相应修改了轮转的逻辑;并添加相应的测试
合约中的null byte(\x00)处理不完备,修改了C语言层的处理,使合约支持null byte
调试同步模式下 OOM 问题,最终发现是 V8 isolator 循环使用次数过多,暂时调小
iserver 宕机恢复速度测试以及优化
解决了压测节点会无报错崩的问题
节点共识落后之后,同步一段时间后无法持续同步
解决了单点造块会略过slot的问题
解决交易验证时间超过200ms
解决了确认块不稳定的问题,原因是之前vmreflimit=100的设定导致内存占用过多,从而验证块的时间不稳定,导致确认块曲线不稳定。
解决了workstation8核上的tps和2核一样的问题,原因是在workstation上同时跑节点和压交易,影响了性能,分开来就正常了
测试native transfer
测试存储接口 在k8s上建立3节点连续压测
测试blockchain和int64和float64的接口
压测luckeybet合约
压测gobang合约
iwallet 生成keypair的命令输出格式确定为base58
修复了GAS扣费不准确的问题
fix js合约返回object时报错没有catch住的问题
发现BigNumber接口没有额外收gas、new Array(100)没有正确收取gas
增加了对BigNumber的收费
对外暴露了_native_run函数,可以直接跑代码,禁止了这个函数和其他我们增加的Object和函数
解决console中会报出一些js报错的问题
解决多个action时gas limit没检查对的问题
查js合约返回巨大字符串时执行很慢问题,已查到原因,修复中
调试 iserver panic 问题,发现 gogoprotobuf 的 bug,修复中
替换 protobuf 到原生版本,并测试性能差异
写gobang测试,能够随机下棋
写gobang测试,本地开100个棋盘下棋成功,出现了tx uncaught reference
写gobang测试,远程跑成功
在lsq改了代码之后,测试gobang依旧能正常跑过
[文档]
review 账户介绍和RPC发送交易命令介绍文档
账号介绍文档合并到go-docs
完善RPC接口文档
Push经济模型文档到go-docs
完善交易计算哈希、计算签名的文档,并给出示例
文档中增补了RPC的两个接口 补上了iwallet的基本文档
[社区开发]
ecosystem wallet 技术对接
整理ecosystem wallet 技术对接内容和分享
[测试平台&运维]
Test:
完成v8各个指令时间与gas测试
更新文档,本地连接测试网,测试网转账
排查本地同步块卡住问题
ops:k8s集群物理机经常挂掉,已经修复
make:
make k8s_test
集群自动测试完善工作
Devops:
aws 全 region 测试
试图解决prometheus 有一定几率挂掉,进行压测,未复现问题
升级 testnet,开启 core dump
idevops 增加 console 功能,增加跳过 make 功能
testnet 上线准备,跟新 iost-doc 部署部分
完成虚拟机各个指令及函数定价
补充了部分测试样例,下周会根据测试结果进行收费调整
【虚拟机】
[设计]
iost.js SDK创建账号、发送交易相关问题修复
完成账号介绍的文档
完成receipt 和 token 文档
[研发]
主网映射,相关文档填写
v8vm添加crypto相关加密库
v8vm编译返回错误信息
禁用JavaScript array等相关库函数
js SDK创建账户失败相关问题排查
完成五子棋demo开发
Iost.js适配新的rpc
将wal文件夹挪到了Storage目录下
禁用ArrayPattern,ObjectPattern
对TemplateLiteral预处理收gas
部署合约时检查abi参数类型合法
validate.js 格式检查放入 iwallet
调整收gas: throw,condition,变量函数定义,array,object,string表达式,array:splice, string:repeat, string:concat
安全审计启动会 v8vm string、array相关gas收费调整
VM的C代码执行目前会占用90-95%的时间, 其他的处理占用剩余时间
解决了之前VM集中Recycle导致在Recycle的时候QPS会减少的问题,目前Recycle会均匀进行
[Test&Debug]
iserver在低内存机器上运行内存异常退出问题
节点共识落后之后,同步一段时间后无法持续同步
编写简单的js代码,调用大部分我们提供系统标准库
测试vmreflimit,观察vmreflimit大小对TPS高低的影响
js标准库BlockChain更为名blockchain
修复blockcache重启后未恢复的问题,修复了重启之后WAL读出来之后SetRoot会导致BlockCache出错的Bug, 使用7节点集群测试通过
调研发现可用contextDisposedNotification 功能, 但是这个功能是默认调用了GC功能, 需要考虑对性能的影响到底有多大
WAL 生成的预备tmp文件多次重启后多余的清理
修复如果BlockCache恢复失败 pob会panic的bug
修复WAL被强制kill掉后最后一个log没有写全的bug
增加 js 语法安全性测试
v8vm 调用native_run执行js代码异常问题
智能合约返回收费
测试16核36G集群性能
review 同步模块
修复了VM 计算MemUsage因为isolate不能重用而导致的数值不准确. 在测试了多种方案后使用了每次Recycle的时候进行GC
iost.js 功能修复
[文档]
Gas计费相关调研完成
开发者工具相关问题配合、协调
IOST交易所映射文档
完成receipt 和 token 文档
二、开发者社区
开发者申请进度
IOST开发者激励计划于2018年11月28日正式上线。过去两周,IOST一共收到60份任务申请。
开发任务进度
开发文档韩语翻译:@hoonil satoshi kim组已完成并发放赏金;
IOST Chrome钱包插件开发:@hoonil satoshi kim组持续进行中;
IOST Python SDK:@Cyril组已将代码更新至GitHub;
IOST Java SDK:@Dinar组通过IOST技术团队的审核,已参与到开发工作中;
开发文档俄语&日语翻译:部分开发者的文档翻译内容已经提交给IOST海外团队进行审核。
三、社区进展
社区增长进展
四、交易所进展
IOST上线韩国交易所Bithumb
2018年12月6日IOST上线韩国最大数字货币交易所Bithumb,并开通IOST/KRW交易对。并于12月6日13:00至12月7日23:00期间进行了空投活动,参与IOST交易赛或充值赛,瓜分2200万IOST。
交易所网址:
https://www.bithumb.com/
Bithumb是世界五大比特币交易所之一,占有韩国比特币市场份额75.7%,每天交易量超过13,000BTC,约占全球比特币交易量的10%。同时,Bithumb也是世界最大的以太坊交易所,韩元市场是以太坊最大的货币市场,Bithumb在韩国的以太坊交易中占比44%左右。
IOST上线加密货币指数合约交易平台BBX
2018年12月12日18:00,IOST上线加密货币指数合约交易平台BBX,开放IOST USDT永续合约交易,并举办了IOST合约交易赛空投活动。
交易所官网:
https://www.bbx.com/?qd=iost
BBX是全球领先的加密货币指数合约交易平台,由LinkVC投资,致力于为用户提供安全、便捷、先进的加密货币交易体验。是首家支持以USDT为保证金结算的BTC、ETH、BCH等主流币种正向永续合约交易平台,也是首家支持小币种永续合约的交易平台。支持合约交易、现货交易以及C2C交易。BBX的核心团队来自腾讯、阿里、360、迅雷、雪球、老虎证券等公司,团队分布于马耳他,新加坡等全球各地。
五、国际增长进展
中国
IOST X HOLD
IOST与个性化币种资讯平台HOLD达成战略合作。在HOLD将IOST加为自选币种,即可掌握IOST全网最新资讯与行情,开启通知即可获得实时推送,不再错过IOST的任何动态。
在达成战略合作的同时,IOST与HOLD联合启动了百万空投活动。在HOLD内关注IOST并邀请好友即可共同瓜分百万IOST,邀请越多,奖励越多。此外,还特别设有超级真爱粉大奖,邀请有效人数前5名将获得真爱奖;同时将在所有参与者中随机抽取10名获得幸运奖。
社区成员们热情参与了本次活动,截止12月16日,活动已经圆满结束。接下来2018.12.17—2018.12.28期间用户可以兑换并提币,提币完成后将于2018.12.31—2019.01.03内到账。
日本
IOST于国际教养大学举办workshop
IOST日本团队在日本秋田的国际教养大学与当地合作伙伴EverSystem和Swissborg共同举办了一场研讨会,本次研讨会由该校日本学生策划并组织。
研讨会上,参会人员踊跃讨论了区块链技术面临的机遇与挑战。IOST日本团队负责人也向大家介绍了IOST将如何利用自身的公链技术优势为落地应用贡献自己的力量,推动区块链技术发展。
IOST X digglue
IOST与日本知名区块链在线教育公司digglue达成合作。digglue位于日本东京,开设了在线教育平台EnterChain,注重打造高质量的区块链技术开发课程。
IOST将通过digglue的教育平台EnterChain开设区块链课程,在日本广泛推广区块链技术,普及区块链知识,从而吸引更多优秀的开发者,这也将为IOST DApp相关计划的开展奠定良好的基础。
IOST X LOCH ENERGY JAPAN
12月13日,IOST日本增长负责人Akio Sashima与国家级加密金融项目LOCH ENERGY JAPAN及其印度和美国的技术合作伙伴举行了会议。会后,Akio Sashima还出席了他们与萨哈共和国负责人的签字仪式。
韩国
IOST X Foundation X
12月11日,IOST与Foundation X达成合作,并获得了韩国主流媒体ZDNet的报道。Foundation X是韩国加密货币领域最好的投资机构之一。
IOST(BlueHill)开始对Foundation X的投资组合项目(Foundation X已投资19个区块链项目)进行考察并考虑投资,IOST将与Foundation X携手共建更好的区块链生态。
-END-
官方网站
iost.io
社交平台
Weibo https://weibo.com/u/6502023048
Twitter twitter.com/iostoken
Telegram t.me/officialios
GitHub https://github.com/iost-official
Medium medium.com/@IOStoken
Zendesk iost.zendesk.com
商务合作
contact@iost.io