github hashgraph/hedera-mirror-node v0.47.0

latest releases: v0.117.1, v0.118.0-rc1, v0.116.1...
2 years ago

This release continues the focus on Smart Contracts 2.0. The mirror node is useful for debugging a smart contract execution and our focus has been on providing APIs to make developers' lives easier. To that end, we added support for transaction ID nonce, a new contract logs REST API, and a new web3 API component.

The new Web3 API module provides an implementation of existing JSON-RPC APIs for the Hedera network. JSON-RPC API is a widely used standard for interacting with distributed ledgers. The aim in providing a Hedera implementation of these APIs is to ease the migration of existing dApps to Hedera and simplify the developer on-ramp. Currently, the Web3 module only provides a partial implementation of the Ethereum JSON-RPC API. Specifically, only the eth_blockNumber method has been implemented in this release as we focused on putting the groundwork in place first.

As part of HIP-32 and HIP-206 a nonce field was added to the TransactionID protobuf to guarantee uniqueness for platform generated transactions. This nonce field was added to any REST API that returns transaction data. A nonce query parameter was added to /api/v1/transactions/:transactionId, /api/v1/transactions/:transactionId/stateproof, and /api/v1/contracts/results/:transactionId to be able to distinguish between a user-submitted transaction and an internal transaction generated as a result of that transaction. Note that /api/v1/transactions/:transactionId without a nonce parameter will default to returning all transactions regardless of nonce while the other APIs will default nonce to 0.

The new /api/v1/contracts/{id}/results/logs REST API provides a search API to query for logs across contract executions for a particular contract. Searching by consensus timestamp and topics is supported. Note that for performance reasons it doesn't currently support pagination and requires a timestamp or timestamp range be provided to search by topic.

GET /api/v1/contracts/0.0.4660/results/logs

{
  "logs": [
    {
      "address": "0x0000000000000000000000000000000000001234",
      "contract_id": "0.0.4660",
      "data": "0x8f705727c88764031b98fc32c314f8f9e463fb62",
      "index": 0,
      "root_contract_id": "0.0.1",
      "timestamp": "12345.10002",
      "topics": [
        "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
        "0x59d088293f09d5119d5b55858b989ffce4d398dc"
      ]
    },
    {
      "address": "0x0000000000000000000000000000000000001234",
      "contract_id": "0.0.4660",
      "bloom": "0x8f705727c88764031b98fc32c314f8f9e463fb62",
      "data": "0x1513001083c899b1996ec7fa33621e2c340203f0",
      "index": 1,
      "root_contract_id": "0.0.2",
      "timestamp": "12345.10002",
      "topics": [
        "af846d22986843e3d25981b94ce181adc556b334ccfdd8225762d7f709841df0",
        "0000000000000000000000000000000000000000000000000000000000000765"
      ]
    }
  ]
}

Enhancements

  • Support Transaction ID nonce #3041
  • Increase wait time in rosetta-api github workflow #3021
  • Add hedera-mirror-web3 module #3014
  • Update REST models to use getFullName #3008
  • Add contract results support to acceptance tests #3003
  • List contracts in descending order by default #2974
  • Web3 eth_blockNumber #2953
  • Support Transaction ID nonce #2952
  • Contract logs REST API #2930
  • Set Contract List REST API ordering to DESC #2915
  • Web3 API module #2873
  • Search contract logs REST API #2871

Bug Fixes

  • Fix auto created account alias not cached (0.47) #3059
  • Downgrade Flyway from 8.0.4 to 7.15.0 for PostgreSQL 9.6 compatibility (0.47) #3058
  • Fix test image build #3051
  • Fix accounts query with balance only query param performance regression #3018
  • Fix account balance file ingestion performance issue #3000
  • Update GCP Marketplace #2996
  • INSUFFICIENT_GAS during acceptance test #2981
  • Timeout chart workflow #2973
  • Fix artifact name clash in rosetta-api.yml #2971
  • Artifact name clash in rosetta-api github workflow #2970
  • Account balance file parsing is very slow #2967

Dependency Upgrades

  • Bump reporting-plugin from 7.0.0 to 7.1.1 #3048
  • Bump dependency-check-maven from 6.5.0 to 6.5.1 #3047
  • Bump express from 4.17.1 to 4.17.2 in /hedera-mirror-rest #3046
  • Bump vertx-pg-client from 4.2.1 to 4.2.2 #3045
  • Bump docker-maven-plugin from 0.38.0 to 0.38.1 #3044
  • Bump testcontainers from 8.1.0 to 8.1.2 in /hedera-mirror-rest #3037
  • Bump software.amazon.awssdk:bom from 2.17.99 to 2.17.100 #3034
  • Bump jest from 27.4.4 to 27.4.5 in /hedera-mirror-rest/monitoring/monitor_apis #3033
  • Bump springdoc-openapi-webflux-ui from 1.6.0 to 1.6.2 #3032
  • Bump grpc.version from 1.42.1 to 1.43.0 #3031
  • Bump rewire from 5.0.0 to 6.0.0 in /hedera-mirror-rest #3029
  • Bump http-errors from 1.8.1 to 2.0.0 in /hedera-mirror-rest/monitoring/monitor_apis #3028
  • Bump express from 4.17.1 to 4.17.2 in /hedera-mirror-rest/monitoring/monitor_apis #3027
  • Bump log4j2 from 2.16.0 to 2.17.0 #3026
  • Bump json-schema from 0.2.3 to 0.4.0 #3019
  • Bump swagger-ui-express from 4.2.0 to 4.3.0 #3016
  • Bump log4j2 from 2.15.0 to 2.16.0 #3004
  • Bump jest from 27.4.3 to 27.4.4 in /hedera-mirror-rest #2995
  • Bump embedded.testcontainers.version from 2.0.16 to 2.0.18 #2994
  • Bump github.com/coinbase/rosetta-sdk-go from 0.7.1 to 0.7.2 in /hedera-mirror-rosetta #2993
  • Bump jest from 27.4.3 to 27.4.4 in /hedera-mirror-rest/check-state-proof #2992
  • Bump springdoc-openapi-webflux-ui from 1.5.13 to 1.6.0 #2991
  • Bump software.amazon.awssdk:bom from 2.17.96 to 2.17.99 #2989
  • Bump body-parser from 1.19.0 to 1.19.1 in /hedera-mirror-rest/monitoring/monitor_apis #2988
  • Bump qs from 6.10.1 to 6.10.2 in /hedera-mirror-rest #2987
  • Bump jest from 27.4.3 to 27.4.4 in /hedera-mirror-rest/monitoring/monitor_apis #2986
  • Bump spring-cloud-gcp-dependencies from 2.0.5 to 2.0.6 #2985
  • Bump body-parser from 1.19.0 to 1.19.1 in /hedera-mirror-rest #2984
  • Bump aws-sdk from 2.1043.0 to 2.1046.0 in /hedera-mirror-rest #2983
  • Bump testcontainers from 7.24.0 to 8.1.0 in /hedera-mirror-rest #2982
  • Disable log4j2 message lookups #2980
  • Bump log4j2 to 2.15.0 #2976
  • Bump spring-boot-starter-parent from 2.5.6 to 2.6.1 #2933

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.