v0.108.0
HIP-801 Add support for debug_traceTransaction
RPC API saw its implementation completed this release. The new /api/v1/contracts/results/{id}/opcodes
is now fully implemented and will re-execute the given contract transaction and return the executed opcodes. As noted in the last release, this API is not enabled on Hedera managed mirror nodes and is intended for local execution. The next release will add additional testing and refinements, but for the most part the HIP is complete.
HIP-869 Dynamic address book work was started this sprint with a design document added that lays out its impact on the mirror node.
There was a lot of effort put into automating the mirror node deployment process. A GitOps model is already utilized to help automate a lot of the rollout process, but in the case of multi-cluster environments each cluster would have to be manually updated. We know leverage GitHub repository dispatch to automate the PR creation to update the secondary cluster whenever the first cluster completes and its automated testing completes.
Citus saw further refinements in this release including work to optimize the topic message lookup migration to improve its runtime from weeks down to below an hour. The contract logs and contract result APIs were optimized to improve their performance on Citus. As a result, we felt comfortable enough to re-enable Citus in testnet and beginning work on the mainnet migration.
Enhancements
- Auto update staging-lg to latest release #8662
- Deploy v0.108.0-beta1 to preprod/performance-citus #8656
- Upgrade mainnet-eu to v0.107.2 #8655
- Update performance to v0.108.0-beta1 #8654
- Route traffic to testnet-citus in testnet-eu cluster #8653
- Update mainnet-staging to v0.108.0-beta1 #8652
- Upgrade mainnet-na to v0.107.2 #8651
- Update integration #8641
- Upgrade previewnet-citus to v0.107.2 #8634
- Optimize topic message lookup migration #8631
- Automate testnet-eu and testnet-citus deployment PRs #8629
- Automate previewnet-citus deployment PR #8626
- Route traffic back to testnet in testnet-eu #8603
- Log contract call payload #8602
- Optimize Ethereum Transaction for Contract Results List #8599
- Update contract log query for Citus performance #8595
- Increase web3 RPS throttle for staging citus #8593
- Increase delay duration to avoid pod scheduling issue #8592
- Update stateproof credentials to the new GCP keys in testnet-na #8588
- Route traffic to testnet-citus in testnet-eu #8586
- Report DOWN on Rest API connection issue in monitor #8585
- Enable testnet-citus in testnet-eu cluster #8584
- Upgrade mainnet-citus in staging to v0.107.1 #8579
- Fix github dispatch in preprod #8578
- Update default account ID for K6 REST test #8576
- Automate performance-citus deployment #8556
- Automate multi-cluster deployment PRs #8555
- TESTNET-NA: Updated importer stream bucket read credentials #8553
- Updated importer stream bucket read credentials in testnet-eu #8552
- Implement cache control support in REST Java #8551
- Support filter k6 test cases by name #8548
- ci: Update madhead/semver-utils to use the step-security maintained version #8543
- Allow k6 to run for multiple namespaces #8538
- Increase default memory for prometheus #8535
- Initial design doc for Dynamic Address Book. #8532
- Refactor
SelfDestructOperationTest
#8457 - Implement opcode logger functionality #8241
Bug Fixes
- Fix Snyk Open Source check failing #8642
- Fix testnet-eu auto deploy #8636
- Fix auto deploy kustomization #8635
- Fix value of v in contract result APIs for legacy Ethereum transactions #8632
- ci: Fix labels on runs-on stanza such that they use Linux instead of linux #8628
- Update github dispatch token in preprod #8610
- Fix deploy workflow #8609
- Rest API redis error: wrong number of arguments for 'mget' command #8606
- Improve k6 perf test results consistency #8598
- Make thresholds impossible to breach in k6 tests #8594
- Fix monitor API failures in kubernetes #8583
- Fix inconsistent balance results with tokens REST API #8544
- Suppress recoverable error for inactive evm addresses #8536
- Support redis sentinel in REST API #8533
Dependency Upgrades
- Bump
@testcontainers
/redis from 10.9.0 to 10.10.0 in /hedera-mirror-rest #8622 - Bump
@aws-sdk
/client-s3 from 3.598.0 to 3.600.0 in /hedera-mirror-rest #8621 - Bump nodemon from 3.1.3 to 3.1.4 in /hedera-mirror-rest #8620
- Bump
@testcontainers
/postgresql from 10.9.0 to 10.10.0 in /hedera-mirror-rest #8619 - Bump glob from 10.4.1 to 10.4.2 in /hedera-mirror-rest/check-state-proof #8618
- Bump docker/build-push-action from 6.0.2 to 6.1.0 #8617
- Bump org.springframework.boot:spring-boot-gradle-plugin from 3.3.0 to 3.3.1 #8616
- Bump software.amazon.awssdk:bom from 2.26.3 to 2.26.7 #8615
- Bump io.hypersistence:hypersistence-utils-hibernate-63 from 3.7.6 to 3.7.7 #8614
- Bump io.projectreactor:reactor-core-micrometer from 1.1.6 to 1.1.7 #8613
- Bump com.graphql-java-generator:graphql-gradle-plugin3 from 2.6 to 2.7 #8612
- Bump com.graphql-java-generator:graphql-java-client-runtime from 2.6 to 2.7 #8611
- Bump docker/build-push-action from 6.0.1 to 6.0.2 #8600
- Bump docker/build-push-action from 6.0.0 to 6.0.1 #8590
- Bump peter-evans/create-pull-request from 6.0.5 to 6.1.0 #8589
- Bump docker/build-push-action from 5.4.0 to 6.0.0 #8582
- Bump actions/checkout from 4.1.6 to 4.1.7 #8581
- Bump gradle/actions from 3.4.0 to 3.4.2 #8580
- Bump com.hedera.hashgraph:sdk from 2.32.0 to 2.34.0 #8571
- Bump com.graphql-java-generator:graphql-java-client-runtime from 2.4 to 2.6 #8570
- Bump software.amazon.awssdk:bom from 2.25.69 to 2.26.3 #8569
- Bump flywayVersion from 10.14.0 to 10.15.0 #8568
- Bump jooqVersion from 3.19.9 to 3.19.10 #8567
- Bump com.playtika.testcontainers:embedded-google-pubsub from 3.1.6 to 3.1.7 #8566
- Bump com.hedera.hashgraph:hedera-protobuf-java-api from 0.49.0 to 0.50.0 #8565
- Bump com.graphql-java-generator:graphql-gradle-plugin3 from 2.4 to 2.6 #8564
- Bump google.golang.org/protobuf from 1.34.1 to 1.34.2 in /hedera-mirror-rosetta #8562
- Bump gorm.io/driver/postgres from 1.5.7 to 1.5.9 in /hedera-mirror-rosetta #8561
- Bump github.com/go-playground/validator/v10 from 10.21.0 to 10.22.0 in /hedera-mirror-rosetta #8560
- Bump github.com/hashgraph/hedera-sdk-go/v2 from 2.38.0 to 2.39.0 in /hedera-mirror-rosetta #8559
- Bump eslint-plugin-security from 3.0.0 to 3.0.1 in /hedera-mirror-rest #8558
- Bump
@aws-sdk
/client-s3 from 3.592.0 to 3.598.0 in /hedera-mirror-rest #8557 - Bump gradle/actions from 3.3.2 to 3.4.0 #8546
- Bump codecov/codecov-action from 4.4.1 to 4.5.0 #8545
- Bump actions/checkout from 4.1.6 to 4.1.7 #8539
- Bump braces from 3.0.2 to 3.0.3 in /hedera-mirror-rest in the npm_and_yarn group #8526
- Bump braces from 3.0.2 to 3.0.3 in /hedera-mirror-rest/check-state-proof in the npm_and_yarn group #8525
- Bump braces from 3.0.2 to 3.0.3 in /hedera-mirror-rest/monitoring in the npm_and_yarn group across 1 directory #8524
- Bump versions for v0.108.0-SNAPSHOT #8523
- Bump docker/build-push-action from 5.3.0 to 5.4.0 #8522
Contributors
We'd like to thank all the contributors who worked on this release!