hyperledger-fabric - Hyperledger Composer v0.19.8 升级业务网络时出错
问题描述
我正在尝试升级超级账本结构业务网络,但出现此错误
composer archive create -t dir -n . && \
composer network install -a $BNA_FILE -c PeerAdmin@hlfv1 && \
composer network upgrade -c PeerAdmin@hlfv1 -n NETWORK-NAME -V 0.1.23
版本号对应于package.json
文档中所说的版本号。运行升级命令时出现以下错误
Error: Error trying to upgrade business network. Error: No valid responses
from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: chaincode
error (status: 500, message: could not find chaincode with name 'NETWORK-NAME')
我确保超级账本结构正在运行,./startFabric
但我仍然收到此错误
解决方案
收到的错误消息是说没有称为已NETWORK-NAME
启动的业务网络。为了升级业务网络,它必须事先启动。
在这种情况下听起来像是您已经启动了composer提供的简单结构开发服务器并最初安装并启动了业务网络NETWORK-NAME
。在某些时候,您已经重新启动了结构,但这次重新启动实际上删除了现有的结构服务器并创建了一个新的结构网络。因为这是一个干净的fabric网络,所以现在通道上没有业务网络,您需要从头开始重新安装并启动业务网络。例如,该startFabric.sh
脚本实际上完全删除了您现有的结构网络并创建了一个新结构网络,因此业务网络和数据丢失了。
如果您想确保您的结构服务器在各种情况下保留其信息,这些资源可能会对您有所帮助。
https://github.com/hyperledger/composer-knowledge-wiki/blob/latest/knowledge.md#fabricsetup(参见如何保持docker状态部分)
推荐阅读
- vb.net - 如何检查列表是否包含VB.Net中的另一个列表项
- symfony - 如何解决 CSRF 令牌无效
- c++ - 在运行时,std 库何时完全初始化以便在不破坏代码的情况下使用它?
- linux - 安装一个使用 wget 下载的 RPM 文件
- perl - 在 Perl 中使用 system() 命令时,如何将 STDERR 重定向到 STDOUT?2>&1 解决方案不起作用
- java - 在另一个类中创建一个类的对象?
- c# - 为什么 List.All(a.this != that) 优于 !List.Any(a.this = that)
- python - 如何允许 python 应用程序更改系统时间
- excel - 编写宏来组织大量信息
- javascript - 单击时切换导航按钮