ooibc88 / blockbench

BLOCKBENCH: A Framework for Analyzing Private Blockchains. Blockbench contains workloads for measuring the data processing performance, and workloads for understanding the performance of different layers of Blockchain systems.
https://www.comp.nus.edu.sg/~dbsystem/fabricsharp/#/blockbench
Apache License 2.0
391 stars 174 forks source link

DoNothing benchmark on Hyperledger Fabric #61

Open georgeathas opened 5 years ago

georgeathas commented 5 years ago

I have installed Hyperledger Fabric and I have created a lot of networks with the solo ordering service, Kafka ordering service and even State Machine Replication ordering service(and soon RAFT ordering service). So I want to test these consensus algorithms and to do this I want to use Blockcench and especially the DoNothing experiment.

I installed everything and then I went in /src/macro/kvstore and I compiled the code using the Makefile and the result was a driver executable. Looking at the usage example, using this executable driver I can spawn a client to send transactions to the already correctly established Fabric Network(made a lot of queries myself by typing them the usual way).

But, when I type ./driver -db hyperledger -threads 1 -P workloads/workloada.spec -txrate 5 -endpoint localhost:7050/chaincode -wl donothing to start sending transactions and test the network to see the transaction per rate, it results in this : terminate called after throwing an instance of 'std::invalid argument' what(): stoi Aborted (core dumped)

Any help of what to do?

haochenpan commented 5 years ago

Could you provide some Hyperledger logs & client logs?

georgeathas commented 5 years ago

First of all, do I have to do anything in the benchmark folder ? I only got blockbench and then I went straight to src directory and used make in the kvstore directory to get donothing available. I ask this to see if I have understood correctly the whole thing. First create the network and install and instantiate the chaincode(all good until here, transactions are all OK using the default chaincode of fabric) and then bring a client with blockbench to send transactions.

P.S. I will upload logs as soon as I can and dig to it more, but I want to be sure first that the steps I have done are correct

haochenpan commented 5 years ago

you need to run install.sh in the benchmark/hyperledger folder to install Hyperledger. I am afraid that they did not mention it very clearly.