提交的链码调用/查询中包含Hyperledger farbic 2.0的错误

问题描述 投票:1回答:1

我已成功用peer chaincode lifecycle提交了链码。当我尝试调用/查询chaincode时,出现此错误:

Error: endorsement failure during invoke. response: status:500 message:"error in simulation: failed to execute transaction f490a9e7bca41ad10f68306decae2fdd73e09a9d5f81da7c9ee5cdc3811b3f27: invalid invocation: chaincode 'emp_chaincode' has not been initialized for this version, must call as init first"

并且在chaincode容器日志中,它显示:

+ CHAINCODE_DIR=/usr/local/src

+ cd /usr/local/src

+ npm start -- --peer.address 0.0.0.0:7052


> [email protected] start /usr/local/src

> node emp_chaincode.js "--peer.address" "0.0.0.0:7052"

2020-02-25T09:28:16.743Z info [c-api:lib/chaincode.js] Registering with peer 0.0.0.0:7052 as chaincode "emp_chaincodev1:5bcbed31afc58894912eb4c66d63adcec7eab029e2b911887412b119ef5cf319"

2020-02-25T09:28:16.761Z error [c-api:lib/handler.js] Chat stream with peer - on error: %j "Error: 14 UNAVAILABLE: failed to connect to all addresses\n at Object.exports.createStatusError (/usr/local/src/node_modules/grpc/src/common.js:91:15)\n at ClientDuplexStream._emitStatusIfDone (/usr/local/src/node_modules/grpc/src/client.js:233:26)\n at ClientDuplexStream._receiveStatus (/usr/local/src/node_modules/grpc/src/client.js:211:8)\n at Object.onReceiveStatus (/usr/local/src/node_modules/grpc/src/client_interceptors.js:1311:15)\n at InterceptingListener._callNext (/usr/local/src/node_modules/grpc/src/client_interceptors.js:568:42)\n at InterceptingListener.onReceiveStatus (/usr/local/src/node_modules/grpc/src/client_interceptors.js:618:8)\n at /usr/local/src/node_modules/grpc/src/client_interceptors.js:1127:18"

[请让我知道如何解决。

docker hyperledger-fabric hyperledger hyperledger-chaincode
1个回答
0
投票

在错误结束时,您具有必须先作为init调用

我认为您已将peer chaincode lifecycle approveformyorg命令与标志--init-required一起使用。这意味着新链码的首次调用必须使用--isInit标志,例如peer chaincode invoke -C tradechannel -n trade --isInit ...。在第一次“特殊”调用之后,其他调用和查询就可以了。

© www.soinside.com 2019 - 2024. All rights reserved.