How to solve rpc error: code = Unknown desc = timeout expired while starting chaincode error?

0 votes

I am trying instantiate chaincode using the "Peer Chaincode Instantiate" command. The code is as follows:

peer chaincode instantiate -o orderer.proofofownership.com:7050 --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/proofofownership.com/orderers/orderer.proofofownership.com/msp/tlscacerts/tlsca.proofofownership.com-cert.pem -C dmanddis -n CreateDiamond -v 1.0 -c '{"Args":[]}' -P "OR ('DiamondManufacturerMSP.peer','DistributorMSP.peer')"
I get this error:

Error: Error endorsing chaincode: rpc error: code = Unknown desc = timeout expired while starting chaincode CreateDiamond:1.0(networkid:dev,peerid:peer0.dm.proofofownership.com,tx:1a96ecc8763e214ee543ecefe214df6025f8e98f2449f2b7877d04655ddadb49)

The files are as follows:

peer-base.yaml File:

services:

peer-base:

image: hyperledger/fabric-peer:x86_64-1.1.0

environment:

  - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock

  # the following setting starts chaincode containers on the same

  # bridge network as the peers

  # https://docs.docker.com/compose/networking/

  #- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=proof_of_ownership_pow

  #- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=pow

  #- CORE_LOGGING_LEVEL=INFO

  - CORE_LOGGING_LEVEL=DEBUG

  - CORE_PEER_TLS_ENABLED=true

  - CORE_CHAINCODE_EXECUTETIMEOUT=300s

  - CORE_CHAINCODE_DEPLOYTIMEOUT=300s

  #- CORE_PEER_TLS_ENABLED=false

  - CORE_PEER_GOSSIP_USELEADERELECTION=true

  - CORE_PEER_GOSSIP_ORGLEADER=false

  - CORE_PEER_PROFILE_ENABLED=true

  - CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt

  - CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key

  - CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt

working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer

command: peer node start

cli - container configuration in "docker-compose-cli.yaml" file:

cli:

container_name: cli

image: hyperledger/fabric-tools:x86_64-1.1.0

tty: true

stdin_open: true

environment:

  - GOPATH=/opt/gopath

  - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock

  - CORE_LOGGING_LEVEL=DEBUG

  #- CORE_LOGGING_LEVEL=INFO

  - CORE_PEER_ID=cli

  - CORE_PEER_ADDRESS=peer0.dm.proofofownership.com:7051

  - CORE_PEER_LOCALMSPID=DiamondManufacturerMSP

  - CORE_PEER_TLS_ENABLED=true

  - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/dm.proofofownership.com/peers/peer0.dm.proofofownership.com/tls/server.crt

  - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/dm.proofofownership.com/peers/peer0.dm.proofofownership.com/tls/server.key

  - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/dm.proofofownership.com/peers/peer0.dm.proofofownership.com/tls/ca.crt

  - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/dm.proofofownership.com/users/Admin@dm.proofofownership.com/msp

  - CORE_PEER_CHAINCODELISTENADDRESS=peer0.dm.proofofownership.com:7052

  #- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=host

  #- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=pow

working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer

command: /bin/bash

volumes:

    - /var/run/:/host/var/run/

    #- ./../chaincode/:/opt/gopath/src/github.com/chaincode

    #- ./chaincode/CreateDiamond/go:/opt/gopath/src/github.com/chaincode/

    - ./chaincode/CreateDiamond:/opt/gopath/src/github.com/hyperledger/fabric/peer/chaincode/

    - ./crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/

    - ./scripts:/opt/gopath/src/github.com/hyperledger/fabric/peer/scripts/

    - ./channel-artifacts:/opt/gopath/src/github.com/hyperledger/fabric/peer/channel-artifacts

depends_on:

  - orderer.proofofownership.com

  - peer0.dm.proofofownership.com

  - peer1.dm.proofofownership.com

  - peer0.dist.proofofownership.com

  - peer1.dist.proofofownership.com

#network_mode: host

networks:

  - pow

peer configuration in "docker-compose-base.yaml" file:

peer0.dm.proofofownership.com:

container_name: peer0.dm.proofofownership.com

extends:

  file: peer-base.yaml

  service: peer-base

environment:

  - CORE_PEER_ID=peer0.dm.proofofownership.com

  #- CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/dm.proofofownership.com/users/Admin@dm.proofofownership.com/msp

  #- CORE_PEER_MSPCONFIGPATH=/home/john/Proof-Of-Ownership/crypto-config/peerOrganizations/dm.proofofownership.com/users/Admin@dm.proofofownership.com/msp

  - CORE_PEER_ADDRESS=peer0.dm.proofofownership.com:7051

  - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.dm.proofofownership.com:7051

  - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.dm.proofofownership.com:7051

  - CORE_PEER_LOCALMSPID=DiamondManufacturerMSP

  - CORE_PEER_CHAINCODELISTENADDRESS=peer0.dm.proofofownership.com:7052

  #- CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/dm.proofofownership.com/peers/peer0.dm.proofofownership.com/tls/ca.crt

  #- CORE_PEER_TLS_ROOTCERT_FILE=/home/john/Proof-Of-Ownership/crypto-config/peerOrganizations/dm.proofofownership.com/peers/peer0.dm.proofofownership.com/tls/ca.crt

volumes:

    - /var/run/:/host/var/run/

    - ../crypto-config/peerOrganizations/dm.proofofownership.com/peers/peer0.dm.proofofownership.com/msp:/etc/hyperledger/fabric/msp

    - ../crypto-config/peerOrganizations/dm.proofofownership.com/peers/peer0.dm.proofofownership.com/tls:/etc/hyperledger/fabric/tls

    - peer0.dm.proofofownership.com:/var/hyperledger/production

ports:

  - 7051:7051

  - 7053:7053

Orderer Configuration in "docker-compose-base.yaml" file:

orderer.proofofownership.com:

container_name: orderer.proofofownership.com

image: hyperledger/fabric-orderer:x86_64-1.1.0

environment:

  # CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE Newly Added

  #- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=proof_of_ownership_pow

  #- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=pow

  - ORDERER_GENERAL_LOGLEVEL=DEBUG

  - ORDERER_GENERAL_LISTENADDRESS=0.0.0.0

  - ORDERER_GENERAL_GENESISMETHOD=file

  #- ORDERER_GENERAL_GENESISFILE=/var/hyperledger/orderer/orderer.genesis.block

  - ORDERER_GENERAL_GENESISFILE=/var/hyperledger/orderer/genesis.block

  - ORDERER_GENERAL_LOCALMSPID=OrdererMSP

  - ORDERER_GENERAL_LOCALMSPDIR=/var/hyperledger/orderer/msp

  # enabled TLS

  - ORDERER_GENERAL_TLS_ENABLED=true

  #- ORDERER_GENERAL_TLS_ENABLED=false

  - ORDERER_GENERAL_TLS_PRIVATEKEY=/var/hyperledger/orderer/tls/server.key

  - ORDERER_GENERAL_TLS_CERTIFICATE=/var/hyperledger/orderer/tls/server.crt

  - ORDERER_GENERAL_TLS_ROOTCAS=[/var/hyperledger/orderer/tls/ca.crt]

  # New Addition

  - CONFIGTX_ORDERER_ORDERERTYPE=solo

  - CONFIGTX_ORDERER_BATCHSIZE_MAXMESSAGECOUNT=10

  - CONFIGTX_ORDERER_BATCHTIMEOUT=2s

  - CONFIGTX_ORDERER_ADDRESSES=[127.0.0.1:7050]

#working_dir: /opt/gopath/src/github.com/hyperledger/fabric

working_dir: /opt/gopath/src/github.com/hyperledger/fabric/orderer

command: orderer

volumes:

- ../channel-artifacts/genesis.block:/var/hyperledger/orderer/genesis.block

- ../crypto-config/ordererOrganizations/proofofownership.com/orderers/orderer.proofofownership.com/msp:/var/hyperledger/orderer/msp

- ../crypto-config/ordererOrganizations/proofofownership.com/orderers/orderer.proofofownership.com/tls/:/var/hyperledger/orderer/tls

- orderer.proofofownership.com:/var/hyperledger/production/orderer

ports:

  - 7050:7050
And the logs are as follows:

2018-08-03 09:44:55.822 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP

2018-08-03 09:44:55.822 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity

2018-08-03 09:44:55.822 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 003 Using default escc

2018-08-03 09:44:55.822 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 004 Using default vscc

2018-08-03 09:44:55.822 UTC [chaincodeCmd] getChaincodeSpec -> DEBU 005 java chaincode disabled

2018-08-03 09:44:58.270 UTC [golang-platform] getCodeFromFS -> DEBU 006 getCodeFromFS github.com/hyperledger/fabric/peer/chaincode

2018-08-03 09:45:02.089 UTC [golang-platform] func1 -> DEBU 007 Discarding GOROOT package bytes

2018-08-03 09:45:02.089 UTC [golang-platform] func1 -> DEBU 008 Discarding GOROOT package encoding/json

2018-08-03 09:45:02.089 UTC [golang-platform] func1 -> DEBU 009 Discarding GOROOT package fmt

2018-08-03 09:45:02.090 UTC [golang-platform] func1 -> DEBU 00a Discarding provided package github.com/hyperledger/fabric/core/chaincode/shim

2018-08-03 09:45:02.090 UTC [golang-platform] func1 -> DEBU 00b Discarding provided package github.com/hyperledger/fabric/protos/peer

2018-08-03 09:45:02.090 UTC [golang-platform] func1 -> DEBU 00c Discarding GOROOT package strconv

2018-08-03 09:45:02.090 UTC [golang-platform] func1 -> DEBU 00d skipping dir: /opt/gopath/src/github.com/hyperledger/fabric/peer/chaincode/go

2018-08-03 09:45:02.090 UTC [golang-platform] GetDeploymentPayload -> DEBU 00e done

2018-08-03 09:45:02.090 UTC [container] WriteFileToPackage -> DEBU 00f Writing file to tarball: src/github.com/hyperledger/fabric/peer/chaincode/CreateDiamond.go
2018-08-03 09:45:02.122 UTC [msp/identity] Sign -> DEBU 010 Sign: plaintext: 0AE3070A5B08031A0B089EC890DB0510...EC7BFE1B0000FFFFEE433C37001C0000
2018-08-03 09:45:02.122 UTC [msp/identity] Sign -> DEBU 011 Sign: digest: E5160DE95DB096379967D959FA71E692F098983F443378600943EA5D7265A82C
2018-08-03 09:45:02.230 UTC [chaincodeCmd] install -> DEBU 012 Installed remotely response:<status:200 payload:"OK" >
2018-08-03 09:45:02.230 UTC [main] main -> INFO 013 Exiting.....
Aug 8, 2018 in Blockchain by slayer
• 29,050 points
366 views

1 answer to this question.

0 votes

In the peer configuration, the port you have specified for chaincode endpoint is different than the peer address (chaincode endpoint port 7052, peer address on port 7051):

CORE_PEER_CHAINCODELISTENADDRESS=peer0.dm.proofofownership.com:7052

Try the following code and it should solve the error:

- 7052:7052
answered Aug 8, 2018 by digger
• 27,630 points

Related Questions In Blockchain

0 votes
1 answer
0 votes
1 answer
0 votes
1 answer

How to solve Runtime error when querying Hyperledger?

OCI is open container initiative.. The error ...READ MORE

answered Jul 9, 2018 in Blockchain by slayer
• 29,050 points
221 views
0 votes
1 answer
0 votes
1 answer

Invalid Batch or signature in Savtooth

This will solve your problem import org.apache.commons.codec.binary.Hex; Transaction txn ...READ MORE

answered Aug 1, 2018 in Blockchain by digger
• 27,630 points
59 views
+1 vote
1 answer