引言
本文首先介绍在Rococo本地的测试流程,最后介绍rococo线上测试parachain的流程
Rococolocaltestnetwork中测试parachain
StartRelaychain(LocalRococorelaychain)
准备rococo-local-cfde.json
以下命令是在polkadot目录下操作的,这里切换分支到v0.9.16,然后编译cargobuild--release
编译完成后,在polkadot目录下执行:
启动parachain
生成parachain的chainspec
如果需要修改paraId,可以修改rococo-local-parachain-plain.json文件
Nova Wallet已测试Moonbeam Network波卡平行链众贷:官方消息,Polkadot&Kusama生态应用Nova Wallet表示,已测试Moonbeam Network波卡平行链众贷,安卓用户现在可以通过Nova Wallet以去中心化方式向Moonbeam Network贡献他们的DOT, iOS版本即将发布。[2021/11/6 6:34:47]
这里修改为:2052
生成修改后的paraId的chainspec文件
生成wasm文件
生成genesisstate文件
Rococo将过渡为去中心化的社区平行链测试平台:10月22日消息,Parity Technologies的生态建设负责人BenWei?表示,波卡平行链测试网Rococo此前一直专注于平行链共识功能的内部测试,现将转为去中心化的社区平行链测试平台。接下来的几周,Parity团队将分阶段在Rococo推出不同的功能,并将Rococo过渡到完全由社区维护的平行链测试平台。
Parity工程师已经开始开发一个平行链上线自动化模块,旨在允许每个平行链构建者在有限的时间范围内定期连接到Rococo,计划在11月初发布。[2021/10/22 20:49:57]
启动本地collator节点
然后在打开本地的relaychain的polkadot-js的前端界面,注册parachain,上传Wasm和genesisstate参考:https://docs.substrate.io/tutorials/v3/cumulus/connect-parachain/
Rococolivetestnetwork中测试parachain
观点:波卡平行链拍卖方式有效督促了项目交付产品:6月11日消息,在由Acala、Karura、Winkrypto共同举办的“Karura夏日集结号-聚焦Kusama首次平行链竞拍”线上直播活动中,在谈及首条平行链背后的真正价值时,Parity VP Fabian Gompf表示:波卡最了不起的地方在于,更安全、扩展性更强波卡底层吸引了开发者构建优质项目,而上层应用继续反哺底层建设,相辅相成,推动生态繁荣发展。
Acala&Karura联合创始人Ruitao Su表示:平行链拍卖与以前的模式区别在于,平行链拍卖方式有效督促了项目交付产品,且质押的代币还会回到用户手中。若Karura有幸竞拍成功,将会按计划开放稳定币、Staking等核心功能。也将逐步探索在抵押、交易方面的更多用途。Digital Renaissance FoundationMarketing Director曹寅表示:波卡生态的特点之一就是优质项目方特别团结,这样的生态让人期待。目前,超过10000名用户参与Karura Crowdloan,总锁仓量超过28万枚KSM,总锁仓价值1.2亿美金,目前排名暂时第一。[2021/6/11 23:31:57]
比如,上面我们已经注册了parachain2052,那么我们就可以在rococo公开测试网上测试我们的Parachain了。
Zeitgeist计划部署为 Kusama 平行链:3月24日消息,基于波卡生态的预测市场 Zeitgeist 在平台介绍中指出,该平台基于波卡区块链框架 Substrate 构建,Zeitgeist 将部署为 Kusama 平行链,实现与 Kusama 和波卡生态系统中的所有平行链和应用程序的跨链互操作性。Zeitgeist 将由代币持有者共同拥有。Zeitgeist 将引入“futarchy”概念作为其基础层链的主要治理机制之一,并将成为在实际经济环境中使用该实验性治理系统的示例之一。Zeitgeist 将使用一个链上的资金库,激励团队在协议的基础上建立预测市场,促进网络发展,同时将开发一个开放的 SDK,使技术开发者能够根据预测市场在 Zeitgeist 上部署应用程序。
核心团队成员包括技术专家 Logan Saether (拥有以太坊和波卡生态系统工程项目背景)、拥有预测市场平台职业经验的 David Perry 以及社区建设者 Chris Hutchinson。[2021/3/24 19:13:58]
步骤:
1.在rococopublictestnetwork注册一个paraId
波卡生态Acala已实现平行链与中继链之间转账:8月20日,作为首个平行链测试网,Acala已成功实现将Token在平行链与中继链之间进行转账。另外,Acala还为平行链开发者社区分享了以下相关代码资料:
1.如何将一条基于Substrate链设置为平行链相关代码;2.如何实现简单跨链资产转移。[2020/8/20]
2.通过这个ParaId以及之前我们本地生成的genesisstate和wasm文件来注册parathread
3.当注册成为一个parathread后,我们可以看到parathread处于onboarding状态。此时,我们就可以申请成为平行链了,可以联系Parity官方的人进行操作,在element频道
4.如果官方的人将Parathread升级为parachain后,我们就可以开始本地启动平行链进行测试,是否能链接到rococolive且正常出块。
首先,启动Live模式的parachain,这里有两种方式:
第一种:修改parachain链的chainspec文件,以命令行的方式进行指定Live启动
第二种:通过json文件的形式,由于我们之前已经在本地生成了rococo-local-parachain-2052-raw.json这个文件,我们只需要修改其中的一些参数
主要修改字段为:
chainType:需要将Local修改为Live,
relay_chain:修改为rococo
para_id:需要与我们在rococolive上注册的parachainId保持一致
其他的字段看自己需要进行修改,也可不修改
这里值得一提的就是bootNodes字段,这个字段在自己首次本地启动的时候无需进行配置,但是如果你的平行链已经上线并且需要给其他用户加入的话,这里就需要进行配置引导节点。
获取当前需要连接的rococolive的chainspec文件
笔者此时的rococolive的runtime版本为polkadot-v0.9.16,所以我们从polkadot上获取到rococo的chainspec文件,放在我们的parachain目录下
注意,我们的parachainlive的runtime版本必须要和当前rococolive的版本一致
一切准备就绪后,我们就可以启动我们本地的平行链,准备连接到rococolive进行parachain出块测试了
注意,下面的basepath我们需要预留至少12G的空间(以当前时间为2022-02-20来计算的话),否则空间不够拉取rococo的区块
在启动上述命令后,我们可以看到Log里会同步rococo的区块,整个过程大概耗时2小时左右,等待全部同步完毕后,我们的Parachain就会正常出块了~。
查看rococotestnetwork可以看到:
打开本地8844端口可以看到parachain已经可以正常出块了,这里我已经出到204个块.....
至此,rococolive测试结束~
Rococolive部署注意事项:
1.如果出现以下问题:
这种是由于使用的rococolive的json文件和当前rococolive版本不一致导致的,比如使用的是polkadot-0.9.13的live文件,然而当前rococolive版本为polkadot-v0.9.16
2.同步中继链区块错误:
这里是由于我们liveParachain的版本和rococlive不一致
3.在将pallet版本从polkadot-v0.9.13升级到polkadot-v0.9.16时,出现一些pallet宏功能无法使用问题
palletStruct的宏问题
当前polkadot-v0.9.16版本中,Pallet结构体上需要加上#
palletstorage问题
当前polkadot-v0.9.16版本中,我们在使用StorageMap这个存储结构的时候,如果我们的存储结构中涉及到AccountId需要使用OptionQuery的方式,而非之前的ValueQuery,因为在官方移除了对于AccountId的default处理,所以我们就需要使用Option的方式处理空值None。对应的咱们的pallet就需要进行重构,并对None进行处理,杜绝Runtime出现这种异常。
4.在同步rococolive的区块时,出现以下错误,并且可以看到一直拉取不到最新的区块
这里是由于本地机器时间不同步,使用ntp同步即可
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。