升级服务链
Kaia 及其 ServiceChain 不断发布新版本,以开发新功能和修复漏洞。 本页是升级 ServiceChain 二进制文件和设置 ServiceChain 硬分叉区块编号的指南。
升级
本节介绍如何升级 ServiceChain 二进制文件。
注意* 服务链二进制文件的升级可能是不可逆和向后兼容的,这意味着您不能降级到旧版本。 有关详细信息,请参阅发行说明。 例如,Kaia v1.9.0 发布说明 说:
注意:该版本更新了数据库版本,以支持快照同步。 更新到 v1.9.0 后,您不能使用现有数据降级到旧版本。
您可以通过以下链接获取最新版的 Kaia 和 ServiceChain 二进制文件:
要升级 ServiceChain 二进制文件,请停止 ServiceChain 节点并替换二进制文件。 例如,您可以使用以下命令停止 SCN 节点,并将二进制文件替换为更新的二进制文件。
$ kscnd stopShutting down kscnd: OK$ cp /path/to/new/kscn /path/to/original/kscn
升级后可以重新启动 ServiceChain 节点。 但是,如果计划在 ServiceChain 中激活硬分叉,就必须保持 ServiceChain 节点的宕机。 有关 ServiceChain 硬分叉的说明,请参阅 硬分叉。
$ kscnd start
硬分叉
本节介绍将 Kaia hard fork 应用于 ServiceChain 的步骤。
要将硬分叉应用于 ServiceChain,您需要
- 为硬分叉选择一个合适的区块编号
- 将 ServiceChain 二进制版本升级到支持硬分叉的版本
- 在服务链中设置硬分叉区块编号
1) 为硬分叉选择一个合适的区块编号
在 ServiceChain 的 Javascript 控制台中,您可以检查当前的区块编号,如下图所示。
$ kscn attach --datadir ~/kscnd_home欢迎访问 Kaia JavaScript 控制台!instance:Kaia/vX.X.X/XXXX-XXXX/goX.X.X datadir: ~/kscnd_home modules: admin:1.0 debug:1.0 eth:1.0 governance:1.0 istanbul:1.0 klay:1.0 net:1.0 personal:1.0 rpc:1.0 txpool:1.0 web3:1.0> kaia.blockNumber1234
现在,您必须选择一个合适的区块编号来激活硬分叉。 确保当前区块和硬分叉区块之间有足够多的区块(每秒产生一个)。
2. 升级服务链二进制文件
有关升级 ServiceChain 二进制文件的说明,请参阅本页的 Upgrade 部分。 确保暂时关闭(或停止)ServiceChain 节点。 设置硬分叉区块编号后,您将重新启动它们。