v3.5.0

Repair

Feature Name Default State Description
intra-block fragmentation feature_sharding Off: 0 By default, feature _ sharding is turned on only when upgrading from 3.3 or 3.4 to the current version
homomorphic encryption feature_paillier Off: 0 Default Off
rpbft consensus feature_rpbft Off: 0 Default Off
Bug fixes bugfix_\<bug_name> On: 1 Upgrading from a lower version is off by default

Component compatibility

Recommended Version Minimum Version Description
WeBASE 3.0.2 3.0.2
WeIdentity v3.0.0-rc.1 v3.0.0-rc.1
Console 3.5.0 3.0.0
Java SDK 3.5.0 3.0.0
CPP SDK 3.5.0 3.0.0
Solidity 0.8.11 Minimum 0.4.25, maximum 0.8.11 The compiler (console) needs to be downloaded according to the contract version
WBC-Liquid 1.0.0-rc3 1.0.0-rc3

Upgrade Method

This operation only supports upgrading version 3.x to this version, and does not support upgrading version 3.0-rc or 2.x。

Query data compatibility version number (compatibility _ version)

Use console Query, such as the current version returned is 3.0.0

[group0]: /apps>  getSystemConfigByKey compatibility_version
3.0.0

Replace Node Binary

Need to beAll Nodes Gradually replace the binary with the current version。In order not to affect the business, the replacement process can be done in grayscale, replacing and restarting nodes one by one。During the replacement process, the current chain continues to execute with the logic of the old data-compatible version number。After the binary replacement of all nodes is completed and restarted, you need to use the console to modify the data compatibility version number to the current version。

Set the data compatibility version number (compatibility _ version)

Use console Set the data compatibility version number. For example, the current version is 3.5.0。

[group0]: /apps>  setSystemConfigByKey compatibility_version 3.5.0
{
    "code":0,
    "msg":"success"
}

Note: If the permission governance function is enabled, you need to use the setSysConfigProposal command

Set successfully, query again, the current version has been upgraded to 3.5.0

[group0]: /apps>  getSystemConfigByKey compatibility_version
3.5.0

The current chain has been upgraded, so far,The chain continues to run with new logicand supports new features。

Enable rpbft consensus through feature switch

Run the getSystemConfigByKey command in the console to view the feature status of the current rpbft

[group0]: /apps> getSystemConfigByKey feature_rpbft
0

Use the setSystemConfigByKey command to enable the rpbft feature and enable rpbft consensus

[group0]: /apps> setSystemConfigByKey feature_rpbft 1
{
    "code":0,
    "msg":"success"
}

Run the getSystemConfigByKey command in the console to check whether the feature of the current rpbft is enabled. A value of 1 indicates that the feature is enabled

[group0]: /apps> getSystemConfigByKey feature_rpbft
1