In the last release, we began keeping track of the current balance of every account and contract instead of solely relying upon the balance file written every 15 minutes by consensus nodes. In this release, we now show this up-to-date balance on the /api/v1/accounts
and /api/v1/accounts/{id}
REST APIs in the existing balance
field. Token balances and the balances REST API still shows the balance information from the 15 minute balance file. In a future release, we'll look at changing those to track the current balance.
As part of HIP-406, it details a pending reward calculation that can be used to estimate the reward payout between your last payout event and the staking period that just ended. The mirror node now does a similar calculation daily and will in a future release show this pending reward amount on the REST API.
The reconciliation job periodically runs and reconciles the balance files with the crypto transfers that occurred in the record files. This job allowed us to catch an issue with missing transactions for FAIL_INVALID
crypto transfers that was fixed in hedera-services v0.27.7
. This release contains the errata for the missing transactions that allows reconciliation to proceed successfully once again. It also saw performance improvements including a delay
property to throttle its speed and added job status persistence so it doesn't restart from the beginning every time. A new remediationStrategy
property provides a mechanism to continue after failure to aid in debugging multiple reconciliation errors.
There were a ton of other functionality and performance fixes that went in this release. See the detailed changelog below:
Enhancements
- Optimize contract state change migration performance #4365
- Add reconciliation remediation strategy and job table #4358
- add CallOperationType field to ContractAction #4352
- Add CallOperationType to ContractAction #4345
- Contract state changes migration performance #4340
- Allow customization of the monitor ports #4339
- Allow customization of the monitor ports #4338
- HIP 406 pending reward persistence #4334
- Simplify upsert metrics #4333
- Simplify upsert metrics #4332
- Add transaction data to contract result #4310
- Update unreleased supply accounts #4304
- Adjust unreleased supply accounts #4303
- Change accounts REST API to use current balance #4292
- Reconciliation job halts on first error #4262
- Add transaction data to contract result #4217
- HIP-406 Pending Reward Persistence #4130
- Change accounts REST API to use current balance #4057
Bug Fixes
- Fix mainnet-public monitor alerts (0.64) #4421
- Fix materialized view entity_state_start owner (0.64) #4403
- Fix slow search block by hash query in rosetta (0.64) #4397
- Mark contract_action.call_operation_type as nullable (0.64) #4395
- Fix OpenAPI for topic message by timestamp #4357
- Swagger Issue #4351
- Fix importer performance regression caused by transaction hash index #4343
- Importer performance degraded during long duration 10K tps testing #4341
- Revert changes to blockServiceSuite.TestBlockWithAccountAlias #4335
- Remove empty operator values in helm tests #4319
- Cleanup duplicate entities in testnet #4315
- Duplicate key violation running V1.64.2__merge_contract_entity.sql #4314
- Rosetta test sometimes fails due to data race #4313
- Fix importer performance regression #4309
- Importer unable to ingest record files in 2s at 10K TPS #4308
- Fix error when there is no network stake in db #4302
- Network stake REST API fails with 500 #4301
- Fix monitor not handling REST API connection failures on startup #4295
- Monitor not recovering after connection failures #4294
Dependency Upgrades
- Bump mathjs from 11.0.1 to 11.1.0 in /hedera-mirror-rest #4384
- Bump pg from 8.7.3 to 8.8.0 in /hedera-mirror-rest #4383
- Bump eslint-plugin-jest from 26.8.7 to 27.0.1 in /hedera-mirror-rest #4382
- Bump jest from 28.1.3 to 29.0.1 in /hedera-mirror-rest/check-state-proof #4379
- Bump grpc.version from 1.48.1 to 1.49.0 #4378
- Bump mathjs from 11.0.1 to 11.1.0 in /hedera-mirror-rest/monitoring/monitor_apis #4377
- Bump jest from 28.1.3 to 29.0.1 in /hedera-mirror-rest/monitoring/monitor_apis #4376
- Bump prom-client from 14.0.1 to 14.1.0 in /hedera-mirror-rest #4375
- Bump aws-sdk from 2.1199.0 to 2.1204.0 in /hedera-mirror-rest #4374
- Bump evm from 22.7.0 to 22.7.1 #4373
- Bump github.com/Code-Hex/go-generics-cache from 1.0.1 to 1.1.0 in /hedera-mirror-rosetta #4372
- Bump software.amazon.awssdk:bom from 2.17.257 to 2.17.261 #4371
- Bump github.com/ethereum/go-ethereum from 1.10.21 to 1.10.23 in /hedera-mirror-rosetta #4370
- Bump jest-circus from 28.1.3 to 29.0.1 in /hedera-mirror-rest #4369
- Bump embedded.testcontainers.version from 2.2.5 to 2.2.6 #4368
- Bump jest-junit from 14.0.0 to 14.0.1 in /hedera-mirror-rest #4367
- Bump jest from 28.1.3 to 29.0.1 in /hedera-mirror-rest #4366
- Bump sdk from 2.17.1 to 2.17.2 #4331
- Bump hedera-protobuf-java-api from 0.29.0-full-SNAPSHOT to 0.29.1 #4330
- Bump springdoc-openapi-webflux-ui from 1.6.9 to 1.6.11 #4329
- Bump gorm.io/driver/postgres from 1.3.8 to 1.3.9 in /hedera-mirror-rosetta #4328
- Bump dependency-check-maven from 7.1.1 to 7.1.2 #4327
- Bump software.amazon.awssdk:bom from 2.17.252 to 2.17.257 #4326
- Bump spring-boot-starter-parent from 2.7.2 to 2.7.3 #4325
- Bump hibernate-types-52 from 2.17.3 to 2.18.0 #4324
- Bump app-root-path from 3.0.0 to 3.1.0 in /hedera-mirror-rest #4323
- Bump aws-sdk from 2.1194.0 to 2.1199.0 in /hedera-mirror-rest #4322
- Bump eslint-plugin-jest from 26.8.2 to 26.8.7 in /hedera-mirror-rest #4321
- Bump GitHub Action versions #4320
Contributors
We'd like to thank all the contributors who worked on this release!