Releases: hashgraph/hedera-mirror-node
v0.117.0
This is a smaller release as we focus on reworking the web3 module to use the modularized EVM library. All of the ReadableKVState
classes are now implemented and the EVM properties are mapped. The next release should have most of the remaining pieces in place to start testing.
Enhancements
- Disable Automated Backup #9638
- Convert EVM properties to a map of configuration properties #9622
- Set delete_request_store for loki #9603
- Enable log retention in Loki and fix restjava routing #9600
- Implement
AirdropsReadableKVState
#9598 - Add REST API query normalization #9591
- Implement
TokenRelationshipReadableKVState
#9582
Bug Fixes
- Fix contract deployment with value (0.117) #9703
- Fix restjava topics info endpoint ingress path regex #9670
- Fix empty ipAddressV4 returning 127.0.0.1 in gRPC nodes API #9608
Documentation
- Fixing whitespace in configuration documentation #9635
- Make clear millisecond is the implied unit for frequency configurations #9633
- Fix properties in historical data ingestion documentation #9632
Dependency Upgrades
- Bump actions/checkout from 4.2.1 to 4.2.2 #9665
- Bump actions/setup-go from 5.0.2 to 5.1.0 #9664
- Bump actions/cache from 4.1.1 to 4.1.2 #9663
- Bump actions/setup-node from 4.0.4 to 4.1.0 #9662
- Bump actions/setup-java from 4.4.0 to 4.5.0 #9661
- Bump actions/setup-python from 5.2.0 to 5.3.0 #9660
- Bump org.owasp:dependency-check-gradle from 10.0.4 to 11.0.0 #9659
- Bump org.testcontainers:junit-jupiter from 1.20.2 to 1.20.3 #9658
- Bump org.apache.velocity:velocity-engine-core from 2.4 to 2.4.1 #9656
- Bump flywayVersion from 10.20.0 to 10.20.1 #9655
- Bump software.amazon.awssdk:bom from 2.28.26 to 2.29.1 #9654
- Bump org.testcontainers:postgresql from 1.20.2 to 1.20.3 #9653
- Bump jooqVersion from 3.19.13 to 3.19.14 #9652
- Bump com.google.cloud:spring-cloud-gcp-dependencies from 5.7.0 to 5.8.0 #9651
- Bump sql-formatter from 15.4.4 to 15.4.5 in /hedera-mirror-rest #9649
- Bump express-openapi-validator from 5.3.7 to 5.3.8 in /hedera-mirror-rest #9648
- Bump
@aws-sdk
/client-s3 from 3.675.0 to 3.679.0 in /hedera-mirror-rest #9647 - Bump pg from 8.13.0 to 8.13.1 in /hedera-mirror-rest #9646
- Bump Spring Boot from 3.3.4 to 3.3.5 #9640
- Updating action to use step-security maintained version. #9631
- Bump hedera-app and hedera-evm #9624
- Bump
@aws-sdk
/client-s3 from 3.670.0 to 3.675.0 in /hedera-mirror-rest #9621 - Bump sql-formatter from 15.4.3 to 15.4.4 in /hedera-mirror-rest #9620
- Bump io.projectreactor:reactor-core-micrometer from 1.1.10 to 1.1.11 #9618
- Bump flywayVersion from 10.19.0 to 10.20.0 #9616
- Bump com.hedera.hashgraph:sdk from 2.41.0 to 2.42.0 #9615
- Bump software.amazon.awssdk:bom from 2.28.21 to 2.28.26 #9614
- Bump gradle.plugin.io.snyk.gradle.plugin:snyk from 0.6.1 to 0.7.0 #9613
- Bump github.com/jackc/pgtype from 1.14.3 to 1.14.4 in /hedera-mirror-rosetta #9612
- Bump github.com/prometheus/client_golang from 1.20.4 to 1.20.5 in /hedera-mirror-rosetta #9611
- Bump github.com/coinbase/rosetta-sdk-go from 0.8.5 to 0.8.6 in /hedera-mirror-rosetta #9610
- Bump github.com/hashgraph/hedera-sdk-go/v2 from 2.47.0 to 2.48.0 in /hedera-mirror-rosetta #9609
- Bump versions for v0.117.0-SNAPSHOT #9596
Deployments
- Deploy v0.117.0 to testnet-eu #9704
- Update mainnet-staging to v0.117.0-rc1 #9678
- Update performance to v0.117.0-rc1 #9677
- Prepare testnet-na for v0.116.0 #9641
- Bump staging-lg to 0.116.0-rc3 #9625
- Bump staging and integration-docker to v0.116.0-rc3 #9607
- Auto Deploy pre-release for Citus #9597
- Prepare Previewnet For 116 Auto-deploy #9587
Contributors
Thank you to all the contributors who worked on this release:
@Neurone
@bilyana-gospodinova
@edwin-greene
@jnels124
@kselveliev
@san-est
@steven-sheehy
@xin-hedera
v0.117.0-rc1
v0.117.0-rc1
v0.116.0
HIP-991 Permissionless revenue-generating Topic Ids for Topic Operators design was completed this sprint and relevant tasks created. Once this HIP is scheduled for inclusion in consensus nodes we'll proceed with implementing the design.
HIP-904 Friction-less Airdrops saw the final tasks completed. Some of these tasks were cherry-picked to 0.115 like the NFT support in the REST APIs. In addition, we saw additional airdrop performance tests added to k6 and acceptance test coverage increased.
Work continues on integrating the modularized EVM library into the web3 module. There were eight pull requests focused on adding the necessary key value state implementations to plug into this new library.
Citus saw some some important work including the addition of automated backup. This will remain off by default until some upstream issues are resolved. We also upgraded Stackgres from 1.11 to 1.13 which contains some important fixes. See breaking changes for more details on upgrading.
Breaking Changes
For the hedera-mirror
Helm chart, if you're using Citus via Stackgres it has a minor version upgrade. Please follow the Stackgres upgrade runbook after upgrading the Helm release.
If you're using the hedera-mirror-common
Helm chart, there are some breaking changes to be aware of. Loki, Prometheus Operator, and Traefik all had major version upgrades that require manual steps. Run the below commands to ensure the CRDs are updated appropriately. Also note Loki had a schema change that will require its volume be manually deleted and recreated.
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.76.0/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagerconfigs.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.76.0/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagers.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.76.0/example/prometheus-operator-crd/monitoring.coreos.com_podmonitors.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.76.0/example/prometheus-operator-crd/monitoring.coreos.com_probes.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.76.0/example/prometheus-operator-crd/monitoring.coreos.com_prometheusagents.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.76.0/example/prometheus-operator-crd/monitoring.coreos.com_prometheuses.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.76.0/example/prometheus-operator-crd/monitoring.coreos.com_prometheusrules.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.76.0/example/prometheus-operator-crd/monitoring.coreos.com_scrapeconfigs.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.76.0/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.76.0/example/prometheus-operator-crd/monitoring.coreos.com_thanosrulers.yaml
kubectl apply --server-side --force-conflicts -k https://github.com/traefik/traefik-helm-chart/traefik/crds/
helm upgrade common hedera/hedera-mirror-common ...
kubectl delete crds ingressroutes.traefik.containo.us ingressroutetcps.traefik.containo.us ingressrouteudps.traefik.containo.us middlewares.traefik.containo.us middlewaretcps.traefik.containo.us serverstransports.traefik.containo.us tlsoptions.traefik.containo.us tlsstores.traefik.containo.us traefikservices.traefik.containo.us
Enhancements
- Disable Automated Backup Cherry-Pick #9639
- Set delete_request_store for loki (0.116) #9604
- Enable log retention in Loki and fix restjava routing (0.116) #9601
- Add Token readable kv state #9572
- Add FileReadableKVState #9570
- Migrate deprecated jest methods #9564
- Add k6 tests for token airdrops #9548
- Automated Backup For Citus #9541
- Add acceptance tests for NFT airdrop #9540
- Add tools and instructions for REST API traffic replay #9532
- Add node metrics to monitor metrics #9531
- Add acceptance tests for fungible token airdrop #9528
- Implement
AliasesReadableKVState
#9527 - Fix equals() and hashCode() for AccountReadableKVState #9493
- Remove jetbrains annotation dependency #9492
- Add NFTReadableKVState #9484
- Add NFTs to airdrop REST APIs #9483
- Implement
ContractBytecodeReadableKVState
#9452 - Implement
ContractStorageReadableKVState
#9450 - Update jooq repository to improve reusability #9424
- Add implementation for AccountReadableKVState #9414
Bug Fixes
- Comment Out Failing Acceptance Test Steps #9593
- Use Rest Java To Retrieve Airdrop Data #9590
- Fix recursive update exception in
EntityIdServiceImpl
#9578 - Remove recoverable errors for inactive EVM addresses #9542
- Add
CustomCallOperation
#9538 - Suppress INVALID_ALIAS_KEY and INVALID_NODE_ACCOUNT_ID recoverable errors #9534
Documentation
- Add HIP-991 design #9503
Dependency Upgrades
- Bump
@aws-sdk
/client-s3 from 3.668.0 to 3.670.0 in /hedera-mirror-rest #9581 - Bump google.golang.org/protobuf from 1.34.2 to 1.35.1 in /hedera-mirror-rosetta #9580
- Bump software.amazon.awssdk:bom from 2.28.19 to 2.28.21 #9579
- Bump
@aws-sdk
/client-s3 from 3.665.0 to 3.668.0 in /hedera-mirror-rest #9563 - Bump software.amazon.awssdk:bom from 2.28.16 to 2.28.19 #9561
- Bump org.openapitools:openapi-generator-gradle-plugin from 7.8.0 to 7.9.0 #9560
- Bump com.hedera.hashgraph:app from 0.54.1 to 0.54.2 #9559
- Bump actions/cache from 4.1.0 to 4.1.1 #9558
- Bump io.hypersistence:hypersistence-utils-hibernate-63 from 3.8.2 to 3.8.3 #9557
- Bump actions/upload-artifact from 4.4.0 to 4.4.3 #9556
- Bump io.cucumber:cucumber-bom from 7.20.0 to 7.20.1 #9555
- Bump sql-formatter from 15.4.2 to 15.4.3 in /hedera-mirror-rest #9554
- Bump actions/checkout from 4.2.0 to 4.2.1 #9553
- Bump com.hedera.hashgraph:hedera-protobuf-java-api from 0.54.0 to 0.55.0 #9552
- Bump flywayVersion from 10.18.2 to 10.19.0 #9551
- Bump org.apache.velocity:velocity-engine-core from 2.3 to 2.4 #9550
- Bump express from 4.2.0 to 4.2.1 #9537
- Bump mathjs from 13.1.1 to 13.2.0 in /hedera-mirror-rest #9526
- Bump
@testcontainers
/redis from 10.13.1 to 10.13.2 in /hedera-mirror-rest #9525 - Bump
@aws-sdk
/client-s3 from 3.658.1 to ...
v0.116.0-rc3
v0.116.0-rc3
v0.116.0-rc2
v0.116.0-rc2
v0.116.0-rc1
v0.116.0-rc1
v0.115.0
HIP-904 Friction-less Airdrops saw the final piece of functionality land in this release. NFT support was added to the /api/v1/accounts/{id}/airdrops/outstanding
and /api/v1/accounts/{id}/airdrops/pending
REST APIs.
Starting a mirror node from scratch has been a frequent pain point for new mirror node operators. To help ease this process, a new database bootstrap mechanism was added. A full mirror node database snapshot is now available in a public, requester pays GCS bucket for download. Documentation and scripts have been provided that help with downloading and importing that snapshot into your local database. This bootstrap process is currently in alpha and feedback is appreciated. In future releases, we'll work to automate the snapshot generation every release, offer a minimal snapshot without HCS data, and make the process more streamlined.
Enhancements
- Add NFTs to airdrop REST APIs (0.115.0) #9536
- Update jooq repository to improve reusability (0.115.0) #9535
- Add response codes for protobuf 0.54.0 #9487
- Add airdrops to restjava ingress #9449
- Add hedera app dependency to hedera-mirror-web3 #9399
- Reducing cache-control for scheduled transactions. #9327
Documentation
- Add a database bootstrap guide #9390
Dependency Upgrades
- Use official web3j gradle plugin #9486
- Bump docker/build-push-action from 6.7.0 to 6.8.0 #9481
- Bump securego/gosec from 2.21.3 to 2.21.4 #9480
- Bump actions/checkout from 4.1.7 to 4.2.0 #9479
- Bump actions/setup-java from 4.3.0 to 4.4.0 #9478
- Bump com.hedera.hashgraph:app from 0.54.0 to 0.54.1 #9477
- Bump uk.org.webcompere:system-stubs-jupiter from 2.1.6 to 2.1.7 #9476
- Bump flywayVersion from 10.18.0 to 10.18.2 #9475
- Bump com.google.guava:guava from 33.3.0-jre to 33.3.1-jre #9474
- Bump org.jetbrains:annotations from 24.1.0 to 25.0.0 #9472
- Bump software.amazon.awssdk:bom from 2.28.6 to 2.28.11 #9471
- Bump org.gaul:s3proxy from 2.2.0 to 2.3.0 #9470
- Bump jooqVersion from 3.19.11 to 3.19.13 #9469
- Bump
@aws-sdk
/client-s3 from 3.654.0 to 3.658.1 in /hedera-mirror-rest #9467 - Bump github.com/ethereum/go-ethereum from 1.14.9 to 1.14.10 in /hedera-mirror-rosetta #9466
- Bump nodemon from 3.1.4 to 3.1.7 in /hedera-mirror-rest/monitoring #9446
- Bump actions/setup-node from 4.0.3 to 4.0.4 #9445
- Bump securego/gosec from 2.20.0 to 2.21.3 #9444
- Bump peter-evans/create-pull-request from 7.0.2 to 7.0.5 #9443
- Bump express-openapi-validator from 5.3.6 to 5.3.7 in /hedera-mirror-rest #9442
- Bump
@aws-sdk
/client-s3 from 3.651.1 to 3.654.0 in /hedera-mirror-rest #9441 - Bump nodemon from 3.1.4 to 3.1.7 in /hedera-mirror-rest #9440
- Bump pg from 8.12.0 to 8.13.0 in /hedera-mirror-rest #9439
- Bump mapStructVersion from 1.6.1 to 1.6.2 #9437
- Bump io.cucumber:cucumber-bom from 7.18.1 to 7.19.0 #9436
- Bump com.hedera.hashgraph:app from 0.53.5 to 0.54.0 #9435
- Bump io.grpc:grpc-bom from 1.66.0 to 1.68.0 #9433
- Bump commons-io:commons-io from 2.16.1 to 2.17.0 #9432
- Bump com.google.cloud:spring-cloud-gcp-dependencies from 5.6.0 to 5.6.1 #9431
- Bump software.amazon.awssdk:bom from 2.28.1 to 2.28.6 #9430
- Bump github.com/prometheus/client_golang from 1.20.3 to 1.20.4 in /hedera-mirror-rosetta #9429
- Bump github.com/hashgraph/hedera-sdk-go/v2 from 2.45.0 to 2.46.0 in /hedera-mirror-rosetta #9428
- Bump github.com/ethereum/go-ethereum from 1.14.8 to 1.14.9 in /hedera-mirror-rosetta #9427
- Bump Spring Boot from 3.3.3 to 3.3.4 #9413
- Bump versions for v0.115.0-SNAPSHOT #9404
Deployments
- Upgrade performance to 0.115.0-beta1 #9491
- Upgrade mainnet-staging to 0.115.0-beta1 #9490
- Deploy v0.115.0-beta1 to previewnet #9489
- Increase Volume Size For Shard 0 And Shard 1 In NA #9463
- Increase Volume Size For Shard 0 And Shard 1 In EU #9462
- Increase Prometheus storage in mainnet-eu #9461
- Increase Volume Size For Shard 0 And Shard 1 in Mainnet Staging #9460
- Increase RAM For Prometheus and PVC Size For Loki in Mainnet NA #9448
- Bump Staging to Latest RC #9409
Contributors
Thank you to all the contributors who worked on this release:
@IvanKavaldzhiev
@edwin-greene
@jnels124
@kselveliev
@mgoelswirlds
@nirbosl
@steven-sheehy
v0.115.0-beta1
v0.115.0-beta1
v0.114.1
Enhancements
- Add airdrops to restjava ingress (0.114) #9453
Contributors
Thank you to all the contributors who worked on this release:
v0.114.0
This release contains the two new REST APIs for HIP-904 token airdrops. The new /api/v1/accounts/{sender}/airdrops/outstanding
REST API lists the outstanding airdrops sent by the sender which have not been claimed by recipients. The new /api/v1/accounts/{receiver}/airdrops/pending
REST API lists the pending airdrops that the receiver has not yet claimed. Both of these APIs are still under development and only return fungible token airdrops at this time. In a subsequent release, non-fungible token airdrop support will be added.
Our new Citus database saw a lot of performance optimizations enabling us to finally switch our production instances over. The stateproof REST API saw an optimization to reduce the number of partitions it scans. Likewise, the contract APIs /contracts/{id}/results/logs
, /contracts/results
, and /contracts/logs
were heavily optimized. Finally, the change to populate the next link when the implicit timestamp range was hit also made it in.
The long-running effort to refactor the web3 tests to be more maintainable and reduce execution time was completed. In all 10 pull requests were merged to close out this project. This lays the foundation for the next web3 project we're going to tackle: integration of the new modularized consensus node library.
The monitor component now supports TLS connections to consensus nodes. A new hedera.mirror.monitor.nodeValidation.tls
property was added with a default of PLAINTEXT
to control this behavior. Set it to BOTH
or TLS
to connect to the consensus node's secure port. Note that this is currently less secure than it should be since we don't verify certificate hash information in the address book due to a limitation in the SDK.
Enhancements
- Add a REST Java API dashboard #9403
- Populate next link for endpoints with implicit timestamp range #9389
- Add pending token airdrops to REST API #9383
- Add negative scenarios for historical tests #9345
- Support TLS in monitor #9343
- Optimize
/contracts/results
and/contracts/results/logs
in v2 #9342 - Use express body parsers #9341
- Enhance negative web3 tests to check for expected error messages #9340
- Enable TokenReject in acceptance tests #9335
- Delete obsolete web3 test classes #9329
- Enhance contract deployment in integration tests #9318
- Remove
web3j-cli
#9303 - Add outstanding token airdrops to REST API #9286
- Improve stateproof API performance in v2 #9283
- Improve
/contracts/{id}/results/logs
performance in v2 #9282 - Refactor
ContractCallServiceERCTokenTest
historical tests #9272 - Refactor ContractCallServicePrecompileHistoricalTest #9262
- Refactor
OpcodeServiceTest
to use web3j #9221
Bug Fixes
- Adjust citus memory configuration #9384
- Return empty contract results instead of code 404 when block not found #9354
- Check extra success codes for transactions result parameter #9352
- Fix web3 docker build #9348
- fix: Fix historical erc tests after conflicting pr merges #9323
- Fix Stackgres PostgreSQL version #9312
- Fix error on calls with value with not existing sender alias #9302
Dependency Upgrades
- Bump Spring Boot from 3.3.3 to 3.3.4 (0.114) #9416
- Bump step-security/harden-runner from 2.9.1 to 2.10.1 #9376
- Bump peter-evans/create-pull-request from 7.0.1 to 7.0.2 #9374
- Bump actions/setup-java from 4.2.2 to 4.3.0 #9373
- Bump gradle/actions from 4.0.1 to 4.1.0 #9372
- Bump
@aws-sdk
/client-s3 from 3.651.0 to 3.651.1 in /hedera-mirror-rest #9371 - Bump io.projectreactor:reactor-core-micrometer from 1.1.9 to 1.1.10 #9369
- Bump com.hedera.hashgraph:sdk from 2.38.0 to 2.39.0 #9368
- Bump com.hedera.hashgraph:hedera-protobuf-java-api from 0.53.0 to 0.54.0 #9367
- Bump net.java.dev.jna:jna from 5.14.0 to 5.15.0 #9366
- Bump mapStructVersion from 1.6.0 to 1.6.1 #9365
- Bump software.amazon.awssdk:bom from 2.27.21 to 2.28.1 #9363
- Bump org.gradle:test-retry-gradle-plugin from 1.5.10 to 1.6.0 #9362
- Bump flywayVersion from 10.17.3 to 10.18.0 #9361
- Bump gorm.io/gorm from 1.25.11 to 1.25.12 in /hedera-mirror-rosetta #9360
- Bump github.com/hashgraph/hedera-sdk-go/v2 from 2.44.0 to 2.45.0 in /hedera-mirror-rosetta #9359
- Bump express-openapi-validator from 5.3.5 to 5.3.6 #9347
- Bump Spring Framework from 6.1.12 to 6.1.13 #9346
- Bump gradle from 8.9 to 8.10.1 #9339
- Bump express from 4.20.0 to 4.21.0 #9338
- Bump the npm_and_yarn group in /hedera-mirror-rest/monitoring with 2 updates #9337
- Bump path-to-regexp and micromatch #9326
- Bump github.com/prometheus/client_golang from 1.20.2 to 1.20.3 in /hedera-mirror-rosetta #9300
- Bump github.com/go-playground/validator/v10 from 10.22.0 to 10.22.1 in /hedera-mirror-rosetta #9299
- Bump eslint-plugin-jest from 28.8.1 to 28.8.3 in /hedera-mirror-rest #9298
- Bump express-openapi-validator from 5.3.4 to 5.3.5 in /hedera-mirror-rest #9297
- Bump
@aws-sdk
/client-s3 from 3.637.0 to 3.645.0 in /hedera-mirror-rest #9296 - Bump sql-formatter from 15.4.1 to 15.4.2 in /hedera-mirror-rest #9295
- Bump flywayVersion from 10.17.2 to 10.17.3 #9294
- Bump software.amazon.awssdk:bom from 2.27.17 to 2.27.21 #9293
- Bump vertxVersion from 4.5.9 to 4.5.10 #9291
- Bump com.playtika.testcontainers:embedded-google-pubsub from 3.1.7 to 3.1.8 #9290
- Bump peter-evans/create-pull-request from 6.1.0 to 7.0.1 #9289
- Bump versions for v0.114.0-SNAPSHOT #9267
Deployments
- Update staging citus resources #9415
- Increase Loki and Prometheus memory in mainnet-eu #9410
- Upgrade performance to v0.114.0-rc1 #9408
- Deploy v0.114.0-rc1 to previewnet #9406
- Switch previewnet to citus #9394
- Deploy v0.113.2 to previewnet #9392
- Switch previewnet to cloudsql #9388
- Reduce mainnet-na citus worker shared_buffers #9350
- Reduce performance-citus worker PV size [#9336](https://github.com/h...