github hashgraph/hedera-mirror-node v0.65.0

latest releases: v0.123.0-rc2, v0.123.0-rc1, v0.122.0...
2 years ago

The mirror node now calculates consensus using the staking weight of all the nodes as outlined in HIP-406. If staking is not yet activated, it falls back to the previous behavior of counting each node as 1/N weight where N is the number of consensus nodes running on the network. The /api/v1/accounts and /api/v1/accounts/{id}REST APIs now expose a pending_reward field that provides an estimate of the staking reward payout in tinybars as of the last staking period. The /api/v1/network/supply REST API updated its configured list of unreleased supply accounts to accurately reflect the separation of accounts done for staking purposes by Hedera.

This release implements the contract actions REST API detailed in HIP-513. An example of an actions payload is shown below. We added transaction_hash, transaction_index, block_hash and block_number fields to the contract logs REST APIs. This work was done to optimize the performance for the eth_getLogs JSON-RPC method used by the relay. Also for the relay, we now support lookup of non-Ethereum contract results by its 32 byte transaction hash.

GET /api/v1/contracts/results/0.0.5001-1676540001-234390005/actions

{
  "actions": [{
    "call_depth": 1,
    "call_type": "CALL",
    "call_operation_type": "CALL",
    "caller": "0.0.5001",
    "caller_type": "CONTRACT",
    "from": "0x0000000000000000000000000000000000001389",
    "timestamp": "1676540001.234390005",
    "gas": 1000,
    "gas_used": 900,
    "index": 1,
    "input": "0xabcd",
    "to": "0x70f2b2914a2a4b783faefb75f459a580616fcb5e",
    "recipient": "0.0.8001",
    "recipient_type": "CONTRACT",
    "result_data": "0x1234",
    "result_data_type": "OUTPUT",
    "value": 100
  }],
  "links": {
    "next": null
  }
}

To support mirror node explorers being able to display the transaction that created an entity, we added a created_timestamp field to the accounts REST API.

The Rosetta module saw a large number of improvements this release. Rosetta now supports a transaction memo be returned in its metadata response. To improve performance of large blocks, Rosetta now limits the number of transactions in its block response. The importer balance reconciliation job was disabled in the Rosetta Docker image since Rosetta performs its own reconciliation process. There were other various fixes to the reconciliation process balance offset, charts testing failing for PRs from forked repos, and fixing a slow search block by hash query in rosetta.

Enhancements

  • Rosetta support transaction memo (0.65) #4577
  • Rosetta limit the number of transactions in block response (0.65) #4574
  • HIP-406 Pending Reward REST API #4461
  • Remove JVM option causing ingestion issue in containerized env #4440
  • Add transaction and block data to ContractLogs REST API #4439
  • Add an index on contract_result.hash #4437
  • Disable balance reconciliation job in rosetta docker image #4429
  • Disable balance reconciliation job in rosetta docker image #4428
  • Add created_timestamp to accounts REST api reponse #4427
  • Transaction by hash REST api #4425
  • Add transaction hash table for transaction hash to consensus timestamp mapping #4424
  • Transaction hash to consensus timestamp mapping short term solution #4423
  • Search transaction by hash REST API #4361
  • Optimize contract logs API for relay #4360
  • Contract actions REST API #4356
  • 10K TPS HCS performance on Kubernetes #4350
  • Add Node Stake Consensus #4344
  • Add created_timestamp to /api/v1/accounts REST API #4299
  • HIP-513 Contract actions REST API #4201
  • HIP-406 Pending Reward REST API #3912
  • HIP-406 Calculate consensus using staking weight #3793

Bug Fixes

  • Change Rosetta reconciliation to use hardcoded balance offset (0.65) #4560
  • Upgrade to use the v3 codecov github action for github workflows. (#4#4559
  • Update list of unreleased supply accounts (0.65) #4556
  • Fix downloader thread blocked (0.65) #4535
  • Allow ContractAction recipient not set (0.65) #4530
  • Fix some issues in contract result by transaction id or hash REST api #4511
  • Issues in get contract results by transaction id / hash REST API #4510
  • Fix JS monitor false alert #4506
  • JS monitor false alert on number of successful transactions returned by REST API #4505
  • Fix null hash on contract results in REST API #4483
  • Improve pending reward calculation #4481
  • Refreshing entity_state_start times out the db transaction in testnet #4480
  • Fix column transaction_hash of relation contract_result contains null… #4470
  • V1.65.4 migration fails #4469
  • Fix monitor onErrorDropped no valid nodes #4457
  • Monitor onErrorDropped when no valid nodes available #4456
  • Null hash on contract results #4436
  • Add a retry middleware to reduce 502 errors #4422
  • Update Signature Count Consensus Calculation #4420
  • Incorrect Node stake fallback consensus calculation, caching and debug logging #4418
  • 502 bad gateway errors on pod restart #4417
  • Fix mainnet-public monitor alerts #4405
  • Fix materialized view entity_state_start owner #4400
  • Importer fails to refresh materialized view entity_state_start #4399
  • Fix slow search block by hash query in rosetta #4396
  • Mark contract_action.call_operation_type as nullable #4394
  • Rosetta block API times out #4393
  • Rosetta charts testing fails for PRs from forked repos #4390
  • Fix rosetta chart testing failure in PR from forked repos #4387
  • Periodic mainnet-public slack alerts #4342
  • Hedera transaction not found by eth hash #4175

Documentation

  • Fix some minor documentation bugs #4435
  • Typo in the REST API doc for BlocksResponse #4406
  • Slightly misleading REST API doc #4404
  • Rosetta ReadMe incomplete sentence #3483

Dependency Upgrades

  • Bump dependency-check-maven from 7.1.2 to 7.2.0 #4490
  • Bump cucumber.version from 7.7.0 to 7.8.0 #4488
  • Bump embedded.testcontainers.version from 2.2.6 to 2.2.8 #4487
  • Bump openapi-generator-maven-plugin from 6.0.1 to 6.1.0 #4460
  • Bump hibernate-types-55 from 2.18.0 to 2.19.2 #4459
  • Bump Java from 17.0.3_7 to 17.0.4.1_1 #4458
  • Bump jest from 29.0.2 to 29.0.3 in /hedera-mirror-rest/check-state-proof #4455
  • Bump jest from 29.0.2 to 29.0.3 in /hedera-mirror-rest/monitoring/monitor_apis #4454
  • Bump jest-circus from 29.0.2 to 29.0.3 in /hedera-mirror-rest #4453
  • Bump jest from 29.0.2 to 29.0.3 in /hedera-mirror-rest #4452
  • Bump github.com/lib/pq from 1.10.6 to 1.10.7 in /hedera-mirror-rosetta #4451
  • Bump github.com/spf13/viper from 1.12.0 to 1.13.0 in /hedera-mirror-rosetta #4450
  • Bump github.com/coinbase/rosetta-sdk-go from 0.7.11 to 0.8.0 in /hedera-mirror-rosetta #4449
  • Bump eslint-plugin-jest from 27.0.1 to 27.0.4 in /hedera-mirror-rest #4448
  • Bump aws-sdk from 2.1209.0 to 2.1213.0 in /hedera-mirror-rest #4447
  • Bump evm from 22.7.1 to 22.7.2 #4446
  • Bump software.amazon.awssdk:bom from 2.17.267 to 2.17.271 #4445
  • Bump testcontainers from 8.13.1 to 8.13.2 in /hedera-mirror-rest #4444
  • Bump cucumber.version from 7.6.0 to 7.7.0 #4442
  • Bump jest-extended from 3.0.2 to 3.1.0 in /hedera-mirror-rest #4419
  • Bump jest from 29.0.1 to 29.0.2 in /hedera-mirror-rest/check-state-proof #4416
  • Bump github.com/hashgraph/hedera-sdk-go/v2 from 2.17.1 to 2.17.2 in /hedera-mirror-rosetta #4415
  • Bump aws-sdk from 2.1204.0 to 2.1209.0 in /hedera-mirror-rest #4413
  • Bump testcontainers from 8.12.0 to 8.13.1 in /hedera-mirror-rest #4412
  • Bump jest from 29.0.1 to 29.0.2 in /hedera-mirror-rest/monitoring/monitor_apis #4411
  • Bump jest from 29.0.1 to 29.0.2 in /hedera-mirror-rest #4410
  • Bump software.amazon.awssdk:bom from 2.17.261 to 2.17.267 #4409
  • Bump sdk from 2.17.2 to 2.17.3 #4408
  • Bump @godaddy/terminus from 4.11.1 to 4.11.2 in /hedera-mirror-rest #4407
  • Bump versions for v0.65.0-SNAPSHOT #4389

Contributors

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

Don't miss a new hedera-mirror-node release

NewReleases is sending notifications on new releases.