Fix BlockChain<T>.Append() to disallow block with too many txs #1104
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In the commit 1d35777, we added
IBlockPolicy<T>.MaxTransactionsPerBlock
property, but it had only functioned as a default value forBlockChain<T>.MineBlock()
method'smaxTransactions
option. This had misled and been unintended, becauseBlockChain<T>.Append()
still had accept blocks violating its policy (Block<T>
having moreTransactions
than the number a policy allows still can be made withBlock<T>.Mine()
method).Although this adds
BlockExceedingTransactionsException
class, since it would be released as a patch release, it's notpublic
yet. We should make itpublic
when it's ported to the upstream main (next major/minor release).