Why do the Blocks keep on adding when no transactions are performed?

+10 votes
Hi, as per title, its more of a adjust-my-concept question. After performing the demo provided, I don't understand why the blocks keep on being extended even when there are no activities. I was under the assumption they only get appended with new blocks when there are new transactions/exchanges to propose.

Thank you for reading :) Looking forward to the answer!
asked Oct 7, 2016 by anonymous

2 Answers

+3 votes

For now this is how MultiChain works, where blocks are added at a rate determined by the target-block-time parameter, even if they contain no new transactions. The underlying reason is that the block count acts as a kind of global timer, for example for permissions which start and end at certain block numbers. But we're considering adding an option in future to allow chains to pause mining if there are no new transactions.

answered Oct 7, 2016 by MultiChain
+1 vote

Version 1.0 alpha 28 of MultiChain adds a mine-empty-rounds parameter which controls how long mining goes on for, after there are no new transactions: http://www.multichain.com/developers/blockchain-parameters/

answered Feb 17, 2017 by MultiChain
What considerations are there against setting this to 0?
You have no security for the most recent block, because nobody has confirmed it beyond the single validator that built that block. This makes it easy to reverse.