Blockchain 调用期间在通道中找不到链码

Blockchain 调用期间在通道中找不到链码,blockchain,hyperledger,hyperledger-fabric,Blockchain,Hyperledger,Hyperledger Fabric,我正在尝试fabric sdk节点v1.0.0-alpha e2e测试中的一些代码。我有以下网络配置: 1 CA 1订购方 2个属于通道“mychannel”的对等方 简言之,我试图完成以下几点 创建一个频道 将peer0、peer1连接到通道 安装、实例化链码 发送调用和查询事务 在实例化操作之后,我可以在为peer0和peer1启动的chaincode容器中看到以下日志条目 安装+实例化后两个链码日志的内容 但当我发送调用时,对等方在peer1的日志中给出以下错误: 削皮原木 调用尝试后

我正在尝试fabric sdk节点v1.0.0-alpha e2e测试中的一些代码。我有以下网络配置:

  • 1 CA
  • 1订购方
  • 2个属于通道“mychannel”的对等方
简言之,我试图完成以下几点

  • 创建一个频道
  • 将peer0、peer1连接到通道
  • 安装、实例化链码
  • 发送调用和查询事务
  • 在实例化操作之后,我可以在为peer0和peer1启动的chaincode容器中看到以下日志条目

    安装+实例化后两个链码日志的内容 但当我发送调用时,对等方在peer1的日志中给出以下错误:

    削皮原木 调用尝试后,以下是两个链码容器中的日志项:

    peer0链码容器日志 peer1链码容器日志
    未找到
    链码
    错误的原因可能是什么?为什么即使初始化在两个对等节点上都成功了,也会发生这种情况?

    错误的可能原因是peer1无法与order节点通信。即使您能够安装并实例化,实例化与任何其他事务一样(除了针对lccc-lifecycle系统链码调用它)。因此,虽然链码是作为批准实例化建议的一部分初始化的,但实例化事务没有提交,因此您无法调用它(提交基本上意味着将其添加到lccc的状态)

    此错误的可能原因是对等方无法与订购方通信。您可以检查您的日志中是否有peer1,并寻找像deliver或deliverservice之类的东西进行验证

    ########### example_cc Init ###########
    Aval = 100, Bval = 200
    
    2017-04-12 10:53:43.966 UTC [sysccapi] deploySysCC -> INFO 035 system chaincode qscc/mychannel(github.com/hyperledger/fabric/core/chaincode/qscc) deployed
    2017-04-12 10:53:44.085 UTC [gossip/comm#-1] authenticateRemotePeer -> WARN 036 Remote peer 172.18.0.7:7051 didn't send TLS certificate
    2017-04-12 10:53:44.085 UTC [gossip/comm#-1] sendToEndpoint -> WARN 037 Failed obtaining connection for peer0:7051, PKIid:[] reason: Remote peer 172.18.0.7:7051 didn't send TLS certificate
    2017-04-12 10:53:55.024 UTC [lccc] Invoke -> ERRO 038 ChaincodeId: end2end does not exist on channel: mychannel(err:chaincode not found end2end)
    
    ########### example_cc Init ###########
    Aval = 100, Bval = 200
    ########### example_cc Invoke ###########
    Aval = 0, Bval = 300
    
    ########### example_cc Init ###########
    Aval = 100, Bval = 200