chaincode instantiate: Error reading from ip:port; rpc error: code = Canceled desc = context canceled. without docker
chaincode instantiate: Error reading from ip:port; rpc error: code = Canceled desc = context canceled. without docker
我有一个 hyperledger fabric 网络,有一个排序节点和一个节点,排序节点在排序节点组织 (OrdererOrg) 中,节点在节点组织 (Org1) 中。我能够同时启动订购者和对等方,创建一个通道,对等方能够加入该通道。
接下来,我可以在对等节点上安装链代码。但是,当我尝试实例化链码时,在订购者终端上我收到警告消息
2019-04-25 16:48:08.203 EDT [orderer.common.broadcast] Handle -> WARN 01a Error reading from 127.0.0.1:33340: rpc error: code = Canceled desc = context canceled
peer终端和执行终端都没有报错信息,说明命令运行成功
instantiate
能够下载链代码的 docker 容器。
我可以通过 运行 docker image ls
看到 docker 个图像,它显示了两个 docker 个图像
myfn-peer1-mycc-1.0-6ec0d4e71b402887d447e77b3b23b0ab860673e40ec5750a912a2faffe0158cf
hyperledger/fabric-javaenv
接下来,当我尝试查询链代码时,我收到错误提示找不到链代码。
peer chaincode query -C $CHANNEL_NAME -n mycc -c '{"Args":["query","a"]}'
Error: endorsement failure during query. response: status:500 message:"make sure the chaincode mycc has been successfully instantiated and try again: chaincode mycc not found"
我不确定缺少什么,我检查了配置和环境变量,一切似乎都是正确的。
我想,您的 Peer 能够创建实例化交易并将其发送给订购者。另一方面,排序者创建一个块并将其发送给对等方。但是,对等方无法获取区块并将其存储在分类帐中,在这种情况下,您将能够一次又一次地实例化您的链代码。如果您尝试查询,您将得到
Error: endorsement failure during query. response: status:500 message:"make sure the chaincode mycc has been successfully instantiated and try again: chaincode mycc not found"
Artem Barger 在他的 中提到,但是,在这个答案中,您 不需要 需要将订购服务端点设置为 orderer.7050
。
这个问题的解决方案是,排序节点使用八卦协议将块发送给它的节点。确保在您的配置中正确设置了八卦协议 (core.peer.gossip
)。
peer:
gossip:
bootstrap: 127.0.0.1:7051
externalEndpoint: 127.0.0.1:7051
useLeaderElection: true
orgLeader: false
这应该可以解决问题。
我有一个 hyperledger fabric 网络,有一个排序节点和一个节点,排序节点在排序节点组织 (OrdererOrg) 中,节点在节点组织 (Org1) 中。我能够同时启动订购者和对等方,创建一个通道,对等方能够加入该通道。
接下来,我可以在对等节点上安装链代码。但是,当我尝试实例化链码时,在订购者终端上我收到警告消息
2019-04-25 16:48:08.203 EDT [orderer.common.broadcast] Handle -> WARN 01a Error reading from 127.0.0.1:33340: rpc error: code = Canceled desc = context canceled
peer终端和执行终端都没有报错信息,说明命令运行成功
instantiate
能够下载链代码的 docker 容器。
我可以通过 运行 docker image ls
看到 docker 个图像,它显示了两个 docker 个图像
myfn-peer1-mycc-1.0-6ec0d4e71b402887d447e77b3b23b0ab860673e40ec5750a912a2faffe0158cf
hyperledger/fabric-javaenv
接下来,当我尝试查询链代码时,我收到错误提示找不到链代码。
peer chaincode query -C $CHANNEL_NAME -n mycc -c '{"Args":["query","a"]}'
Error: endorsement failure during query. response: status:500 message:"make sure the chaincode mycc has been successfully instantiated and try again: chaincode mycc not found"
我不确定缺少什么,我检查了配置和环境变量,一切似乎都是正确的。
我想,您的 Peer 能够创建实例化交易并将其发送给订购者。另一方面,排序者创建一个块并将其发送给对等方。但是,对等方无法获取区块并将其存储在分类帐中,在这种情况下,您将能够一次又一次地实例化您的链代码。如果您尝试查询,您将得到
Error: endorsement failure during query. response: status:500 message:"make sure the chaincode mycc has been successfully instantiated and try again: chaincode mycc not found"
Artem Barger 在他的 orderer.7050
。
这个问题的解决方案是,排序节点使用八卦协议将块发送给它的节点。确保在您的配置中正确设置了八卦协议 (core.peer.gossip
)。
peer:
gossip:
bootstrap: 127.0.0.1:7051
externalEndpoint: 127.0.0.1:7051
useLeaderElection: true
orgLeader: false
这应该可以解决问题。