Skip to content

v0.32.0

Compare
Choose a tag to compare
@steven-sheehy steven-sheehy released this 28 Apr 21:20
7677219

This release we took the time to do some performance optimizations of both the importer and the monitor. If you're using a containerized mirror node, the Java applications now uses more of the available memory that's already been allocated to it. We optimized the size of some internal queues to reduce the likelihood of out of memory errors. And we now use a more efficient streaming method to write entities to the database to avoid large memory allocations. All these combine to greatly reduce memory usage and improve overall performance for the importer. The monitor also saw performance improvements to allow it to publish transactions at a rate of 10,000 TPS.

This release updates more of our system to handle the revised scheduled transaction design that will be available soon on mainnet. Both the acceptance tests and monitor were updated to be able to publish the new transactions.

We now expose the raw transaction bytes encoded in Base64 format in the REST API. Persisting the bytes of the Transaction protobuf in the database is an option that's been available for awhile but until now has not been available via the API. Persisting the data is off by default as does increase the size of the database quite a bit. The Hedera managed mirror nodes will not have that functionality turned on to reduce storage.

Enhancements

  • Bump versions for v0.32.0 #1902
  • Bump versions for v0.32.0-rc1 #1867
  • Optimize resources for kubernetes deployment #1853
  • Add cloud storage metrics #1848
  • Updated scheduled tests #1846
  • Expose transaction bytes in REST API #1823
  • Update scheduled transaction acceptance tests #1822
  • Updated scheduled transactions support in monitor #1821
  • Expose transaction bytes via REST API #1812

Bug Fixes

  • Fix deadlock due to not cleaning up PostgreSQL CopyIn when error #1894
  • Record parsing deadlock #1891
  • vacuum error in k8s with timescaledb #1849
  • Importer in GKE OOM in catch-up mode #1830
  • Fix dashboards and alerts #1827
  • fix test failure caused by timing precision #1826
  • Autovacuum crypto_transfer, token_transfer, and transaction #1825
  • CompositeTransactionGeneratorTest.scenariosDurationAfterBothFinish fails #1819
  • Improve monitor performance #1816
  • Monitor with SDK v2 performs much worse under high TPS #1814
  • Querying REST api accounts endpoint for 0.0.9 times out in production environment #1780

Dependency Upgrades

  • Bump js-yaml from 4.0.0 to 4.1.0 in /hedera-mirror-rest #1861
  • Bump eslint-plugin-prettier from 3.3.1 to 3.4.0 in /hedera-mirror-rest #1860
  • Bump pg from 8.5.1 to 8.6.0 in /hedera-mirror-rest #1858
  • Bump aws-sdk from 2.879.0 to 2.888.0 in /hedera-mirror-rest #1857
  • Bump mathjs from 9.3.0 to 9.3.2 in /hedera-mirror-rest/monitoring/monitor_apis #1856
  • Bump mathjs from 9.3.0 to 9.3.2 in /hedera-mirror-rest #1855
  • Bump boxen from 5.0.0 to 5.0.1 in /hedera-mirror-rest/check-state-proof #1841
  • Bump grpc.version from 1.36.1 to 1.37.0 #1839
  • Bump protobuf-java from 3.15.7 to 3.15.8 #1838
  • Bump eslint-plugin-jest from 24.3.4 to 24.3.5 in /hedera-mirror-rest #1835
  • Bump @hashgraph/proto from 1.0.23 to 1.0.24 in /hedera-mirror-rest #1834
  • Bump husky from 5.2.0 to 6.0.0 in /hedera-mirror-rest #1799

Contributors

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