链码是Hyperledger Fabric技术框架中对智能合约的实现,支持业界流行的编程语言Go、Node.js,并不断完善Java等语言的支持。本文主要介绍如何升级通道中已有的链码。
说明
本章节适用于购买Fabric 2.2版本实例的用户,如果您是Fabric 1.4 版本实例的用户,请参见管理链码(V1.4)升级链码。
操作步骤
如果您还未在通道内部署新的链码,请参考部署链码。升级链码包时,涉及链码源文件、版本号、部署通道、背书策略或隐私集配置的修改,具体升级方法如下。
(可选)在本地对链码源文件进行改动升级,并打包,然后参见部署链码中的上传链码、安装链码和提交链码定义完成部署。 部署成功后,操作列中的新增升级的功能,通道状态变为运行中。
在操作列中,单击升级。
在弹出的对话框中,确认并修改除链码的名称外的所有参数信息(如果需要更改)。
注意在隐私集配置中填写隐私集JSON数据时,一但隐私集的 name 和 blockToLive 被设置,您将不能在升级中对这两个值进行修改。
最后,单击升级。
升级后,该组织所在的链码列表中,会新增一条新的链码记录,并且链码的通道状态显示为共识中。
在通道中的其他组织进行确认并提交定义,具体操作见部署链码中的提交链码定义小节。
升级成功后,组织所在的链码列表中,新增的链码会覆盖原有的链码记录,且该链码的通道状态,会由原来的共识中变成运行中,操作栏下新增升级和日志显示。
说明默认需要通道内50% 的组织通过确认,才能最终完成链码的实例化。
文档内容是否对您有帮助?