This release is the first to support the Hedera Consensus Service (HCS)! HCS provides decentralized consensus on the validity and order of messages submitted to a topic on the network and transparency into the history of these events over time. Since the Hedera mainnet does not store history, the persistence and retrieval of these messages needs to be handled by the mirror node.
As part of this effort, we've added a new component that provides a streaming GRPC API for topic message subscription. For additional information, see the design document and the protobuf definition. The Hedera Java SDK can be used to submit and subscribe to messages.
We've added a number of options to make it easier for users to run the mirror node. We've setup a demo bucket that is in use by default to allow users to get up and running with zero configuration. The real buckets are still private but we're looking at ways to open it up in the future. A community member (@carlcherry) added optional support for storing the raw transaction bytes in the database. We also added a property to filter transactions by entity or type so users running their own node can reduce their storage requirements.
Finally, there was a lot of effort in this release to restructure the code to ease future development. We
switched from a single Maven module to a multi-module project with six sub-modules. We also
reworked package names to reflect the new modules and upgraded to Spring Boot 2.2.
Expect the next release to be a maintenance release focused on stabilizing and optimizing HCS support.
Enhancements
- Fix importer jar name in release artifact #473
- Remove hcs from artifacts and bump to 0.5.0-beta1 #471
- Filter transactions #468
- Add a polling topic listener #456
- HCS Polling Topic Listener #455
- Log nodes that don't reach consensus #452
- Log nodes that don't reach consensus #444
- Add demo bucket as default #441
- Store transaction bytes (optional) #428
- Extract common plugin config to parent pom #423
- Rename com.hedera.mirror to com.hedera.mirror.importer #402
- Upgrade to Spring Boot 2.2 #399
- Bump to 0.4.1-SNAPSHOT #397
- HCS Filter Transactions #363
- Maven multi module #359
- Upgrade to Spring Boot 2.2 #329
- Scale testing from DB-to-front-end #282
Bug Fixes
- Fix GRPC user permissions and deploy script #474
- Fix CircleCI tag format #472
- Fix Monitor Error Handling for long running tests #467
- Fix default results success value. Also ensure single failure is pick… #463
- Fix NoSuchMethodError parsing HCS transactions #460
- HCS NoSuchMethodError #459
- Missing HCS messages in previewnet mirror node #451
- Adopt insert instead of update for v1.16 db migration. Avoids temp_fi… #449
- Fix deploy script bug. Update version to 0.5.0-rc1 #447
- Bug/exp overflow master #419
- Add missing response codes #418
- Fixed failing acceptance tests that missed an update for the improved… #407
- Fix flyway migration order after 0.4.1 #406
- /transactions query is slow on mainnet with account.id range #288
Documentation
Contributors
We'd like to thank all the contributors who worked on this release!