【问题标题】:Hyperledger Fabcar: Error: could not assemble transaction, err proposal response was not successfulHyperledger Fabcar:错误:无法组装交易,错误提案响应不成功
【发布时间】:2019-10-29 04:55:58
【问题描述】:

我试图在我的本地机器上运行最新的 Fabric 1.4 Fabcar。 iv 安装了清理 docker 镜像的先决条件并运行以下命令

fabric-samples/fabcar: ./startFabric.sh java

我可以看到正在对等节点上安装的链代码,但是一旦它到达通道,我就会收到以下错误

`错误:无法组装交易,错误提案响应不成功,错误代码500,msg链码注册失败:容器退出254'

我也试过了

./startFabric.sh javascript and ./startFabric.sh

但我得到了相同的结果。我能够运行并查询 '''first-network''' ok,但无法启动 Fabcar :(

另外,如果我从 java 应用程序进行 mvn 测试,我会得到 ​​p>

Caused by: org.hyperledger.fabric.sdk.exception.TransactionException: 
org.hyperledger.fabric.sdk.exception.ProposalException: getConfigBlock 
for channel mychannel failed with peer peer0.org1.example.com.  Status 
FAILURE, details: Channel Channel{id: 1, name: mychannel} Sending 
proposal with transaction: 
e545101510caaf0cbb9ff5e193b648308a93e53a459599c2d85f2cd9d4f181bc to 
Peer{ id: 2, name: peer0.org1.example.com, channelName: mychannel, url: 
grpcs://localhost:7051, mspid: Org1MSP} failed because of: gRPC 
failure=Status{code=UNKNOWN, description=access denied: channel 
[mychannel] creator org [Org1MSP], cause=null}

任何帮助表示赞赏

启动日志

Installing smart contract on peer1.org2.example.com
+ docker exec -e CORE_PEER_LOCALMSPID=Org2MSP -e CORE_PEER_ADDRESS=peer1.org2.example.com:10051 -e CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp -e CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt cli peer chaincode install -n fabcar -v 1.0 -p /opt/gopath/src/github.com/chaincode/fabcar/java -l java
2019-10-21 19:59:41.619 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 001 Using default escc
2019-10-21 19:59:41.619 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 002 Using default vscc
2019-10-21 19:59:42.006 UTC [chaincodeCmd] install -> INFO 003 Installed remotely response:<status:200 payload:"OK" >
+ echo 'Instantiating smart contract on mychannel'
Instantiating smart contract on mychannel
+ docker exec -e CORE_PEER_LOCALMSPID=Org1MSP -e CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp cli peer chaincode instantiate -o orderer.example.com:7050 -C mychannel -n fabcar -l java -v 1.0 -c '{"Args":[]}' -P 'AND('\''Org1MSP.member'\'','\''Org2MSP.member'\'')' --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem --peerAddresses peer0.org1.example.com:7051 --tlsRootCertFiles /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt
2019-10-21 19:59:42.387 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 001 Using default escc
2019-10-21 19:59:42.388 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 002 Using default vscc
Error: could not assemble transaction, err proposal response was not successful, error code 500, msg chaincode registration failed: container exited with 1```

docker ps -a

```CONTAINER ID        IMAGE                               COMMAND                  CREATED             STATUS              PORTS                                        NAMES
44d6dd0274cb        hyperledger/fabric-tools:latest     "/bin/bash"              6 minutes ago       Up 6 minutes                                                     cli
ff7b5068437e        hyperledger/fabric-peer:latest      "peer node start"        6 minutes ago       Up 6 minutes        0.0.0.0:7051->7051/tcp                       peer0.org1.example.com
5806c85ba8b7        hyperledger/fabric-peer:latest      "peer node start"        6 minutes ago       Up 6 minutes        0.0.0.0:9051->9051/tcp                       peer0.org2.example.com
fd722bc9df2d        hyperledger/fabric-peer:latest      "peer node start"        6 minutes ago       Up 6 minutes        0.0.0.0:10051->10051/tcp                     peer1.org2.example.com
9031600fe52a        hyperledger/fabric-peer:latest      "peer node start"        6 minutes ago       Up 6 minutes        0.0.0.0:8051->8051/tcp                       peer1.org1.example.com
69c4f20893e8        hyperledger/fabric-orderer:latest   "orderer"                6 minutes ago       Up 6 minutes        0.0.0.0:7050->7050/tcp                       orderer.example.com
8325f89e702a        hyperledger/fabric-couchdb          "tini -- /docker-ent…"   6 minutes ago       Up 6 minutes        4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp   couchdb0
7d83b2cff3c3        hyperledger/fabric-couchdb          "tini -- /docker-ent…"   6 minutes ago       Up 6 minutes        4369/tcp, 9100/tcp, 0.0.0.0:8984->5984/tcp   couchdb3
0a94844d9fe4        hyperledger/fabric-ca:latest        "sh -c 'fabric-ca-se…"   6 minutes ago       Up 6 minutes        0.0.0.0:7054->7054/tcp                       ca_peerOrg1
1da63403427f        hyperledger/fabric-ca:latest        "sh -c 'fabric-ca-se…"   6 minutes ago       Up 6 minutes        7054/tcp, 0.0.0.0:8054->8054/tcp             ca_peerOrg2
9e3ece2b615a        hyperledger/fabric-couchdb          "tini -- /docker-ent…"   6 minutes ago       Up 6 minutes        4369/tcp, 9100/tcp, 0.0.0.0:7984->5984/tcp   couchdb2
91e08de9c145        hyperledger/fabric-couchdb          "tini -- /docker-ent…"   6 minutes ago       Up 6 minutes        4369/tcp, 9100/tcp, 0.0.0.0:6984->5984/tcp   couchdb1```

【问题讨论】:

    标签: java hyperledger-fabric


    【解决方案1】:

    失败的原因可能有很多,要么是路径设置不正确,要么是链码安装的对等点可能无法访问。

    您可以尝试使用这些命令并尝试再次启动

    docker kill $(docker ps -q) docker rm $(docker ps -aq) docker rmi $(docker images dev-* -q)

    【讨论】:

    • 相同的结果 :(。我要从我的系统中删除 Hyperledger 并重新从先决条件开始。我会让你知道它是怎么回事。非常感谢 Rahul 的回复
    • 成功!!!执行您的命令后,我从机器上删除了超级分类帐并重新安装了二进制文件。链码调用成功。结果:状态:200 :)
    • 惊吓得太早了。执行 ./startFabric.sh javascript 时我得到 200。但是当我做一个 ./startFabric.sh java 我得到Error: could not assemble transaction, err proposal response was not successful, error code 500, msg chaincode registration failed: container exited with 254
    • 安装 java 依赖项后,从 java 包中进行 mvn 测试,我得到 ``` org.hyperledger.fabric.gateway.GatewayRuntimeException: org.hyperledger.fabric.sdk.exception.ProposalException: org. hyperledger.fabric.sdk.exception.ServiceDiscoveryException: 无法满足链码 fabcar 的背书政策```
    • java.net.UnknownHostException: peer0.org2.example.com
    【解决方案2】:

    因此,解决问题的根本问题 java.net.UnknownHostException 问题的解决方案是通过添加以下内容来更改 /etc/hosts 中的系统主机文件...

    127.0.0.1 orderer.example.com
    
    127.0.0.1 peer1.org1.example.com
    127.0.0.1 peer0.org2.example.com
    127.0.0.1 peer0.org1.example.com
    127.0.0.1 peer1.org2.example.com
    
    127.0.0.1 ca_peerOrg1
    127.0.0.1 ca_peerOrg2
    127.0.0.1 couchdb1 
    127.0.0.1 couchdb2
    127.0.0.1 couchdb3
    127.0.0.1 couchbd0
    

    mvn 测试然后 :) 希望这对其他人有所帮助

    【讨论】:

      猜你喜欢
      • 2020-04-06
      • 2019-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-30
      • 1970-01-01
      相关资源
      最近更新 更多