Endorsement policy failure error is taking a long time in hyperledger fabric v2.2 - hyperledger-fabric

I have discovery enabled and I am testing if a transaction will fail if the endorsing organizations set in the transaction do not match the organizations actually involved in the transaction.
I am attempting to create a private data collection with ORG1 and as part of the transaction I have used the following method to set the endorsing organizations:
transaction.setEndorsingOrganizations(...['ORG2']);
The test is failing but it is taking 60 seconds to do so.
The logs are as follows:
peer (org1) logs:
2021-01-25 13:31:50.876 UTC [gossip.privdata] StoreBlock -> INFO 055 [default] Received block [15] from buffer
2021-01-25 13:31:50.878 UTC [vscc] Validate -> ERRO 056 VSCC error: stateBasedValidator.Validate failed, err validation of endorsement policy for collection _implicit_org_1 chaincode test-chaincode in tx 15:0 failed: signature set did not satisfy policy
2021-01-25 13:31:50.878 UTC [committer.txvalidator] validateTx -> ERRO 057 Dispatch for transaction txId = 5c52e14fa24a6e90effbd9dffcbb3fbc6cac1091c1bf3b6512616084 returned error: validation of endorsement policy for collection _implicit_org_1 chaincode test-chaincode in tx 15:0 failed: signature set did not satisfy policy
2021-01-25 13:31:50.878 UTC [committer.txvalidator] Validate -> INFO 058 [default] Validated block [15] in 1ms
2021-01-25 13:31:50.878 UTC [gossip.privdata] fetchPrivateData -> WARN 059 Do not know any peer in the channel( default ) that matches the policies , aborting
2021-01-25 13:31:50.878 UTC [gossip.privdata] populateFromRemotePeers -> WARN 05a Failed fetching private data from remote peers for dig2src:[map[{5c52e14fa24a6e90effbd9dffcbb3fbc6cac1091c1bf3b6512616084 test-chaincode _implicit_org_1 15 0}:[]]], err: Empty membership channel=default
2021-01-25 13:31:51.879 UTC [gossip.privdata] fetchPrivateData -> WARN 05b Do not know any peer in the channel( default ) that matches the policies , aborting
2021-01-25 13:31:51.879 UTC [gossip.privdata] populateFromRemotePeers -> WARN 05c Failed fetching private data from remote peers for dig2src:[map[{5c52e14fa24a6e90effbd9dffcbb3fbc6cac1091c1bf3b6512616084 test-chaincode _implicit_org_1 15 0}:[]]], err: Empty membership channel=default
2021-01-25 13:31:52.880 UTC [gossip.privdata] fetchPrivateData -> WARN 05d Do not know any peer in the channel( default ) that matches the policies , aborting
2021-01-25 13:31:52.880 UTC [gossip.privdata] populateFromRemotePeers -> WARN 05e Failed fetching private data from remote peers for dig2src:[map[{5c52e14fa24a6e90effbd9dffcbb3fbc6cac1091c1bf3b6512616084 test-chaincode _implicit_org_1 15 0}:[]]], err: Empty membership channel=default
fetchPrivateData and populateFromRemotePeers warnings repeat over and over until
2021-01-25 13:32:50.873 UTC [gossip.privdata] RetrievePvtdata -> WARN 0d4 Could not fetch all 1 eligible collection private write sets for block [15] (0 from local cache, 0 from transient store, 0 from other peers). Will commit block with missing private write sets:[txID: 5c52e14fa24a6e90effbd9dffcbb3fbc6cac1091c1bf3b6512616084, seq: 0, namespace: test-chaincode, collection: _implicit_org_1, hash: c189e3f3e8546ecde9b98b3aae67885cb8effeac1d35371a512c47db6a84
] channel=default
2021-01-25 13:32:50.873 UTC [validation] preprocessProtoBlock -> WARN 0d5 Channel [default]: Block [15] Transaction index [0] TxId [5c52e14fa24a6e90effbd9dffcbb3fbc6cac1091c1bf3b6512616084] marked as invalid by committer. Reason code [ENDORSEMENT_POLICY_FAILURE]
2021-01-25 13:32:50.903 UTC [kvledger] CommitLegacy -> INFO 0d6 [default] Committed block [15] with 1 transaction(s) in 29ms (state_validation=0ms block_and_pvtdata_commit=11ms state_commit=16ms) commitHash=[bcfc168b343de9297a2cd4d9f202840dbde2478ab898998915b2c589]
2021-01-25 13:33:00.433 UTC [gossip.privdata] fetchPrivateData -> WARN 0d7 Do not know any peer in the channel( default ) that matches the policies , aborting
2021-01-25 13:33:00.433 UTC [gossip.privdata] reconcile -> ERRO 0d8 reconciliation error when trying to fetch missing items from different peers: Empty membership
2021-01-25 13:33:00.434 UTC [gossip.privdata] run -> ERRO 0d9 Failed to reconcile missing private info, error: Empty membership
The problem isn't the result, it's the time it takes to return the error. Anyone know what could be causing this and is it expected behaviour to take this long? In the peer logs it looks like the validation of the endorsement policy fails right at the beginning, but then it continues to try and fetch the private data anyway.

Check the core.yaml. The usual default setting is
pvtData:
pullRetryThreshold: 60s
That looks like the variable that might control that.

Related

Hyperledger fabric peers consistently logging peer changed its PKI-ID logs

I have hyperledger fabric peers running on version 2.3.2 and the peer's certificates are renewed. The peers continuously logging with message peer2.xorg:7051 changed its PKI-ID from xxxxxx to xxxxxxx and then purging xxxxxxxx from membership
Does anyone knows the reason for these continuos logs?
Below are the complete logs:
2022-06-14 08:47:42.647 UTC [comm.grpc.server] 1 -> INFO 10d08 streaming call completed grpc.service=gossip.Gossip grpc.method=GossipStream grpc.peer_address=10.20.30.140:38550 grpc.peer_subject="CN=peer2.org1.com,OU=peer,O=Hyperledger,ST=North Carolina,C=US" grpc.code=OK grpc.call_duration=24.617863135s
2022-06-14 08:47:42.647 UTC [gossip.discovery] purge -> INFO 10d09 Purging e3c96c537b91675f3a6428a509a287addb65bddeeacb4b5d000b6e4ef567b013 from membership
2022-06-14 08:47:42.647 UTC [gossip.comm] createConnection -> INFO 10d0a Peer peer2.org1.com:7051 changed its PKI-ID from 1c56c0d7a0397dd9c756205197067ef26bef156cdf5ee27af16728a62123fb76 to 9994c9e8d63ae1f6564d1713f9a5393c458a78dfdb915ea2a4a4f6efb6d26dae
2022-06-14 08:47:42.647 UTC [gossip.discovery] purge -> INFO 10d0b Purging 1c56c0d7a0397dd9c756205197067ef26bef156cdf5ee27af16728a62123fb76 from membership
2022-06-14 08:47:42.648 UTC [gossip.comm] createConnection -> INFO 10d0c Peer peer2.org1.com:7051 changed its PKI-ID from da99b167b6c3a7b8289dd943568a382ac0f27d2d0ffcee53725f4fd18a10be9c to 9994c9e8d63ae1f6564d1713f9a5393c458a78dfdb915ea2a4a4f6efb6d26dae
2022-06-14 08:47:42.648 UTC [gossip.discovery] purge -> INFO 10d0d Purging da99b167b6c3a7b8289dd943568a382ac0f27d2d0ffcee53725f4fd18a10be9c from membership
2022-06-14 08:47:42.649 UTC [gossip.comm] createConnection -> INFO 10d0e Peer peer2.org1.com:7051 changed its PKI-ID from 87b299aa1d0a71002dbbac8b0b1bf049a6bd1aa58e669d31f0355587af15a8e9 to 9994c9e8d63ae1f6564d1713f9a5393c458a78dfdb915ea2a4a4f6efb6d26dae
2022-06-14 08:47:42.649 UTC [gossip.comm] func1 -> WARN 10d0f peer2.org1.com:7051, PKIid:87b299aa1d0a71002dbbac8b0b1bf049a6bd1aa58e669d31f0355587af15a8e9 isn't responsive: EOF
2022-06-14 08:47:42.649 UTC [gossip.discovery] purge -> INFO 10d10 Purging 87b299aa1d0a71002dbbac8b0b1bf049a6bd1aa58e669d31f0355587af15a8e9 from membership
2022-06-14 08:47:42.657 UTC [comm.grpc.server] 1 -> INFO 10d11 streaming call completed grpc.service=gossip.Gossip grpc.method=GossipStream grpc.peer_address=10.20.30.140:38546 grpc.peer_subject="CN=peer2.org1-shared.com,OU=peer,O=Hyperledger,ST=North Carolina,C=US" error="rpc error: code = Canceled desc = context canceled" grpc.code=Canceled grpc.call_duration=24.712078411s
2022-06-14 08:47:42.659 UTC [gossip.comm] createConnection -> INFO 10d12 Peer peer2.org1-shared.com:7051 changed its PKI-ID from 5f03f639eb1bc912609b9208a2577cb8575c20a103d71155efe68487dedde236 to 99d3b90022039ca4d3311c96b1ccddc64e58d170f15e39cc18232e43be1c7b63
2022-06-14 08:47:42.659 UTC [gossip.discovery] purge -> INFO 10d13 Purging 5f03f639eb1bc912609b9208a2577cb8575c20a103d71155efe68487dedde236 from membership
2022-06-14 08:47:42.659 UTC [gossip.comm] createConnection -> INFO 10d14 Peer peer2.org1-shared.com:7051 changed its PKI-ID from d4b6c5c8659587ea44ac4ba1f813dc3e52194ca0c2e09b7ecfe1cbd47d1db7c4 to 99d3b90022039ca4d3311c96b1ccddc64e58d170f15e39cc18232e43be1c7b63
2022-06-14 08:47:42.660 UTC [gossip.comm] func1 -> WARN 10d15 peer2.org1-shared.com:7051, PKIid:d4b6c5c8659587ea44ac4ba1f813dc3e52194ca0c2e09b7ecfe1cbd47d1db7c4 isn't responsive: EOF
2022-06-14 08:47:42.660 UTC [gossip.discovery] purge -> INFO 10d16 Purging d4b6c5c8659587ea44ac4ba1f813dc3e52194ca0c2e09b7ecfe1cbd47d1db7c4 from membership
2022-06-14 08:47:42.675 UTC [comm.grpc.server] 1 -> INFO 10d17 unary call completed grpc.service=gossip.Gossip grpc.method=Ping grpc.request_deadline=2022-06-14T08:47:44.674Z grpc.peer_address=10.20.30.140:39676 grpc.peer_subject="CN=peer2.org1.com,OU=peer,O=Hyperledger,ST=North Carolina,C=US" grpc.code=OK grpc.call_duration=62.13µs
2022-06-14 08:47:42.710 UTC [endorser] callChaincode -> INFO 10d18 finished chaincode: assets duration: 37ms channel=assetschannel txID=58a9628e
2022-06-14 08:47:42.711 UTC [comm.grpc.server] 1 -> INFO 10d19 unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=10.20.30.140:34366 grpc.peer_subject="CN=fabric-common" grpc.code=OK grpc.call_duration=39.919313ms
2022-06-14 08:47:43.034 UTC [endorser] callChaincode -> INFO 10d1a finished chaincode: assets duration: 35ms channel=assetschannel txID=010913f5
2022-06-14 08:47:43.035 UTC [comm.grpc.server] 1 -> INFO 10d1b unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=10.20.30.140:34366 grpc.peer_subject="CN=fabric-common" grpc.code=OK grpc.call_duration=38.114437ms
2022-06-14 08:47:43.153 UTC [endorser] callChaincode -> INFO 10d1c finished chaincode: assets duration: 49ms channel=assetschannel txID=49d4c88f
2022-06-14 08:47:43.153 UTC [comm.grpc.server] 1 -> INFO 10d1d unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=10.20.30.140:34366 grpc.peer_subject="CN=fabric-common" grpc.code=OK grpc.call_duration=52.987518ms
2022-06-14 08:47:43.279 UTC [endorser] callChaincode -> INFO 10d1e finished chaincode: assets duration: 85ms channel=assetschannel txID=69279b3e
It keeps on purging same PKI ID again and again
After talking to some experts, I got to know that peers might be fetching service discovery cache from other peers. This is why the errors were not being resolved even after restarting a peer.
After restarting all the peers at the same time, the issue was resolved.
Thanks to Yacov Manevich

Error : issue while using createChannel command

I've been following the tutorial for the Hyperledger Fabric development
but i have this error message while trying the command ./network.sh createChannel:
Error: failed to create deliver client for orderer: orderer client failed to connect to localhost:7050: failed to create new connection: connection error: desc = "transport: error while dialing: dial tcp [::1]:7050: connectex: Aucune connexion n’a pu être établie car l’ordinateur cible l’a expressément refusée."
!!!!!!!!!!!!!!! Channel creation failed !!!!!!!!!!!!!!!!
The French part means that no connection can be established cause the targeted computer has refused it.
After searching a bit there might be an issue with the ports or ip addresses but not sure.
My logs for the different components :
Orderer service :
2020-05-27 09:13:16.388 UTC [localconfig] completeInitialization -> WARN 001 General.GenesisFile should be replaced by General.BootstrapFile
2020-05-27 09:13:16.389 UTC [localconfig] completeInitialization -> INFO 002 Kafka.Version unset, setting to 0.10.2.0
2020-05-27 09:13:16.389 UTC [orderer.common.server] prettyPrintStruct -> INFO 003 Orderer config values:
General.ListenAddress = "0.0.0.0"
General.ListenPort = 7050
General.TLS.Enabled = true
General.TLS.PrivateKey = "/var/hyperledger/orderer/tls/server.key"
General.TLS.Certificate = "/var/hyperledger/orderer/tls/server.crt"
General.TLS.RootCAs = [/var/hyperledger/orderer/tls/ca.crt]
General.TLS.ClientAuthRequired = false
General.TLS.ClientRootCAs = []
General.Cluster.ListenAddress = ""
General.Cluster.ListenPort = 0
General.Cluster.ServerCertificate = ""
General.Cluster.ServerPrivateKey = ""
General.Cluster.ClientCertificate = "/var/hyperledger/orderer/tls/server.crt"
General.Cluster.ClientPrivateKey = "/var/hyperledger/orderer/tls/server.key"
General.Cluster.RootCAs = [/var/hyperledger/orderer/tls/ca.crt]
General.Cluster.DialTimeout = 5s
General.Cluster.RPCTimeout = 7s
General.Cluster.ReplicationBufferSize = 20971520
General.Cluster.ReplicationPullTimeout = 5s
General.Cluster.ReplicationRetryTimeout = 5s
General.Cluster.ReplicationBackgroundRefreshInterval = 5m0s
General.Cluster.ReplicationMaxRetries = 12
General.Cluster.SendBufferSize = 10
General.Cluster.CertExpirationWarningThreshold = 168h0m0s
General.Cluster.TLSHandshakeTimeShift = 0s
General.Keepalive.ServerMinInterval = 1m0s
General.Keepalive.ServerInterval = 2h0m0s
General.Keepalive.ServerTimeout = 20s
General.ConnectionTimeout = 0s
General.GenesisMethod = "file"
General.GenesisFile = "/var/hyperledger/orderer/orderer.genesis.block"
General.BootstrapMethod = "file"
General.BootstrapFile = "/var/hyperledger/orderer/orderer.genesis.block"
General.Profile.Enabled = false
General.Profile.Address = "0.0.0.0:6060"
General.LocalMSPDir = "/var/hyperledger/orderer/msp"
General.LocalMSPID = "OrdererMSP"
General.BCCSP.ProviderName = "SW"
General.BCCSP.SwOpts.SecLevel = 256
General.BCCSP.SwOpts.HashFamily = "SHA2"
General.BCCSP.SwOpts.Ephemeral = true
General.BCCSP.SwOpts.FileKeystore.KeyStorePath = ""
General.BCCSP.SwOpts.DummyKeystore =
General.BCCSP.SwOpts.InmemKeystore =
General.Authentication.TimeWindow = 15m0s
General.Authentication.NoExpirationChecks = false
FileLedger.Location = "/var/hyperledger/production/orderer"
FileLedger.Prefix = "hyperledger-fabric-ordererledger"
Kafka.Retry.ShortInterval = 5s
Kafka.Retry.ShortTotal = 10m0s
Kafka.Retry.LongInterval = 5m0s
Kafka.Retry.LongTotal = 12h0m0s
Kafka.Retry.NetworkTimeouts.DialTimeout = 10s
Kafka.Retry.NetworkTimeouts.ReadTimeout = 10s
Kafka.Retry.NetworkTimeouts.WriteTimeout = 10s
Kafka.Retry.Metadata.RetryMax = 3
Kafka.Retry.Metadata.RetryBackoff = 250ms
Kafka.Retry.Producer.RetryMax = 3
Kafka.Retry.Producer.RetryBackoff = 100ms
Kafka.Retry.Consumer.RetryBackoff = 2s
Kafka.Verbose = true
Kafka.Version = 0.10.2.0
Kafka.TLS.Enabled = false
Kafka.TLS.PrivateKey = ""
Kafka.TLS.Certificate = ""
Kafka.TLS.RootCAs = []
Kafka.TLS.ClientAuthRequired = false
Kafka.TLS.ClientRootCAs = []
Kafka.SASLPlain.Enabled = false
Kafka.SASLPlain.User = ""
Kafka.SASLPlain.Password = ""
Kafka.Topic.ReplicationFactor = 1
Debug.BroadcastTraceDir = ""
Debug.DeliverTraceDir = ""
Consensus = map[SnapDir:/var/hyperledger/production/orderer/etcdraft/snapshot WALDir:/var/hyperledger/production/orderer/etcdraft/wal]
Operations.ListenAddress = "127.0.0.1:8443"
Operations.TLS.Enabled = false
Operations.TLS.PrivateKey = ""
Operations.TLS.Certificate = ""
Operations.TLS.RootCAs = []
Operations.TLS.ClientAuthRequired = false
Operations.TLS.ClientRootCAs = []
Metrics.Provider = "disabled"
Metrics.Statsd.Network = "udp"
Metrics.Statsd.Address = "127.0.0.1:8125"
Metrics.Statsd.WriteInterval = 30s
Metrics.Statsd.Prefix = ""
2020-05-27 09:13:16.400 UTC [msp] loadCertificateAt -> WARN 004 Failed loading ClientOU certificate at [/var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem]: [could not read file /var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem: open /var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.400 UTC [msp] loadCertificateAt -> WARN 005 Failed loading PeerOU certificate at [/var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem]: [could not read file /var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem: open /var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.400 UTC [msp] loadCertificateAt -> WARN 006 Failed loading AdminOU certificate at [/var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem]: [could not read file /var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem: open /var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.400 UTC [msp] loadCertificateAt -> WARN 007 Failed loading OrdererOU certificate at [/var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem]: [could not read file /var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem: open /var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.434 UTC [orderer.common.server] initializeServerConfig -> INFO 008 Starting orderer with TLS enabled
2020-05-27 09:13:16.441 UTC [fsblkstorage] NewProvider -> INFO 009 Creating new file ledger directory at /var/hyperledger/production/orderer/chains
2020-05-27 09:13:16.464 UTC [orderer.common.server] extractSysChanLastConfig -> INFO 00a Bootstrapping because no existing channels
2020-05-27 09:13:16.483 UTC [orderer.common.server] Main -> INFO 00b Setting up cluster for orderer type etcdraft
2020-05-27 09:13:16.490 UTC [orderer.common.server] reuseListener -> INFO 00c Cluster listener is not configured, defaulting to use the general listener on port 7050
2020-05-27 09:13:16.490 UTC [fsblkstorage] newBlockfileMgr -> INFO 00d Getting block information from block storage
2020-05-27 09:13:16.529 UTC [orderer.consensus.etcdraft] HandleChain -> INFO 00e EvictionSuspicion not set, defaulting to 10m0s
2020-05-27 09:13:16.530 UTC [orderer.consensus.etcdraft] createOrReadWAL -> INFO 00f No WAL data found, creating new WAL at path '/var/hyperledger/production/orderer/etcdraft/wal/system-channel' channel=system-channel node=1
2020-05-27 09:13:16.536 UTC [orderer.commmon.multichannel] Initialize -> INFO 010 Starting system channel 'system-channel' with genesis block hash 22c93e29c38e9681f960d390fda12c72869fc9ebfebf0a6d1c15f60198b13119 and orderer type etcdraft
2020-05-27 09:13:16.537 UTC [orderer.consensus.etcdraft] Start -> INFO 011 Starting Raft node channel=system-channel node=1
2020-05-27 09:13:16.537 UTC [orderer.common.cluster] Configure -> INFO 012 Entering, channel: system-channel, nodes: []
2020-05-27 09:13:16.537 UTC [orderer.common.cluster] Configure -> INFO 013 Exiting
2020-05-27 09:13:16.537 UTC [orderer.consensus.etcdraft] start -> INFO 014 Starting raft node as part of a new channel channel=system-channel node=1
2020-05-27 09:13:16.537 UTC [orderer.consensus.etcdraft] becomeFollower -> INFO 015 1 became follower at term 0 channel=system-channel node=1
2020-05-27 09:13:16.538 UTC [orderer.consensus.etcdraft] newRaft -> INFO 016 newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0] channel=system-channel node=1
2020-05-27 09:13:16.538 UTC [orderer.consensus.etcdraft] becomeFollower -> INFO 017 1 became follower at term 1 channel=system-channel node=1
2020-05-27 09:13:16.538 UTC [orderer.common.server] Main -> INFO 018 Starting orderer:
Version: 2.1.0
Commit SHA: 1bdf975
Go version: go1.14.1
OS/Arch: linux/amd64
2020-05-27 09:13:16.538 UTC [orderer.common.server] Main -> INFO 019 Beginning to serve requests
2020-05-27 09:13:16.538 UTC [orderer.consensus.etcdraft] run -> INFO 01a This node is picked to start campaign channel=system-channel node=1
2020-05-27 09:13:16.539 UTC [orderer.consensus.etcdraft] apply -> INFO 01b Applied config change to add node 1, current nodes in channel: [1] channel=system-channel node=1
2020-05-27 09:13:17.539 UTC [orderer.consensus.etcdraft] Step -> INFO 01c 1 is starting a new election at term 1 channel=system-channel node=1
2020-05-27 09:13:17.540 UTC [orderer.consensus.etcdraft] becomePreCandidate -> INFO 01d 1 became pre-candidate at term 1 channel=system-channel node=1
2020-05-27 09:13:17.540 UTC [orderer.consensus.etcdraft] poll -> INFO 01e 1 received MsgPreVoteResp from 1 at term 1 channel=system-channel node=1
2020-05-27 09:13:17.540 UTC [orderer.consensus.etcdraft] becomeCandidate -> INFO 01f 1 became candidate at term 2 channel=system-channel node=1
2020-05-27 09:13:17.541 UTC [orderer.consensus.etcdraft] poll -> INFO 020 1 received MsgVoteResp from 1 at term 2 channel=system-channel node=1
2020-05-27 09:13:17.541 UTC [orderer.consensus.etcdraft] becomeLeader -> INFO 021 1 became leader at term 2 channel=system-channel node=1
2020-05-27 09:13:17.541 UTC [orderer.consensus.etcdraft] run -> INFO 022 raft.node: 1 elected leader 1 at term 2 channel=system-channel node=1
2020-05-27 09:13:17.542 UTC [orderer.consensus.etcdraft] run -> INFO 023 Leader 1 is present, quit campaign channel=system-channel node=1
2020-05-27 09:13:17.543 UTC [orderer.consensus.etcdraft] run -> INFO 024 Raft leader changed: 0 -> 1 channel=system-channel node=1
2020-05-27 09:13:17.543 UTC [orderer.consensus.etcdraft] run -> INFO 025 Start accepting requests as Raft leader at block [0] channel=system-channel node=1
Peer 1 :
2020-05-27 09:13:16.435 UTC [msp] loadCertificateAt -> WARN 001 Failed loading ClientOU certificate at [/etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem]: [could not read file /etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem: open /etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.435 UTC [msp] loadCertificateAt -> WARN 002 Failed loading PeerOU certificate at [/etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem]: [could not read file /etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem: open /etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.435 UTC [msp] loadCertificateAt -> WARN 003 Failed loading AdminOU certificate at [/etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem]: [could not read file /etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem: open /etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.436 UTC [msp] loadCertificateAt -> WARN 004 Failed loading OrdererOU certificate at [/etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem]: [could not read file /etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem: open /etc/hyperledger/fabric/msp/cacerts\ca.org1.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.441 UTC [nodeCmd] serve -> INFO 005 Starting peer:
Version: 2.1.0
Commit SHA: 1bdf975
Go version: go1.14.1
OS/Arch: linux/amd64
Chaincode:
Base Docker Label: org.hyperledger.fabric
Docker Namespace: hyperledger
2020-05-27 09:13:16.442 UTC [peer] getLocalAddress -> INFO 006 Auto-detected peer address: 172.18.0.3:7051
2020-05-27 09:13:16.442 UTC [peer] getLocalAddress -> INFO 007 Returning peer0.org1.example.com:7051
2020-05-27 09:13:16.469 UTC [nodeCmd] initGrpcSemaphores -> INFO 008 concurrency limit for endorser service is 2500
2020-05-27 09:13:16.470 UTC [nodeCmd] initGrpcSemaphores -> INFO 009 concurrency limit for deliver service is 2500
2020-05-27 09:13:16.470 UTC [nodeCmd] serve -> INFO 00a Starting peer with TLS enabled
2020-05-27 09:13:16.500 UTC [ledgermgmt] NewLedgerMgr -> INFO 00b Initializing LedgerMgr
2020-05-27 09:13:16.513 UTC [leveldbhelper] openDBAndCheckFormat -> INFO 00c DB is empty Setting db format as 2.0
2020-05-27 09:13:16.514 UTC [fsblkstorage] NewProvider -> INFO 00d Creating new file ledger directory at /var/hyperledger/production/ledgersData/chains/chains
2020-05-27 09:13:16.521 UTC [leveldbhelper] openDBAndCheckFormat -> INFO 00e DB is empty Setting db format as 2.0
2020-05-27 09:13:16.535 UTC [leveldbhelper] openDBAndCheckFormat -> INFO 00f DB is empty Setting db format as 2.0
2020-05-27 09:13:16.536 UTC [ledgermgmt] NewLedgerMgr -> INFO 010 Initialized LedgerMgr
2020-05-27 09:13:16.547 UTC [gossip.service] New -> INFO 011 Initialize gossip with endpoint peer0.org1.example.com:7051
2020-05-27 09:13:16.549 UTC [gossip.gossip] New -> INFO 012 Creating gossip service with self membership of Endpoint: peer0.org1.example.com:7051, InternalEndpoint: peer0.org1.example.com:7051, PKI-ID: 58df3c0a908cbbd073a6b4138ef676c652aaab118fb99179d7304206f63a0207, Metadata:
2020-05-27 09:13:16.550 UTC [lifecycle] InitializeLocalChaincodes -> INFO 013 Initialized lifecycle cache with 0 already installed chaincodes
2020-05-27 09:13:16.550 UTC [nodeCmd] computeChaincodeEndpoint -> INFO 014 Entering computeChaincodeEndpoint with peerHostname: peer0.org1.example.com
2020-05-27 09:13:16.550 UTC [nodeCmd] computeChaincodeEndpoint -> INFO 015 Exit with ccEndpoint: peer0.org1.example.com:7052
2020-05-27 09:13:16.550 UTC [gossip.gossip] start -> INFO 016 Gossip instance peer0.org1.example.com:7051 started
2020-05-27 09:13:16.560 UTC [sccapi] DeploySysCC -> INFO 017 deploying system chaincode 'lscc'
2020-05-27 09:13:16.560 UTC [sccapi] DeploySysCC -> INFO 018 deploying system chaincode 'cscc'
2020-05-27 09:13:16.560 UTC [sccapi] DeploySysCC -> INFO 019 deploying system chaincode 'qscc'
2020-05-27 09:13:16.560 UTC [sccapi] DeploySysCC -> INFO 01a deploying system chaincode '_lifecycle'
2020-05-27 09:13:16.560 UTC [nodeCmd] serve -> INFO 01b Deployed system chaincodes
2020-05-27 09:13:16.560 UTC [discovery] NewService -> INFO 01c Created with config TLS: true, authCacheMaxSize: 1000, authCachePurgeRatio: 0.750000
2020-05-27 09:13:16.560 UTC [nodeCmd] registerDiscoveryService -> INFO 01d Discovery service activated
2020-05-27 09:13:16.560 UTC [nodeCmd] serve -> INFO 01e Starting peer with ID=[peer0.org1.example.com], network ID=[dev], address=[peer0.org1.example.com:7051]
2020-05-27 09:13:16.560 UTC [nodeCmd] serve -> INFO 01f Started peer with ID=[peer0.org1.example.com], network ID=[dev], address=[peer0.org1.example.com:7051]
2020-05-27 09:13:16.560 UTC [kvledger] LoadPreResetHeight -> INFO 020 Loading prereset height from path [/var/hyperledger/production/ledgersData/chains]
2020-05-27 09:13:16.561 UTC [fsblkstorage] preResetHtFiles -> INFO 021 No active channels passed
2020-05-27 09:13:16.561 UTC [nodeCmd] func6 -> INFO 022 Starting profiling server with listenAddress = 0.0.0.0:6060
Peer 2 :
2020-05-27 09:13:16.409 UTC [msp] loadCertificateAt -> WARN 001 Failed loading ClientOU certificate at [/etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem]: [could not read file /etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem: open /etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.410 UTC [msp] loadCertificateAt -> WARN 002 Failed loading PeerOU certificate at [/etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem]: [could not read file /etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem: open /etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.410 UTC [msp] loadCertificateAt -> WARN 003 Failed loading AdminOU certificate at [/etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem]: [could not read file /etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem: open /etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.410 UTC [msp] loadCertificateAt -> WARN 004 Failed loading OrdererOU certificate at [/etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem]: [could not read file /etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem: open /etc/hyperledger/fabric/msp/cacerts\ca.org2.example.com-cert.pem: no such file or directory]
2020-05-27 09:13:16.420 UTC [nodeCmd] serve -> INFO 005 Starting peer:
Version: 2.1.0
Commit SHA: 1bdf975
Go version: go1.14.1
OS/Arch: linux/amd64
Chaincode:
Base Docker Label: org.hyperledger.fabric
Docker Namespace: hyperledger
2020-05-27 09:13:16.421 UTC [peer] getLocalAddress -> INFO 006 Auto-detected peer address: 172.18.0.2:9051
2020-05-27 09:13:16.421 UTC [peer] getLocalAddress -> INFO 007 Returning peer0.org2.example.com:9051
2020-05-27 09:13:16.433 UTC [nodeCmd] initGrpcSemaphores -> INFO 008 concurrency limit for endorser service is 2500
2020-05-27 09:13:16.434 UTC [nodeCmd] initGrpcSemaphores -> INFO 009 concurrency limit for deliver service is 2500
2020-05-27 09:13:16.434 UTC [nodeCmd] serve -> INFO 00a Starting peer with TLS enabled
2020-05-27 09:13:16.472 UTC [ledgermgmt] NewLedgerMgr -> INFO 00b Initializing LedgerMgr
2020-05-27 09:13:16.492 UTC [leveldbhelper] openDBAndCheckFormat -> INFO 00c DB is empty Setting db format as 2.0
2020-05-27 09:13:16.493 UTC [fsblkstorage] NewProvider -> INFO 00d Creating new file ledger directory at /var/hyperledger/production/ledgersData/chains/chains
2020-05-27 09:13:16.501 UTC [leveldbhelper] openDBAndCheckFormat -> INFO 00e DB is empty Setting db format as 2.0
2020-05-27 09:13:16.528 UTC [leveldbhelper] openDBAndCheckFormat -> INFO 00f DB is empty Setting db format as 2.0
2020-05-27 09:13:16.528 UTC [ledgermgmt] NewLedgerMgr -> INFO 010 Initialized LedgerMgr
2020-05-27 09:13:16.542 UTC [gossip.service] New -> INFO 011 Initialize gossip with endpoint peer0.org2.example.com:9051
2020-05-27 09:13:16.547 UTC [gossip.gossip] New -> INFO 012 Creating gossip service with self membership of Endpoint: peer0.org2.example.com:9051, InternalEndpoint: peer0.org2.example.com:9051, PKI-ID: c7429efa7a899a8b3644235bc56251ffbfb45fe3f55fc0a4d199fd03b1521df4, Metadata:
2020-05-27 09:13:16.547 UTC [lifecycle] InitializeLocalChaincodes -> INFO 013 Initialized lifecycle cache with 0 already installed chaincodes
2020-05-27 09:13:16.548 UTC [nodeCmd] computeChaincodeEndpoint -> INFO 014 Entering computeChaincodeEndpoint with peerHostname: peer0.org2.example.com
2020-05-27 09:13:16.548 UTC [nodeCmd] computeChaincodeEndpoint -> INFO 015 Exit with ccEndpoint: peer0.org2.example.com:9052
2020-05-27 09:13:16.549 UTC [gossip.gossip] start -> INFO 016 Gossip instance peer0.org2.example.com:9051 started
2020-05-27 09:13:16.555 UTC [sccapi] DeploySysCC -> INFO 017 deploying system chaincode 'lscc'
2020-05-27 09:13:16.558 UTC [sccapi] DeploySysCC -> INFO 018 deploying system chaincode 'cscc'
2020-05-27 09:13:16.558 UTC [sccapi] DeploySysCC -> INFO 019 deploying system chaincode 'qscc'
2020-05-27 09:13:16.559 UTC [sccapi] DeploySysCC -> INFO 01a deploying system chaincode '_lifecycle'
2020-05-27 09:13:16.559 UTC [nodeCmd] serve -> INFO 01b Deployed system chaincodes
2020-05-27 09:13:16.559 UTC [discovery] NewService -> INFO 01c Created with config TLS: true, authCacheMaxSize: 1000, authCachePurgeRatio: 0.750000
2020-05-27 09:13:16.559 UTC [nodeCmd] registerDiscoveryService -> INFO 01d Discovery service activated
2020-05-27 09:13:16.559 UTC [nodeCmd] serve -> INFO 01e Starting peer with ID=[peer0.org2.example.com], network ID=[dev], address=[peer0.org2.example.com:9051]
2020-05-27 09:13:16.559 UTC [nodeCmd] serve -> INFO 01f Started peer with ID=[peer0.org2.example.com], network ID=[dev], address=[peer0.org2.example.com:9051]
2020-05-27 09:13:16.559 UTC [kvledger] LoadPreResetHeight -> INFO 020 Loading prereset height from path [/var/hyperledger/production/ledgersData/chains]
2020-05-27 09:13:16.559 UTC [fsblkstorage] preResetHtFiles -> INFO 021 No active channels passed
2020-05-27 09:13:16.559 UTC [nodeCmd] func6 -> INFO 022 Starting profiling server with listenAddress = 0.0.0.0:6060
There are also several warnings but don't really know their meaning.
I've tried to relaunch docker as admin , also tried to relaunch the network.

./byfn.sh up -l node failed

Hi~ I am playing with the first-network sample. But when I try to run the command ./byfn.sh up -l node, I always get the error returned from logs as below.
Instantiating chaincode on peer0.org2...
+ peer chaincode instantiate -o orderer.example.com:7050 --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n mycc -l node -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P 'AND ('\''Org1MSP.peer'\'','\''Org2MSP.peer'\'')'
+ res=1
+ set +x
2020-03-24 08:23:43.975 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 001 Using default escc
2020-03-24 08:23:43.975 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 002 Using default vscc
Error: could not assemble transaction, err proposal response was not successful, error code 500, msg timeout expired while starting chaincode mycc:1.0 for transaction
!!!!!!!!!!!!!!! Chaincode instantiation on peer0.org2 on channel 'mychannel' failed !!!!!!!!!!!!!!!!
========= ERROR !!! FAILED to execute End-2-End Scenario ===========
ERROR !!!! Test failed
The logs about peer0.org2.example.com docker container:
2020-03-24 08:23:19.735 UTC [nodeCmd] serve -> INFO 001 Starting peer:
Version: 1.4.4
Commit SHA: 7917a40
Go version: go1.12.12
OS/Arch: linux/amd64
Chaincode:
Base Image Version: 0.4.18
Base Docker Namespace: hyperledger
Base Docker Label: org.hyperledger.fabric
Docker Namespace: hyperledger
2020-03-24 08:23:19.740 UTC [ledgermgmt] initialize -> INFO 002 Initializing ledger mgmt
2020-03-24 08:23:19.740 UTC [kvledger] NewProvider -> INFO 003 Initializing ledger provider
2020-03-24 08:23:19.891 UTC [kvledger] NewProvider -> INFO 004 ledger provider Initialized
2020-03-24 08:23:20.130 UTC [ledgermgmt] initialize -> INFO 005 ledger mgmt initialized
2020-03-24 08:23:20.130 UTC [peer] func1 -> INFO 006 Auto-detected peer address: 172.19.0.6:9051
2020-03-24 08:23:20.130 UTC [peer] func1 -> INFO 007 Returning peer0.org2.example.com:9051
2020-03-24 08:23:20.131 UTC [peer] func1 -> INFO 008 Auto-detected peer address: 172.19.0.6:9051
2020-03-24 08:23:20.131 UTC [peer] func1 -> INFO 009 Returning peer0.org2.example.com:9051
2020-03-24 08:23:20.135 UTC [nodeCmd] serve -> INFO 00a Starting peer with TLS enabled
2020-03-24 08:23:20.141 UTC [nodeCmd] computeChaincodeEndpoint -> INFO 00b Entering computeChaincodeEndpoint with peerHostname: peer0.org2.example.com
2020-03-24 08:23:20.141 UTC [nodeCmd] computeChaincodeEndpoint -> INFO 00c Exit with ccEndpoint: peer0.org2.example.com:9052
2020-03-24 08:23:20.145 UTC [sccapi] registerSysCC -> INFO 00d system chaincode lscc(github.com/hyperledger/fabric/core/scc/lscc) registered
2020-03-24 08:23:20.146 UTC [sccapi] registerSysCC -> INFO 00e system chaincode cscc(github.com/hyperledger/fabric/core/scc/cscc) registered
2020-03-24 08:23:20.146 UTC [sccapi] registerSysCC -> INFO 00f system chaincode qscc(github.com/hyperledger/fabric/core/scc/qscc) registered
2020-03-24 08:23:20.146 UTC [sccapi] registerSysCC -> INFO 010 system chaincode (+lifecycle,github.com/hyperledger/fabric/core/chaincode/lifecycle,true) disabled
2020-03-24 08:23:20.153 UTC [gossip.service] func1 -> INFO 011 Initialize gossip with endpoint peer0.org2.example.com:9051 and bootstrap set [peer1.org2.example.com:10051]
2020-03-24 08:23:20.163 UTC [gossip.gossip] NewGossipService -> INFO 012 Creating gossip service with self membership of Endpoint: peer0.org2.example.com:9051, InternalEndpoint: peer0.org2.example.com:9051, PKI-ID: c4e87a76098ec5decb4b47d1904021bdcea0fbd290f68af4ade352b0b22b0151, Metadata:
2020-03-24 08:23:20.163 UTC [gossip.gossip] start -> INFO 013 Gossip instance peer0.org2.example.com:9051 started
2020-03-24 08:23:20.164 UTC [sccapi] deploySysCC -> INFO 014 system chaincode lscc/(github.com/hyperledger/fabric/core/scc/lscc) deployed
2020-03-24 08:23:20.165 UTC [cscc] Init -> INFO 015 Init CSCC
2020-03-24 08:23:20.165 UTC [sccapi] deploySysCC -> INFO 016 system chaincode cscc/(github.com/hyperledger/fabric/core/scc/cscc) deployed
2020-03-24 08:23:20.165 UTC [qscc] Init -> INFO 017 Init QSCC
2020-03-24 08:23:20.165 UTC [sccapi] deploySysCC -> INFO 018 system chaincode qscc/(github.com/hyperledger/fabric/core/scc/qscc) deployed
2020-03-24 08:23:20.165 UTC [sccapi] deploySysCC -> INFO 019 system chaincode (+lifecycle,github.com/hyperledger/fabric/core/chaincode/lifecycle) disabled
2020-03-24 08:23:20.165 UTC [nodeCmd] serve -> INFO 01a Deployed system chaincodes
2020-03-24 08:23:20.168 UTC [discovery] NewService -> INFO 01b Created with config TLS: true, authCacheMaxSize: 1000, authCachePurgeRatio: 0.750000
2020-03-24 08:23:20.168 UTC [nodeCmd] registerDiscoveryService -> INFO 01c Discovery service activated
2020-03-24 08:23:20.168 UTC [nodeCmd] serve -> INFO 01d Starting peer with ID=[name:"peer0.org2.example.com" ], network ID=[dev], address=[peer0.org2.example.com:9051]
2020-03-24 08:23:20.169 UTC [nodeCmd] serve -> INFO 01e Started peer with ID=[name:"peer0.org2.example.com" ], network ID=[dev], address=[peer0.org2.example.com:9051]
2020-03-24 08:23:20.169 UTC [nodeCmd] func7 -> INFO 01f Starting profiling server with listenAddress = 0.0.0.0:6060
2020-03-24 08:23:20.169 UTC [kvledger] LoadPreResetHeight -> INFO 020 Loading prereset height from path [/var/hyperledger/production/ledgersData/chains]
2020-03-24 08:23:20.169 UTC [fsblkstorage] LoadPreResetHeight -> INFO 021 Loading Pre-reset heights
2020-03-24 08:23:20.170 UTC [fsblkstorage] preRestHtFiles -> INFO 022 Dir [/var/hyperledger/production/ledgersData/chains/chains] missing... exiting
2020-03-24 08:23:20.170 UTC [fsblkstorage] LoadPreResetHeight -> INFO 023 Pre-reset heights loaded
2020-03-24 08:23:21.673 UTC [comm.grpc.server] 1 -> INFO 024 unary call completed grpc.service=gossip.Gossip grpc.method=Ping grpc.request_deadline=2020-03-24T08:23:23.673Z grpc.peer_address=172.19.0.2:47980 grpc.peer_subject="CN=peer1.org2.example.com,L=San Francisco,ST=California,C=US" grpc.code=OK grpc.call_duration=101.985µs
2020-03-24 08:23:21.682 UTC [comm.grpc.server] 1 -> INFO 025 streaming call completed grpc.service=gossip.Gossip grpc.method=GossipStream grpc.request_deadline=2020-03-24T08:23:31.68Z grpc.peer_address=172.19.0.2:47980 grpc.peer_subject="CN=peer1.org2.example.com,L=San Francisco,ST=California,C=US" error="rpc error: code = Canceled desc = context canceled" grpc.code=Canceled grpc.call_duration=2.417798ms
2020-03-24 08:23:21.714 UTC [comm.grpc.server] 1 -> INFO 026 unary call completed grpc.service=gossip.Gossip grpc.method=Ping grpc.request_deadline=2020-03-24T08:23:23.714Z grpc.peer_address=172.19.0.2:47982 grpc.peer_subject="CN=peer1.org2.example.com,L=San Francisco,ST=California,C=US" grpc.code=OK grpc.call_duration=85.978µs
2020-03-24 08:23:22.955 UTC [comm.grpc.server] 1 -> INFO 027 streaming call completed grpc.service=gossip.Gossip grpc.method=GossipStream grpc.peer_address=172.19.0.2:47982 grpc.peer_subject="CN=peer1.org2.example.com,L=San Francisco,ST=California,C=US" error=EOF grpc.code=Unknown grpc.call_duration=1.240576335s
2020-03-24 08:23:30.812 UTC [endorser] callChaincode -> INFO 028 [][28c2fa0d] Entry chaincode: name:"cscc"
2020-03-24 08:23:30.814 UTC [ledgermgmt] CreateLedger -> INFO 029 Creating ledger [mychannel] with genesis block
2020-03-24 08:23:30.829 UTC [fsblkstorage] newBlockfileMgr -> INFO 02a Getting block information from block storage
2020-03-24 08:23:30.849 UTC [kvledger] CommitWithPvtData -> INFO 02b [mychannel] Committed block [0] with 1 transaction(s) in 13ms (state_validation=1ms block_and_pvtdata_commit=7ms state_commit=1ms) commitHash=[]
2020-03-24 08:23:30.851 UTC [ledgermgmt] CreateLedger -> INFO 02c Created ledger [mychannel] with genesis block
2020-03-24 08:23:30.855 UTC [gossip.gossip] JoinChan -> INFO 02d Joining gossip network of channel mychannel with 2 organizations
2020-03-24 08:23:30.855 UTC [gossip.gossip] learnAnchorPeers -> INFO 02e No configured anchor peers of Org2MSP for channel mychannel to learn about
2020-03-24 08:23:30.856 UTC [gossip.gossip] learnAnchorPeers -> INFO 02f No configured anchor peers of Org1MSP for channel mychannel to learn about
2020-03-24 08:23:30.880 UTC [gossip.state] NewGossipStateProvider -> INFO 030 Updating metadata information for channel mychannel, current ledger sequence is at = 0, next expected block is = 1
2020-03-24 08:23:30.883 UTC [sccapi] deploySysCC -> INFO 031 system chaincode lscc/mychannel(github.com/hyperledger/fabric/core/scc/lscc) deployed
2020-03-24 08:23:30.883 UTC [cscc] Init -> INFO 032 Init CSCC
2020-03-24 08:23:30.884 UTC [sccapi] deploySysCC -> INFO 033 system chaincode cscc/mychannel(github.com/hyperledger/fabric/core/scc/cscc) deployed
2020-03-24 08:23:30.884 UTC [qscc] Init -> INFO 034 Init QSCC
2020-03-24 08:23:30.885 UTC [sccapi] deploySysCC -> INFO 035 system chaincode qscc/mychannel(github.com/hyperledger/fabric/core/scc/qscc) deployed
2020-03-24 08:23:30.885 UTC [sccapi] deploySysCC -> INFO 036 system chaincode (+lifecycle,github.com/hyperledger/fabric/core/chaincode/lifecycle) disabled
2020-03-24 08:23:30.885 UTC [endorser] callChaincode -> INFO 037 [][28c2fa0d] Exit chaincode: name:"cscc" (73ms)
2020-03-24 08:23:30.886 UTC [comm.grpc.server] 1 -> INFO 038 unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=172.19.0.7:53176 grpc.code=OK grpc.call_duration=84.780123ms
2020-03-24 08:23:35.856 UTC [gossip.channel] reportMembershipChanges -> INFO 039 Membership view has changed. peers went online: [[peer1.org2.example.com:10051]] , current view: [[peer1.org2.example.com:10051]]
2020-03-24 08:23:40.217 UTC [gossip.privdata] StoreBlock -> INFO 03a [mychannel] Received block [1] from buffer
2020-03-24 08:23:40.226 UTC [gossip.gossip] JoinChan -> INFO 03b Joining gossip network of channel mychannel with 2 organizations
2020-03-24 08:23:40.226 UTC [gossip.gossip] learnAnchorPeers -> INFO 03c Learning about the configured anchor peers of Org1MSP for channel mychannel : [{peer0.org1.example.com 7051}]
2020-03-24 08:23:40.226 UTC [gossip.gossip] learnAnchorPeers -> INFO 03d No configured anchor peers of Org2MSP for channel mychannel to learn about
2020-03-24 08:23:40.237 UTC [gossip.service] updateEndpoints -> WARN 03e Failed to update ordering service endpoints, due to Channel with mychannel id was not found
2020-03-24 08:23:40.245 UTC [committer.txvalidator] Validate -> INFO 03f [mychannel] Validated block [1] in 27ms
2020-03-24 08:23:40.285 UTC [kvledger] CommitWithPvtData -> INFO 040 [mychannel] Committed block [1] with 1 transaction(s) in 38ms (state_validation=1ms block_and_pvtdata_commit=29ms state_commit=5ms) commitHash=[47dc540c94ceb704a23875c11273e16bb0b8a87aed84de911f2133568115f254]
2020-03-24 08:23:40.563 UTC [gossip.privdata] StoreBlock -> INFO 041 [mychannel] Received block [2] from buffer
2020-03-24 08:23:40.571 UTC [gossip.gossip] JoinChan -> INFO 042 Joining gossip network of channel mychannel with 2 organizations
2020-03-24 08:23:40.571 UTC [gossip.gossip] learnAnchorPeers -> INFO 043 Learning about the configured anchor peers of Org1MSP for channel mychannel : [{peer0.org1.example.com 7051}]
2020-03-24 08:23:40.571 UTC [gossip.gossip] learnAnchorPeers -> INFO 044 Learning about the configured anchor peers of Org2MSP for channel mychannel : [{peer0.org2.example.com 9051}]
2020-03-24 08:23:40.571 UTC [gossip.gossip] learnAnchorPeers -> INFO 045 Anchor peer with same endpoint, skipping connecting to myself
2020-03-24 08:23:40.571 UTC [gossip.service] updateEndpoints -> WARN 046 Failed to update ordering service endpoints, due to Channel with mychannel id was not found
2020-03-24 08:23:40.574 UTC [committer.txvalidator] Validate -> INFO 047 [mychannel] Validated block [2] in 11ms
2020-03-24 08:23:40.600 UTC [kvledger] CommitWithPvtData -> INFO 048 [mychannel] Committed block [2] with 1 transaction(s) in 25ms (state_validation=0ms block_and_pvtdata_commit=18ms state_commit=2ms) commitHash=[5f88b61407b149a48413433f4670c46531e5c4a8febdc339a9536ff8716a559e]
2020-03-24 08:23:40.608 UTC [comm.grpc.server] 1 -> INFO 049 unary call completed grpc.service=gossip.Gossip grpc.method=Ping grpc.request_deadline=2020-03-24T08:23:42.607Z grpc.peer_address=172.19.0.5:53128 grpc.peer_subject="CN=peer1.org1.example.com,L=San Francisco,ST=California,C=US" grpc.code=OK grpc.call_duration=106.3µs
2020-03-24 08:23:40.622 UTC [comm.grpc.server] 1 -> INFO 04a unary call completed grpc.service=gossip.Gossip grpc.method=Ping grpc.request_deadline=2020-03-24T08:23:42.621Z grpc.peer_address=172.19.0.3:45792 grpc.peer_subject="CN=peer0.org1.example.com,L=San Francisco,ST=California,C=US" grpc.code=OK grpc.call_duration=94.852µs
2020-03-24 08:23:40.628 UTC [comm.grpc.server] 1 -> INFO 04b unary call completed grpc.service=gossip.Gossip grpc.method=Ping grpc.request_deadline=2020-03-24T08:23:42.628Z grpc.peer_address=172.19.0.2:48046 grpc.peer_subject="CN=peer1.org2.example.com,L=San Francisco,ST=California,C=US" grpc.code=OK grpc.call_duration=61.276µs
2020-03-24 08:23:40.631 UTC [comm.grpc.server] 1 -> INFO 04c streaming call completed grpc.service=gossip.Gossip grpc.method=GossipStream grpc.request_deadline=2020-03-24T08:23:50.609Z grpc.peer_address=172.19.0.5:53128 grpc.peer_subject="CN=peer1.org1.example.com,L=San Francisco,ST=California,C=US" error="rpc error: code = Canceled desc = context canceled" grpc.code=Canceled grpc.call_duration=21.432415ms
2020-03-24 08:23:40.632 UTC [comm.grpc.server] 1 -> INFO 04d streaming call completed grpc.service=gossip.Gossip grpc.method=GossipStream grpc.request_deadline=2020-03-24T08:23:50.624Z grpc.peer_address=172.19.0.3:45792 grpc.peer_subject="CN=peer0.org1.example.com,L=San Francisco,ST=California,C=US" error="rpc error: code = Canceled desc = context canceled" grpc.code=Canceled grpc.call_duration=8.246259ms
2020-03-24 08:23:40.635 UTC [comm.grpc.server] 1 -> INFO 04e streaming call completed grpc.service=gossip.Gossip grpc.method=GossipStream grpc.request_deadline=2020-03-24T08:23:50.629Z grpc.peer_address=172.19.0.2:48046 grpc.peer_subject="CN=peer1.org2.example.com,L=San Francisco,ST=California,C=US" error="rpc error: code = Canceled desc = context canceled" grpc.code=Canceled grpc.call_duration=5.756194ms
2020-03-24 08:23:40.641 UTC [comm.grpc.server] 1 -> INFO 04f unary call completed grpc.service=gossip.Gossip grpc.method=Ping grpc.request_deadline=2020-03-24T08:23:42.641Z grpc.peer_address=172.19.0.3:45798 grpc.peer_subject="CN=peer0.org1.example.com,L=San Francisco,ST=California,C=US" grpc.code=OK grpc.call_duration=69.002µs
2020-03-24 08:23:40.647 UTC [comm.grpc.server] 1 -> INFO 050 unary call completed grpc.service=gossip.Gossip grpc.method=Ping grpc.request_deadline=2020-03-24T08:23:42.647Z grpc.peer_address=172.19.0.2:48050 grpc.peer_subject="CN=peer1.org2.example.com,L=San Francisco,ST=California,C=US" grpc.code=OK grpc.call_duration=65.359µs
2020-03-24 08:23:40.658 UTC [comm.grpc.server] 1 -> INFO 051 unary call completed grpc.service=gossip.Gossip grpc.method=Ping grpc.request_deadline=2020-03-24T08:23:42.658Z grpc.peer_address=172.19.0.5:53144 grpc.peer_subject="CN=peer1.org1.example.com,L=San Francisco,ST=California,C=US" grpc.code=OK grpc.call_duration=115.148µs
2020-03-24 08:23:43.862 UTC [endorser] callChaincode -> INFO 052 [][a8e37e08] Entry chaincode: name:"lscc"
2020-03-24 08:23:43.863 UTC [lscc] executeInstall -> INFO 053 Installed Chaincode [mycc] Version [1.0] to peer
2020-03-24 08:23:43.863 UTC [endorser] callChaincode -> INFO 054 [][a8e37e08] Exit chaincode: name:"lscc" (1ms)
2020-03-24 08:23:43.863 UTC [comm.grpc.server] 1 -> INFO 055 unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=172.19.0.7:53232 grpc.code=OK grpc.call_duration=1.77226ms
2020-03-24 08:23:43.977 UTC [endorser] callChaincode -> INFO 056 [mychannel][1440b726] Entry chaincode: name:"lscc"
2020-03-24 08:23:45.856 UTC [gossip.channel] reportMembershipChanges -> INFO 057 Membership view has changed. peers went online: [[peer0.org1.example.com:7051 ] [peer1.org1.example.com:8051 ]] , current view: [[peer1.org2.example.com:10051] [peer0.org1.example.com:7051 ] [peer1.org1.example.com:8051 ]]
2020-03-24 08:36:47.118 UTC [endorser] callChaincode -> INFO 058 [mychannel][1440b726] Exit chaincode: name:"lscc" (783125ms)
2020-03-24 08:36:47.129 UTC [endorser] SimulateProposal -> ERRO 059 [mychannel][1440b726] failed to invoke chaincode name:"lscc" , error: timeout expired while starting chaincode mycc:1.0 for transaction
github.com/hyperledger/fabric/core/chaincode.(*RuntimeLauncher).Launch
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/runtime_launcher.go:75
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).LaunchInit
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:130
github.com/hyperledger/fabric/core/chaincode.(*ChaincodeSupport).ExecuteLegacyInit
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/chaincode_support.go:222
github.com/hyperledger/fabric/core/endorser.(*SupportImpl).ExecuteLegacyInit
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/support.go:131
github.com/hyperledger/fabric/core/endorser.(*Endorser).callChaincode
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:183
github.com/hyperledger/fabric/core/endorser.(*Endorser).SimulateProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:247
github.com/hyperledger/fabric/core/endorser.(*Endorser).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/endorser/endorser.go:500
github.com/hyperledger/fabric/core/handlers/auth/filter.(*expirationCheckFilter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/expiration.go:61
github.com/hyperledger/fabric/core/handlers/auth/filter.(*filter).ProcessProposal
/opt/gopath/src/github.com/hyperledger/fabric/core/handlers/auth/filter/filter.go:32
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler.func1
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:169
github.com/hyperledger/fabric/vendor/github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/grpc-ecosystem/go-grpc-middleware/chain.go:31
github.com/hyperledger/fabric/core/comm.(*Throttle).UnaryServerIntercptor
/opt/gopath/src/github.com/hyperledger/fabric/core/comm/throttle.go:54
github.com/hyperledger/fabric/vendor/github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/grpc-ecosystem/go-grpc-middleware/chain.go:34
github.com/hyperledger/fabric/common/grpclogging.UnaryServerInterceptor.func1
/opt/gopath/src/github.com/hyperledger/fabric/common/grpclogging/server.go:91
github.com/hyperledger/fabric/vendor/github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/grpc-ecosystem/go-grpc-middleware/chain.go:34
github.com/hyperledger/fabric/common/grpcmetrics.UnaryServerInterceptor.func1
/opt/gopath/src/github.com/hyperledger/fabric/common/grpcmetrics/interceptor.go:30
github.com/hyperledger/fabric/vendor/github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/grpc-ecosystem/go-grpc-middleware/chain.go:39
github.com/hyperledger/fabric/protos/peer._Endorser_ProcessProposal_Handler
/opt/gopath/src/github.com/hyperledger/fabric/protos/peer/peer.pb.go:171
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).processUnaryRPC
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:982
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).handleStream
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:1208
github.com/hyperledger/fabric/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1
/opt/gopath/src/github.com/hyperledger/fabric/vendor/google.golang.org/grpc/server.go:686
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:1337
2020-03-24 08:36:47.176 UTC [comm.grpc.server] 1 -> INFO 05a unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=172.19.0.7:53236 grpc.code=OK grpc.call_duration=13m3.203460855s
The error I've found from the logs above is:
2020-03-24 08:36:47.118 UTC [endorser] callChaincode -> INFO 058 [mychannel][1440b726] Exit chaincode: name:"lscc" (783125ms)
2020-03-24 08:36:47.129 UTC [endorser] SimulateProposal -> ERRO 059 [mychannel][1440b726] failed to invoke chaincode name:"lscc" , error: timeout expired while starting chaincode mycc:1.0 for transaction
github.com/hyperledger/fabric/core/chaincode.(*RuntimeLauncher).Launch
I've searched online many times and get stuck in this error few days. I think is the problem of node or npm and I've also found some useful information from the community of Hyperledger. But I still don't know how to solve this problem. If you have ideas, please give me a hint. Thanks a lot.
https://jira.hyperledger.org/browse/FAB-12318?focusedCommentId=53022&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-53022
https://jira.hyperledger.org/browse/FABCN-256
Here are a few hints:
Chaincode container startup has a default timeout of 300s. If chaincode instantiation takes longer than that (e.g. because you're on a very slow network), you'll get a timeout. You can try to extend that timeout by setting CORE_CHAINCODE_STARTUPTIMEOUT as env variable on your peer.
To see what is happening during chaincode instantiation, perform a docker ps: you'll see some temporary containers running (based on image fabric-ccenv). Check their logs using docker logs.

Failed to invoke chaincode name:"lscc" , error: container exited with 1: chaincode registration failed (Fabric 1.4.1)

I am trying to create a single org, single ca, single peer network, bootstrapped by the nodejs-sdk. I have used this sample for reference.
When I try to instantiate() the chaincode I get this error in the peer accessed by docker logs ax-peer
2019-06-02 13:21:51.395 UTC [ledgermgmt] CreateLedger -> INFO 028 Created ledger [default] with genesis block
2019-06-02 13:21:51.401 UTC [gossip.gossip] JoinChan -> INFO 029 Joining gossip network of channel default with 1 organizations
2019-06-02 13:21:51.401 UTC [gossip.gossip] learnAnchorPeers -> INFO 02a No configured anchor peers of AxOrgMSP for channel default to learn about
2019-06-02 13:21:51.529 UTC [gossip.state] NewGossipStateProvider -> INFO 02b Updating metadata information, current ledger sequence is at = 0, next expected block is = 1
2019-06-02 13:21:51.531 UTC [sccapi] deploySysCC -> INFO 02c system chaincode lscc/default(github.com/hyperledger/fabric/core/scc/lscc) deployed
2019-06-02 13:21:51.532 UTC [cscc] Init -> INFO 02d Init CSCC
2019-06-02 13:21:51.532 UTC [sccapi] deploySysCC -> INFO 02e system chaincode cscc/default(github.com/hyperledger/fabric/core/scc/cscc) deployed
2019-06-02 13:21:51.532 UTC [qscc] Init -> INFO 02f Init QSCC
2019-06-02 13:21:51.532 UTC [sccapi] deploySysCC -> INFO 030 system chaincode qscc/default(github.com/hyperledger/fabric/core/scc/qscc) deployed
2019-06-02 13:21:51.532 UTC [sccapi] deploySysCC -> INFO 031 system chaincode (+lifecycle,github.com/hyperledger/fabric/core/chaincode/lifecycle) disabled
2019-06-02 13:21:51.533 UTC [endorser] callChaincode -> INFO 032 [][4f292791] Exit chaincode: name:"cscc" (656ms)
2019-06-02 13:21:51.533 UTC [comm.grpc.server] 1 -> INFO 033 unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=172.21.0.1:50128 grpc.code=OK grpc.call_duration=657.290863ms
2019-06-02 13:21:51.541 UTC [endorser] callChaincode -> INFO 034 [][3ae34d18] Entry chaincode: name:"lscc"
2019-06-02 13:21:51.542 UTC [endorser] callChaincode -> INFO 035 [][3ae34d18] Exit chaincode: name:"lscc" (0ms)
2019-06-02 13:21:51.542 UTC [comm.grpc.server] 1 -> INFO 036 unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=172.21.0.1:50128 grpc.code=OK grpc.call_duration=940.979µs
2019-06-02 13:21:51.550 UTC [endorser] callChaincode -> INFO 037 [default][17bf8e2d] Entry chaincode: name:"lscc"
2019-06-02 13:21:51.550 UTC [endorser] callChaincode -> INFO 038 [default][17bf8e2d] Exit chaincode: name:"lscc" (1ms)
2019-06-02 13:21:51.550 UTC [comm.grpc.server] 1 -> INFO 039 unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=172.21.0.1:50128 grpc.code=OK grpc.call_duration=1.690033ms
2019-06-02 13:21:51.709 UTC [endorser] callChaincode -> INFO 03a [][bc977c1f] Entry chaincode: name:"lscc"
2019-06-02 13:21:51.710 UTC [lscc] executeInstall -> INFO 03b Installed Chaincode [ax-chaincode] Version [v2] to peer
2019-06-02 13:21:51.710 UTC [endorser] callChaincode -> INFO 03c [][bc977c1f] Exit chaincode: name:"lscc" (1ms)
2019-06-02 13:21:51.710 UTC [comm.grpc.server] 1 -> INFO 03d unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=172.21.0.1:50128 grpc.code=OK grpc.call_duration=1.329134ms
2019-06-02 13:21:51.738 UTC [endorser] callChaincode -> INFO 03e [default][c3bbc09e] Entry chaincode: name:"lscc"
2019-06-02 13:21:57.532 UTC [gossip.election] beLeader -> INFO 03f 7da5b667471b7350114ff369dd11eda7255c2c9de61dc64915fa01b0ca730def : Becoming a leader
2019-06-02 13:21:57.532 UTC [gossip.service] func1 -> INFO 040 Elected as a leader, starting delivery service for channel default
2019-06-02 13:22:10.692 UTC [endorser] callChaincode -> INFO 041 [default][c3bbc09e] Exit chaincode: name:"lscc" (18954ms)
2019-06-02 13:22:10.692 UTC [endorser] SimulateProposal -> ERRO 042 [default][c3bbc09e] failed to invoke chaincode name:"lscc" , error: container exited with 1
github.com/hyperledger/fabric/core/chaincode.(*RuntimeLauncher).Launch.func1
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/runtime_launcher.go:63
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:1333
chaincode registration failed
2019-06-02 13:22:10.693 UTC [comm.grpc.server] 1 -> INFO 043 unary call completed grpc.service=protos.Endorser grpc.method=ProcessProposal grpc.peer_address=172.21.0.1:50128 grpc.code=OK grpc.call_duration=18.955253529s
No additional logs are being registered by the orderer. My code is as follows
const createClientInstance = async () => {
let myClient = new client();
const ordererConfig = {
hostname: 'orderer0',
url: 'grpc://localhost:7050',
pem: readCryptoFile('ordererOrg.pem')
};
const orderer = myClient.newOrderer(ordererConfig.url, {
pem: ordererConfig.pem,
'ssl-target-name-override': ordererConfig.hostname
});
let peerConfig = {
hostname: 'ax-peer',
url: 'grpc://localhost:7051',
eventHubUrl: 'grpc://localhost:7053',
pem: readCryptoFile('axOrg.pem')
};
const defaultPeer = myClient.newPeer(peerConfig.url, {
pem: peerConfig.pem,
'ssl-target-name-override': peerConfig.hostname
});
myClient.setStateStore(await client.newDefaultKeyValueStore({
path: './ax-peer'
}))
let user = await myClient.getUserContext('admin', true);
if (user && user.isEnrolled()) {
console.log('Existing admin user used');
} else {
let url = 'http://localhost:7054'
const ca = new CAClient(url, {
verify: false
});
let enrollmentID = 'admin';
let enrollmentSecret = 'adminpw';
const enrollment = await ca.enroll({
enrollmentID: 'admin',
enrollmentSecret: 'adminpw'
});
user = new User(enrollmentID, myClient);
await user.setEnrollment(enrollment.key, enrollment.certificate, 'AxOrgMSP');
};
await myClient.setUserContext(user);
let adminUser = await myClient.createUser({
username: `Admin#ax-peer`,
mspid: 'AxOrgMSP',
cryptoContent: {
privateKeyPEM: readCryptoFile('Admin#ax-org-key.pem'),
signedCertPEM: readCryptoFile('Admin#ax-org-cert.pem')
}
});
let channelRes = await myClient.queryChannels(defaultPeer);
// Create a new channel. Does not make you join it though
let txId = myClient.newTransactionID();
let envelope_bytes = fs.readFileSync('./channel.tx');
var channelConfig = myClient.extractChannelConfig(envelope_bytes);
let signature = myClient.signChannelConfig(channelConfig);
const request = {
name: 'default',
orderer: orderer,
config: channelConfig,
signatures: [signature],
txId: txId
};
await myClient.createChannel(request);
let channel = myClient.newChannel('default');
channel.addOrderer(orderer);
channel.addPeer(defaultPeer);
const genesisBlock = await channel.getGenesisBlock({ txId: myClient.newTransactionID() });
let res = await channel.joinChannel({
targets: [defaultPeer],
txId: myClient.newTransactionID(),
block: genesisBlock
}, 120000);
const installReq = {
targets: [ defaultPeer ],
chaincodePath: ccPath,
chaincodeId:'ax-chaincode',
chaincodeVersion: 'v2',
chaincodeType: 'node'
};
let installRes = await myClient.installChaincode(installReq, 120000);
let instantiateResponse = await channel.sendInstantiateProposal({
targets: [ defaultPeer ],
chaincodeId: 'ax-chaincode',
chaincodeVersion: 'v2',
chaincodeType: 'node',
txId: myClient.newTransactionID()
});
// This fails
console.log(instantiateResponse);
};
Since the language is node I have to provide the absolute path to the chaincode. My folder structure is
- chaincode
- src
- ax-chaincode
- package.json
- index.js (fabric-contract-api used)
- server
- index.js (where I am calling the above code)
If I run client.queryInstalledChaincodes(defaultPeer) then it returns this log so I guess the chaincode is being installed.
{ chaincodes:
[ { name: 'ax-chaincode',
version: 'v2',
path: '/home/varun/Algorythmix/Core-Projects/ax-boilerplate/chaincode/src/ax-chaincode',
input: '',
escc: '',
vscc: '',
id: [Object] } ] }
How do I fix this? I want to stick to using nodejs and not change my chaincode to golang. The example also pulls the certificates and stores it in the root folder so it can be accessed without having to do docker exec -it bash.
So as per the suggestion by Gari, I added the command in my peer-base.yaml file. The code still did not work but in docker logs ax-peer a more descriptive error popped up that said fabric-chaincode-node not found. Upon inspection it seems apart from installing fabric-contract-api, I also have to install fabric-shim in the chaincode folder. This was added as a requirement in latest Fabric as per this document.
Since fabric-contract-api extends fabric-shim so I did not include it, now that I have the chaincode is being installed.
EDIT- 2020
The documents for nodejs SDK have shifted. The release notes and new dependencies for fabric-contract-api can be found at this link which states the fabric-shim is now fabric-shim-api

how to set cert when calling createChannel in Fabric Node SDK

Help me please with channel creation.
In node sdk i have
// // extract the channel config bytes from the envelope to be signed
const envelope = fs.readFileSync(`${channelConfigPath+channelName}.tx`),
channelConfig = client.extractChannelConfig(envelope),
signature = client.signChannelConfig(channelConfig);
// get an admin based transactionID
// send to orderer
const request = {
config: channelConfig,
signatures: [signature],
name: channelName,
txId: client.newTransactionID(true)
};
client.createChannel(request)
But i get error in docker logs orderer.example.com
-2018-06-26 14:41:04.631 UTC [policies] Evaluate -> DEBU 120 Signature set did not satisfy policy /Channel/Application/Gov1MSP/Admins
-2018-06-26 14:41:04.631 UTC [policies] Evaluate -> DEBU 121 == Done Evaluating *cauthdsl.policy Policy /Channel/Application/Gov1MSP/
-2018-06-26 14:41:04.631 UTC [policies] func1 -> DEBU 122 Evaluation Failed: Only 0 policies were satisfied, but needed 1 of [ Gov1MSP.Admins ]
-2018-06-26 14:41:04.631 UTC [policies] Evaluate -> DEBU 123 Signature set did not satisfy policy /Channel/Application/ChannelCreationPolicy
-2018-06-26 14:41:04.631 UTC [policies] Evaluate -> DEBU 124 == Done Evaluating *policies.implicitMetaPolicy Policy /Channel/Application/ChannelCreationPolicy
-2018-06-26 14:41:04.631 UTC [orderer/common/broadcast] Handle -> WARN 125 [channel: usachannel] Rejecting broadcast of config message from 172.18.0.1:46638 because of error: Error authorizing update: Error validating DeltaSet: Policy for [Groups] /Channel/Application not satisfied: Failed to reach implicit threshold of 1 sub-policies, required 1 remaining
-2018-06-26 14:41:04.631 UTC [orderer/common/server] func1 -> DEBU 126 Closing Broadcast stream
So, how should I set cert from /etc/hyperledger/msp/users/Admin#org1.example.com/msp in Fabric Node SDK?
P.S. with the cert above i can create channel using peer channel create
I am using "^1.2.0" version for fabric-client and fabric-ca-client.
To set the signing identity of the client you need to use the setAdminSigningIdentity method.
For the private key I used the private key in the keystore directory of the msp folder.
In my case it was: "crypto-config/peerOrganizations/org1.example.com/users/Admin#org1.example.com/msp/keystore".
And for the certificate I used the same folder but the file "signcerts/Admin#org1.example.com-cert.pem".
Then you need to use newTransaction(true) because if you don't it will use the userContext which you do not want because you provided the adminSigningIdentity.

Resources