0

I am benchmarking Sawtooth using Hyperledger Caliper. My network has 4 nodes and following configurations:

  1. total transactions =4000

  2. transactions/batch = 50

  3. supply rate of transactions = 4000 transactions/sec

  4. no. of clients = 1

  5. type = smallbank

  6. Consensus = PBFT

See the number of batches per block in this image: block list

Initially, the number of batches per block increases then decreases and then stays constant at 1 batch/block. This behavior is affecting my benchmarking results. Any idea why this is happening? I changed the block_publishing_delay to: sawtooth.consensus.pbft.block_publishing_delay=0 , and sawtooth.publisher.max_batches_per_block=1200. How can I allow more batches per block? Please explain why there is only 1 batch/block for the later batches?

flarkmarup
  • 5,129
  • 3
  • 24
  • 25
kkp_1310
  • 1
  • 1

1 Answers1

0

You set the delay to 0 ms and wonder why block publishing is not delayed?

The default delay is 100 0ms. Try using the default or a higher value.

Also, the maximum batches per block is the maximum, not the minimum.

You can also ask at https://chat.hyperledger.org/channel/sawtooth

Dan Anderson
  • 2,265
  • 1
  • 9
  • 20
  • I tried this Dan, not only 1000 but also 2000 and 5000 but no change. Even sometime there is no block with more that 1 batch in it.Any other thing to try? And thanks for your response. – kkp_1310 Jul 03 '19 at 16:39
  • Strange. Try the Rocketchat forum for Hyperledger. Try #sawtooth and #sawtooth-consensus-dev There has been much recent development for pbft, so you might want to try the development version vs. the stable version. – Dan Anderson Jul 03 '19 at 18:48
  • I found something really strange.I ran it for total 200 txns, 25 txns per batch.While reading the logs, the following statements caught my eye - "Removed 6 incomplete batches from the schedule", "Removed 5 incomplete batches from the schedule", "Removed 4 incomplete batches from the schedule", "Removed 3 incomplete batches from the schedule",.. and so on.This is the reason why only one batch was included in a block. What can I do? – kkp_1310 Jul 04 '19 at 15:43