Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2-org-3-peers or 3-org-2-peers marbles,I meet this problem #205

Closed
3 tasks
wenshuohan opened this issue Oct 29, 2018 · 7 comments · Fixed by #520
Closed
3 tasks

2-org-3-peers or 3-org-2-peers marbles,I meet this problem #205

wenshuohan opened this issue Oct 29, 2018 · 7 comments · Fixed by #520
Labels
question Further information is requested

Comments

@wenshuohan
Copy link

wenshuohan commented Oct 29, 2018

When I tested the merbles example with caliper, I tried to replace its network configuration with two organizations, each with three peers. Or three organizations, each organization has two peers, but there is such a mistake when starting the network.In my previous tests, two organizations and four nodes could run normally.
the error is:
Creating orderer.example.com ... done
bric-go.json -n ./fabric-go.json
TAP version 13
Creating couchdb.peer1.org3.example.com ... done
Creating couchdb.peer0.org3.example.com ... done
Creating peer0.org1.example.com ... done
Creating peer1.org1.example.com ... done
Creating couchdb.peer1.org2.example.com ...
Creating couchdb.peer0.org1.example.com ...
Creating ca.org2.example.com ...
Creating ca.org3.example.com ...
Creating couchdb.peer1.org3.example.com ...
Creating couchdb.peer0.org3.example.com ...
Creating couchdb.peer1.org1.example.com ...
Creating orderer.example.com ...
Creating ca.org1.example.com ...
Creating peer1.org2.example.com ...
Creating peer0.org2.example.com ...
Creating peer0.org1.example.com ...
Creating peer1.org3.example.com ...
Creating peer0.org3.example.com ...
Creating peer1.org1.example.com ...

create mychannel......
ok 1 created mychannel successfully

Sleep 5s......
Join channel......
join mychannel
error: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/home/hanwenshuo/caliper/node_modules/grpc/src/client.js:64:15)
at /home/hanwenshuo/caliper/node_modules/grpc/src/client.js:583:15
error: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: 14 UNAVAILABLE: Connect Failed
at new createStatusError (/home/hanwenshuo/caliper/node_modules/grpc/src/client.js:64:15)
at /home/hanwenshuo/caliper/node_modules/grpc/src/client.js:583:15
not ok 2 TypeError: Cannot read property 'stack' of undefined
operator: error
expected: |-
undefined
actual: |-
[TypeError: Cannot read property 'stack' of undefined]
at: process.onetime (/home/hanwenshuo/caliper/node_modules/tape-promise/node_modules/onetime/index.js:22:12)
stack: |-
TypeError: Cannot read property 'stack' of undefined
at channels.reduce.then.catch (/home/hanwenshuo/caliper/src/fabric/join-channel.js:215:56)
at
...

1..2

tests 2
pass 1
fail 1
this is my fabric-go.json
{
"fabric": {
"cryptodir": "network/fabric/config/crypto-config",
"network": {
"orderer": {
"url": "grpcs://localhost:7050",
"mspid": "OrdererMSP",
"domain": "example.com",
"user": {
"key": "network/fabric/config/crypto-config/ordererOrganizations/example.com/users/[email protected]/msp/keystore/key.pem",
"cert": "network/fabric/config/crypto-config/ordererOrganizations/example.com/users/[email protected]/msp/signcerts/[email protected]"
},
"server-hostname": "orderer.example.com",
"tls_cacerts": "network/fabric/config/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt"
},
"org1": {
"name": "peerOrg1",
"mspid": "Org1MSP",
"domain": "org1.example.com",
"user": {
"key": "network/fabric/config/crypto-config/peerOrganizations/org1.example.com/users/[email protected]/msp/keystore/key.pem",
"cert": "network/fabric/config/crypto-config/peerOrganizations/org1.example.com/users/[email protected]/msp/signcerts/[email protected]"
},
"ca": {
"url": "https://localhost:7054",
"name": "ca-org1"
},
"peer1": {
"requests": "grpcs://localhost:7051",
"events": "grpcs://localhost:7053",
"server-hostname": "peer0.org1.example.com",
"tls_cacerts": "network/fabric/config/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt"
},
"peer2": {
"requests": "grpcs://localhost:7057",
"events": "grpcs://localhost:7059",
"server-hostname": "peer1.org1.example.com",
"tls_cacerts": "network/fabric/config/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt"
}
},
"org2": {
"name": "peerOrg2",
"mspid": "Org2MSP",
"domain": "org2.example.com",
"ca": {
"url": "https://localhost:8054",
"name": "ca-org2"
},
"peer1": {
"requests": "grpcs://localhost:8051",
"events": "grpcs://localhost:8053",
"server-hostname": "peer0.org2.example.com",
"tls_cacerts": "network/fabric/config/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt"
},
"peer2": {
"requests": "grpcs://localhost:8057",
"events": "grpcs://localhost:8059",
"server-hostname": "peer1.org2.example.com",
"tls_cacerts": "network/fabric/config/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt"
}
},
"org3": {
"name": "peerOrg3",
"mspid": "Org3MSP",
"domain": "org3.example.com",
"ca": {
"url": "https://localhost:9054",
"name": "ca-org3"
},
"peer1": {
"requests": "grpcs://localhost:9051",
"events": "grpcs://localhost:9053",
"server-hostname": "peer0.org3.example.com",
"tls_cacerts": "network/fabric/config/crypto-config/peerOrganizations/org3.example.com/peers/peer0.org3.example.com/tls/ca.crt"
},
"peer2": {
"requests": "grpcs://localhost:9057",
"events": "grpcs://localhost:9059",
"server-hostname": "peer1.org3.example.com",
"tls_cacerts": "network/fabric/config/crypto-config/peerOrganizations/org3.example.com/peers/peer1.org3.example.com/tls/ca.crt"
}
}
},
"channel": [
{
"name": "mychannel",
"config": "network/fabric/config/mychannel.tx",
"organizations": ["org1", "org2", "org3"],
"deployed": false
}
],
"chaincodes": [{"id": "marbles", "path": "contract/fabric/marbles/go", "language":"golang", "version": "v1", "channel": "mychannel", "metadataPath": "src/contract/fabric/marbles/go/metadata"}],
"endorsement-policy": {
"identities": [
{
"role": {
"name": "member",
"mspId": "Org1MSP"
}
},
{
"role": {
"name": "member",
"mspId": "Org2MSP"
}
},
{
"role": {
"name": "admin",
"mspId": "Org1MSP"
}
}
],
"policy": { "2-of": [{"signed-by": 0}, {"signed-by": 1}]}
},
"context": {
"init": "mychannel",
"read": "mychannel",
"transfer": "mychannel",
"query": "mychannel"
}
},
"info" : {
"Version": "1.1.0",
"Size": "6 Peers",
"Orderer": "Solo",
"Distribution": "Single Host"
}
}

this is my config-fabric-go.json
{
"blockchain": {
"type": "fabric",
"config": "benchmark/marbletest/fabric-go.json"
},
"command" : {
"start": "docker-compose -f network/fabric/3-org-2-peer/docker-compose-tls.yaml up -d",
"end" : "docker-compose -f network/fabric/3-org-2-peer/docker-compose-tls.yaml down;docker rm $(docker ps -aq);docker rmi $(docker images dev* -q)"
},
"test": {
"clients": {
"type": "local",
"number": 5
},
"rounds": [{
"label" : "init",
"txNumber" : [500, 500, 500, 500, 500],
"rateControl" : [{"type": "fixed-rate", "opts": {"tps" : 25}}, {"type": "fixed-rate", "opts": {"tps" : 35}}, {"type": "fixed-rate", "opts": {"tps" : 45}}, {"type": "fixed-rate", "opts": {"tps" : 55}}, {"type": "fixed-rate", "opts": {"tps" : 65}}],
"callback" : "benchmark/marbletest/init.js"
},
{
"label" : "read",
"txNumber" : [500, 500, 500, 500, 500],
"rateControl" : [{"type": "fixed-rate", "opts": {"tps" : 50}}, {"type": "fixed-rate", "opts": {"tps" : 60}}, {"type": "fixed-rate", "opts": {"tps" : 70}}, {"type": "fixed-rate", "opts": {"tps" : 80}}, {"type": "fixed-rate", "opts": {"tps" : 90}}],
"callback" : "benchmark/marbletest/read.js"
},
{
"label" : "transfer",
"txNumber" : [500, 500, 500, 500, 500],
"rateControl" : [{"type": "fixed-rate", "opts": {"tps" : 25}}, {"type": "fixed-rate", "opts": {"tps" : 35}}, {"type": "fixed-rate", "opts": {"tps" : 45}}, {"type": "fixed-rate", "opts": {"tps" : 55}}, {"type": "fixed-rate", "opts": {"tps" : 65}}],
"callback" : "benchmark/marbletest/transfer.js"
},
{
"label" : "query",
"txNumber" : [20, 20, 20, 20, 20],
"rateControl" : [{"type": "fixed-rate", "opts": {"tps" : 4}}, {"type": "fixed-rate", "opts": {"tps" : 6}}, {"type": "fixed-rate", "opts": {"tps" : 8}}, {"type": "fixed-rate", "opts": {"tps" : 10}}, {"type": "fixed-rate", "opts": {"tps" : 12}}],
"callback" : "benchmark/marbletest/query.js"
}]
},
"monitor": {
"type": ["docker", "process"],
"docker":{
"name": ["all"]
},
"process": [
{
"command" : "node",
"arguments" : "local-client.js",
"multiOutput" : "avg"
}
],
"interval": 1

my Environment
ubuntu 14.04(64bit)
fabric 1.1.0
nodejs 8.11.4
docker 18.06
docker-compose 1.18.0
This is my first time to ask questions and look forward to a reply.

Context

Expected Behavior

Actual Behavior

Possible Fix

Steps to Reproduce

Existing issues

Context

Your Environment

  • Version used:
  • Environment name and version (e.g. Chrome 39, node.js 5.4):
  • Operating System and version (desktop or mobile):
  • Link to your project:
@luigima
Copy link

luigima commented Oct 29, 2018

Hey, my experiance showed that caliper error messages will not help you at all. Have a look at the logs of the docker container and search for errors there. To do so type docker ps -a. If you are lucky there will be docker containers that "exited". Type docker logs org2.example.com or whatever container caused issues.

@wenshuohan
Copy link
Author

嘿,我的经验表明,卡尺错误信息根本无法帮助你。查看docker容器的日志并在那里搜索错误。这样做类型docker ps -a。如果幸运的话,会有“退出”的泊坞容器。键入docker logs org2.example.com或任何容器导致问题。

thankyou very much,when i watch the peer0.org1.example.com docker logs,I find there has a wrong:2018-10-29 13:45:58.021 UTC [couchdb] handleRequest -> WARN 004 Retrying couchdb request in 125ms. Attempt:1 Error:Get http://couchdb.peer0.org1.example.com:5984/: dial tcp 172.22.0.2:5984: getsockopt: connection refused.
may be it is the point.

@aklenik
Copy link
Contributor

aklenik commented Oct 30, 2018

@wenshuohan running many peer containers with couchDB is really resource demanding. In this case, the connection could be lost between the peer and its DB under high (or even smaller) load.
Try to spread your network among different machines and see if the error persists.

@wenshuohan
Copy link
Author

@aklenik Thankyou,I will have a try.

@houqinghui
Copy link
Contributor

houqinghui commented Nov 12, 2018

have you resolved the problem ? refer to #112
A: One solution:
a. docker-compose -f network/fabric-v11/2-org-2-peer/docker-compose.yaml up -d in another shell
b. remove "start": "docker-compose -f network/fabric-v11/2-org-2-peer/docker-compose.yaml up -d", from config.json
c. node benchmark/simple/main.js
another solution:
Execute commands under root privileges. @wenshuohan

@wenshuohan
Copy link
Author

@aklenik have you take a try about stronger machine/VM,could you tell me how can i spread the network among different machines。

@aklenik
Copy link
Contributor

aklenik commented Mar 4, 2019

@wenshuohan Any luck with your network? There is no ultimate method for deploying Fabric on multiple machines. Try to take a look at Hyperledger Cello. Or start the Fabric binaries manually on each machine.
But once your network is running, Caliper doesn't care about its location, just set the right endpoint addresses.

@aklenik aklenik added the question Further information is requested label Mar 4, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants