iroha::consensus::yac::SupermajorityChecker interface now has two implementations: a BFT and a CFT checker. Besides that all the signature-related logic was put away from that interface, and it now operates solely on numbers.
Set to BFT by default.
Now if the synchroniser is waiting for the block for too long, it will break the connection. Also, if the block is failed to be checked, further blocks will not be received from that peer.
HL Iroha team is happy to present the new Release Candidate. Here are some changes that we implemented in this release:
Pluggable Consensus: https://github.com/hyperledger/iroha/pull/2125
iroha::consensus::yac::SupermajorityChecker interface now has two implementations: a BFT and a CFT checker. Besides that all the signature-related logic was put away from that interface, and it now operates solely on numbers. Set to BFT by default.
New logger! https://github.com/hyperledger/iroha/pull/2126
Read more here: https://iroha.readthedocs.io/en/latest/guides/configuration.html#logging
Markdown to RST docs configuration: https://github.com/hyperledger/iroha/pull/2146
Now Markdown files from the repository can be referenced in the ReadTheDocs documentation! We also improved build documentation: https://github.com/hyperledger/iroha/pull/2162
Updated ed25519 cryptography to 2.0.1: https://github.com/hyperledger/iroha/pull/2157
YAC storage cleanup: https://github.com/hyperledger/iroha/pull/1947
Old rounds are now cleaned up and that improves stability StorageImpl: faster cleanup: https://github.com/hyperledger/iroha/pull/2174
Added installation security tips to documentation
So you could make sure you use Iroha securely: https://github.com/hyperledger/iroha/pull/2129
Updated configuration template for docker deployment: https://github.com/hyperledger/iroha/pull/2158
and added documentation for new parameters: https://github.com/hyperledger/iroha/pull/2173
Storage now only notifies subscribers of newly committed blocks after they have been actually applied to the ledger: https://github.com/hyperledger/iroha/pull/2179
Before, notification could be sent prior to actual commit which is not considered as correct behaviour.
Synchroniser subscription update: https://github.com/hyperledger/iroha/pull/2160
Now if the synchroniser is waiting for the block for too long, it will break the connection. Also, if the block is failed to be checked, further blocks will not be received from that peer.
Debug deb packages support: https://github.com/hyperledger/iroha/pull/2144
Decrease quantity of allocated proto query objects: https://github.com/hyperledger/iroha/pull/2148
Another improvement reducing memory consumption
Now Iroha version is available through --version argument and in log pattern: https://github.com/hyperledger/iroha/pull/2127
Added different Cmake sanitizers: https://github.com/hyperledger/iroha/pull/2131
Added a fix for direct propagation in YAC. If a peer sends a vote for the old round, Iroha will share last finalized state: https://github.com/hyperledger/iroha/pull/2139
Refactored ordering service queues: https://github.com/hyperledger/iroha/pull/2150
Got rid of consensus race by changing round queue management: https://github.com/hyperledger/iroha/pull/2151
Fixed race bug in command service: https://github.com/hyperledger/iroha/pull/2167
Made YAC accept votes only from peers that it knows: https://github.com/hyperledger/iroha/pull/2134
Created block storage dependency for mutable storage: https://github.com/hyperledger/iroha/pull/1994
Added fix for status stream initialization: https://github.com/hyperledger/iroha/pull/2169
If runtime cache doesn't contain any value we are going to check the persistent cache for the value.
Fixed hash set usage in OS. Fixed block leaks in YacGate and Simulator: https://github.com/hyperledger/iroha/pull/2170
Made most block manipulation functions of storage take constant blocks by shared pointer: https://github.com/hyperledger/iroha/pull/2178
Added implementation of
BlockStorage
interface based onFlatFile
: https://github.com/hyperledger/iroha/pull/2180