Skip to content

FISCO-BCOS v3.5.0

Latest
Compare
Choose a tag to compare
@wenlinlee wenlinlee released this 20 Nov 08:10
· 294 commits to master since this release
773c82d

当前版本为“最新版”,生产环境推荐使用“稳定版”,参考这里获取版本信息
获取更多信息,请阅读FISCO BCOS 3.x文档

新增

修改

修复

升级描述

  • 升级节点可执行程序

    效果:修复bug,并带来稳定性、性能的提升

    操作:停止节点服务,升级节点可执行程序为当前版本,重启节点服务

    注意事项:

    • 稳定版本:可灰度升级,推荐逐步替换可执行程序进行灰度升级
    • 最新版本:需同时升级,需将所有节点停止,替换所有可执行程序后再重启

    (请查看这里判断稳定版与最新版)
    支持升级的版本:v3.0.0+

  • 升级链数据版本

    效果:可使用当前版本的最新特性

    操作:先完成升级所有节点可执行程序,再参考文档发送交易升级链数据版本至 v3.2.2

    注意事项:务必备份原节点的所有账本数据,若操作失误造成升级失败,可通过原数据回滚到升级前的状态
    支持升级的版本:v3.0.0+

  • 开启实验功能

    效果:通过feature开关控制实验功能的开启

    操作:升级节点可执行程序后,通过控制台命令setSystemConfigByKey <feature名> 1 开启对应实验功能

    注意事项:

    • feature操作不可逆,打开后不可关闭
    • 需确认所有可执行程序版本相同后,再进行feature开启操作
Feature 名 默认状态 说明
块内分片 feature_sharding 关:0 默认关闭,仅在从3.3、3.4升级至当前版本时,feature_sharding打开
同态加密 feature_paillier 关:0 默认关闭
rpbft共识 feature_rpbft 关:0 默认关闭
bug修复 bugfix_<bug_name> 开:1 从低版本升级默认关闭

组件兼容性

请查阅完整描述

推荐版本 最低版本 说明
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 最低 0.4.25,最高 0.8.11 需根据合约版本下载编译器(控制台)
WBC-Liquid 1.0.0-rc3 1.0.0-rc3

Please read our FISCO BCOS 3.x documentation.

Add

Added rPBFT consensus algorithm
Support tree-based broadcasting for transaction and block synchronization
Pack transactions in transaction pool in chronological order
Added Paillier precompiled contract
Support sending transactions using tars rpc protocol

Modified

Optimized log printing

Fix
Fixed bug in transaction pool notification module that caused incorrect transaction count
Fixed vulnerability in Proposal verification and Timer timing issue in CheckPoint in consensus module
Fixed issue where failed Proposal verification in consensus module did not correctly handle transactions, leading to backlogged transactions in transaction pool
Fixed issue with call with sign interface failing verification in Pro architecture with SM nodes
Fixed issue with code coverage statistics
Fixed self-locking issue during DAG execution
Synchronized bug fixes from 3.2.x
Fixed issue with evm cache becoming invalid
Fixed issue with gateway sending corrupted message packets
Fixed handling of abi field during re-import in archiving tool
Fixed handling of nonce field during re-import in archiving tool
Added support for parsing domain names in build_chain.sh script with -l parameter
Fixed issue with boost log deadlock when node receives USR1/USR2 signals
Fixed issue with blocking rpc requests when fetching Merkle proofs

Upgrade Notice

  • Upgrade node executable

    Effect: Fix bugs, and bring stability and performance improvements

    Operation: Stop the node service, upgrade the node executable to the current version, and restart the node service

    Notice: It is recommended to gradually replace the executable for a phased upgrade

    Versions supported before upgration: v3.0.0+

  • Upgrade chain data version

    Effect: Can use the latest features of the current version

    Operation: First complete the upgrade of all node executables, then refer to the documentation to send a transaction to upgrade the chain data version to v3.2.2

    Notice: Be sure to back up all ledger data of the original node. If the operation is incorrect and the upgrade fails, you can roll back to the state before the upgrade using the original data.

    Versions supported before upgration: v3.0.0+

  • Enable Experimental Features

    Effect: The experimental features can be controlled by the "feature" switch. All experimental features are disabled by default.

    Operation: Upgrade the node executable program and connect to the node through the console. Use the command "setSystemConfigByKey feature_name 1" to enable the corresponding experimental feature, except for RPBFT.

    Notice:

    • Feature operations are irreversible and cannot be closed once opened.
    • It is necessary to confirm that all executable program versions are the same before performing the feature enable operation.
Feature Name Default Status Description
Block Sharding feature_sharding Off:0 Block Sharding is closed by default and only automatically enabled when upgrading from 3.3 or 3.4 to 3.5.
Homomorphic Encryption feature_paillier Off:0 Homomorphic Encryption is closed by default.
rPBFT Consensus feature_rpbft Off:0 rPBFT Consensus is closed by default.
Bug Fix bugfix_<bug_name> On:1 Default closed when upgrading from a lower version.

Compatibility

Please refer to document for more details.

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 0.4.25 to 0.8.11 Please download console according with solidity version if you need to compile your smart contract.
WBC-Liquid 1.0.0-rc3 1.0.0-rc3