v3.1.1¶
新增¶
支持在MacOS上通过建链脚本(
build_chain.sh
)直接下载二进制建链,无需手动编译节点二进制(#3179)
兼容性¶
历史版本升级
需要升级的链的“数据兼容版本号(compatibility_version)”为如下版本时:
3.1.0:本版本的数据兼容版本号依然为3.1.0,直接替换二进制即可完成升级
3.0.x:支持通过替换二进制进行灰度升级,若需使用当前版本的新特性,需升级数据兼容版本号,操作见文档
3.0-rc x:数据不兼容,无法升级,可考虑逐步将业务迁移至3.x正式版
2.x:数据不兼容,2.x版本仍持续维护,可考虑升级为2.x的最新版本
组件兼容性
推荐版本 | 最低版本 | 说明 | |
---|---|---|---|
Console | 3.1.0 | 3.0.0 | |
Java SDK | 3.1.1 | 3.0.0 | |
CPP SDK | 3.0.0 | 3.0.0 | |
Solidity | 0.8.11 | 最低 0.4.25,最高 0.8.11 | 需根据合约版本下载编译器(控制台) |
WBC-Liquid | 1.0.0-rc3 | 1.0.0-rc3 |
升级方法¶
该操作仅支持将3.x版本升级为本版本,不支持3.0-rc或2.x的升级。
查询数据兼容版本号(compatibility_version)¶
用控制台进行查询,如当前返回的版本为3.0.0
[group0]: /apps> getSystemConfigByKey compatibility_version
3.0.0
替换节点二进制¶
需将所有节点的二进制逐步替换为当前版本。为了不影响业务,替换过程能够以灰度方式进行,逐个替换并重启节点。替换过程中,当前的链仍然会以旧的数据兼容版本号的逻辑继续执行。当所有节点二进制替换完成并重启后,需用控制台修改数据兼容版本号为当前版本。
设置数据兼容版本号(compatibility_version)¶
用控制台设置数据兼容版本号,如当前版本为3.1.0
[group0]: /apps> setSystemConfigByKey compatibility_version 3.1.0
{
"code":0,
"msg":"success"
}
注:若开启权限治理功能,需要使用 setSysConfigProposal 命令
设置成功,再次查询,得到当前版本已升级为3.1.0
[group0]: /apps> getSystemConfigByKey compatibility_version
3.1.0
当前链已经完成升级,至此,链开始以新的逻辑继续运行,并支持了新的特性。