Skip to content

Releases: hashgraph/hedera-mirror-node

v0.7.0

13 Mar 19:29
a2a7e23
Compare
Choose a tag to compare

0.7.0 focuses on refactoring the record file parsing to decouple the parsing from the persisting of data. This refactoring is laying the groundwork for additional performance improvements and allowing additional downstream components to register for notification of the transactions.

Enhancements

  • Bump to version 0.7.0 #599
  • REST Integration tests improvements 1 #590
  • Slight performance and acceptance test improvements and corrections #588
  • Move file handling logic from RecordItemParser to RecordFileParser #585
  • JUnit parser performance tests for 1k tps record files #582
  • Rename RecordFileLogger to RecordItemParser #581
  • Make RecordFileLogger implementation of RecordItemListener #580
  • Prepare RecordFileParser for file init/complete logic. #579
  • Postgres Writer #3 : Move transaction and batching #578
  • Use RecordItem in tests #577
  • Postgres Writer #2 #576
  • Postgres Writer #1 : move ctl and non-fee transfers #575
  • Rename RecordFileLogger to RecordItemParser #567
  • [parser refactor] Split PostgresWritingRecordParsedItemHandler out of RecordFileLogger #566
  • Add Parser interfaces and domains. #565
  • [Parser refactor] Add interfaces and domains #564
  • Parser performance tests #559
  • Parser re-design #553

Bug Fixes

  • Fix check topic exists flag #593
  • Check topic exists flag doesn't work #592
  • Fix subscribe topic with end time not completing #543
  • Subscribe topic with end time not completing #535

Contributors

We'd like to thank all the contributors who worked on this release!

v0.6.0

28 Feb 16:30
042818d
Compare
Choose a tag to compare

This release was mainly focused on enhancing the stability and performance of the mirror node. We improved the transaction ingestion speed from 600 to about 4000 transactions per second. At the same time, we greatly improved the resiliency and performance of the GRPC module. We also added acceptance tests to test out HCS end to end.

Breaking Change

Please note that one potentially breaking change in this release is to reject subscriptions to topics that don't exist. This avoids the server having to poll repeatedly until it is created and taking up resources for a topic that may never exist. It is expected that clients or the SDK will poll periodically after creating a topic until that topic makes its way to the mirror node. This functionality is hidden behind a feature flag but will slowly be rolled out over the next month.

Enhancements

  • Bump version to v0.6.0 #574
  • Bump version to 0.6.0-rc1 #555
  • Split historical and incoming message retrieval #551
  • Split historical and incoming message retrieval #542
  • Reject subscriptions to topics that don't exist #541
  • Add non_fee_transfers table. #534
  • Acceptance test improvements to support subscribe and publish only scenarios #532
  • Monitor script/service to bounce hedera-mirror-grpc when it gets stuck. #528
  • GRPC Pinger #527
  • Optionally break out fees explicitly in the rest-api results. #516
  • End to End HCS Test #497

Bug Fixes

  • Fix shared poller's buffer #556
  • Specify Bounded Executor for NettyServerBuilder #552
  • RecordFileLogger performing far too many queries against t_entities #550
  • RecordFileLogger performing far too many queries against t_entities. #547
  • Set additional netty properties and memory limits #545
  • Set maxConcurrentCallsPerConnection to prevent excessive calls #540
  • Implement query throttling on grpc connections #536
  • Fix limit set logic and use test start time instead of fixed time #526
  • Handle start and end time arithmetic overflow cases on topic subscribe #523
  • HCS GRPC Server throwing ArithmeticException: long overflow errors #521
  • Record Parser unable to keep up #512
  • Reject subscriptions to topics that don't exist #498

Contributors

We'd like to thank all the contributors who worked on this release!

v0.6.0-rc1

25 Feb 15:53
bdb6cb2
Compare
Choose a tag to compare
v0.6.0-rc1 Pre-release
Pre-release
Fix shared poller's buffer (#556)

Signed-off-by: Steven Sheehy <[email protected]>

v0.5.5

14 Feb 06:06
78852d2
Compare
Choose a tag to compare

Bug Fixes

  • Fix subscribeTopic with end time in the past not retrieving more than page size #531
  • Fix clients occasionally stalling under heavy load

Contributors

We'd like to thank all the contributors who worked on this release!

v0.5.4

06 Feb 04:51
a08c192
Compare
Choose a tag to compare

Enhancements

  • Publish official Docker images to GCR #513
  • Publish official Docker images #335

Bug Fixes

  • Fix GRPC high CPU usage and long running queries #524
  • Fix database table metrics #519

Contributors

We'd like to thank all the contributors who worked on this release!

v0.5.3

31 Jan 16:01
b989cdc
Compare
Choose a tag to compare

Another bug fix release on our march to the public release of HCS. This release contains a number of stability improvements. We've also added health check and info endpoints to the GRPC and importer modules to aid in day two operations. The GRPC module also adds a new type of topic listener with the introduction of the shared poller. This is disabled by default for now, but should scale better as more users start using the service.

Enhancements

  • Release v0.5.3 #517
  • Add a shared poller #515
  • Add /health and /info endpoints to grpc and importer #514
  • Shared polling topic listener #496
  • GRPC health check #476

Bug Fixes

  • Improve handling of HCS missing messages #508
  • Fix S3 not connecting to specific region endpoint #507
  • Unable to download from new bucket temporarily #506
  • Subscribe topic queries for invalid missing message sequence #505
  • Fix monitor API returning invalid JSON when REST API down #503
  • Monitor returns invalid response when REST API down #499
  • gRPC Consensus Service Repository Query Stuck in Idle State #491

Contributors

We'd like to thank all the contributors who worked on this release!

v0.5.2

21 Jan 15:36
ca2aba6
Compare
Choose a tag to compare

Enhancements

  • Load testing - HCS GRPC API #422
  • Implemented perf module utilizing jmeter to run multi thread GRPC load test #477

Bug Fixes

  • Fix parsing ConsensusCreateTopic with existing autorenew account #502
  • PersistentObjectException when parsing ConsensusCreateTopic with existing autorenew account #501

Contributors

We'd like to thank all the contributors who worked on this release!

v0.5.1

14 Jan 17:20
dc6cfe1
Compare
Choose a tag to compare

This release includes further bug fixes and polishing around HCS. In the near future, this release will make its way to testnet where people can try out all the new HCS functionality.

One enhancement in this release worth calling out is the change to how the mirror node verifies mainnet consensus. Previously it would wait for greater than two thirds of all signatures to be downloaded and verified using the node's public keys before storing transactions. With the change in #415, it now only needs to wait for at least one third of all signatures. Additionally, we've changed the address book to include the three additional nodes (for a total of 13) that have been participating in consensus, but whose IPs have not been made public to the world yet. Both of these changes ensure that the mirror node accurately verifies consensus.

Next release will be another bug fix release for HCS.

Enhancements

  • Release v0.5.1 #494
  • Final protobuf & bump to v0.5.1-rc1 #492
  • Final HCS protobuf #490
  • Change to at least 1/3 consensus and 13 node address book #489
  • Elasticsearch Metrics #488
  • HCS proto changes #482
  • Update handling for CreateTopic/UpdatedTopic for HCS-0.2 #440
  • Download and validate signatures for at least 1/3 of nodes rather than greater than 2/3. #415

Bug Fixes

  • Fix entities duplicate key violation #484
  • Duplicate Key Violation on entities #483

Contributors

We'd like to thank all the contributors who worked on this release!

v0.5.0

02 Jan 16:54
5383197
Compare
Choose a tag to compare

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

  • Update log message alerting rules #443
  • Update log message alerting rules #434

Contributors

We'd like to thank all the contributors who worked on this release!

v0.4.1-rc1

27 Nov 21:26
Compare
Choose a tag to compare
v0.4.1-rc1 Pre-release
Pre-release
Number overflow halting parser on crypto/file/contract update (#409)

* Fix #386 number overflow converting from (long sec, int nanos) to long nanos_timestamp affecting entity (crypto account, file, contract) updates.

Signed-off-by: Mike Burrage <[email protected]>

* Address review feedback

Signed-off-by: Steven Sheehy <[email protected]>

* Add test for create entity with expiration flow

Signed-off-by: Steven Sheehy <[email protected]>

* Added rest api integration test to verify min and max set for account expiration time

Signed-off-by: Nana-EC <[email protected]>

* Removed unnecessary tests

Signed-off-by: Nana-EC <[email protected]>