github hiero-ledger/hiero-block-node v0.46.0

4 hours ago

Summary

v0.46.0 turns greedy backfill on by default and adds per-client admission control for serverStatus. It makes ApplicationStateFacility a plugin, with its notification handlers wired up, and moves to a new TSS library implementation. The CLI gets a block stream protobuf validator and switches block hashing from SHA2-384 to SHA2-256. The release also fixes several publisher and backfill stalls, including a late cherry-picked fix for an ack stall caused by a stale block proof. The rest is dependency bumps, docs, and test stabilization.

What's Changed

⭐ New Features

  • feat(throttle): add per-client admission control for serverStatus by @Nana-EC in #3628
  • feat: #2427 - simplify MetricServiceImpl by @akugal in #3926
  • feat(backfill): enable greedy backfill by default by @AlfredoG87 in #3918
  • feat: Block Streams CLI protobuf validator by @ivannov in #3854
  • feat(helm): add PV and PVC rendering for local/hostPath storage by @arturre in #3843
  • feat: #2373 - remove TestMetricsExporter by @akugal in #3838
  • feat: Update TSS Library to a New Implementation by @ata-nas in #3853
  • feat(subscriber): reap completed sessions independent of new requests by @Nana-EC in #3832
  • feat: Switch the CLI's block hashing from SHA2-384 to SHA2-256 by @ivannov in #3753
  • feat: add AcknowledgeOnly handler + manager cache + metrics (#3694) by @rockysingh in #3794
  • feat(facility-app-state): Make the ApplicationStateFacility a plugin. by @berryware in #3804
  • feat(metrics): one copy of each Grafana dashboard, environment-agnostic by @AlfredoG87 in #3522

🐛 Bug Fixes

  • fix: Block Node ack stall - stale block proof loses a resent block and pins acks. (0.46 cherry-pick #3974) by @berryware in #3990
  • fix(messaging): log and skip handler exceptions instead of stalling the ring by @AlfredoG87 in #3896
  • fix(publisher): restart a finished queue forwarder and keep the flow control refresh alive (#3639). by @rockysingh in #3919
  • fix(backfill): only advance the live-tail mark when the gap was accepted and bound the client buffers (#3638) by @rockysingh in #3894
  • fix(backfill): start the gap scan only after the schedulers exist by @AlfredoG87 in #3951
  • fix: don't request a resend for a block that is below the earliest managed block. by @berryware in #3913
  • fix(charts): raise the nano profile memory limit to 192Mi for the TSS library by @AlfredoG87 in #3880
  • fix(blocks-file-historic): create zip accessor links under the links directory by @AlfredoG87 in #3874
  • fix: Several cases of ApplicationStateFacilityPlugin methods using exceptions for flow control by @berryware in #3858
  • fix: Follow up items from PR #3631 (Wire Up the Application State Notifications and the ApplicationStateNotificationHandlers) by @berryware in #3857
  • fix(cloud-storage-expanded): ExpandedCloudStoragePlugin delays persisted notifications until the next block by @ivannov in #3824
  • fix: Clear scheduled resends for persisted blocks so they stop clamping acks by @berryware in #3770

🔨 Tests

  • test(suites): assert cumulative ACK semantics in the stall/resend regression test by @AlfredoG87 in #3950
  • test(backfill): keep BackfillFetcher backoff active during the eviction assertion by @AlfredoG87 in #3949

📝 Documentation

🔧 Build & Maintenance

⬆️ Dependency Upgrades

  • build(deps): bump actions/setup-java from 6.0.1 to 6.1.0. by @dependabot[bot] in #3864
  • build(deps): bump PandasWhoCode/initialize-github-job from 1.4.0 to 1.5.0. by @dependabot[bot] in #3884
  • build(deps): bump actions/setup-python from 7.0.0 to 7.1.0 by @dependabot[bot] in #3921
  • build(deps): bump docker/login-action from 4.6.0 to 4.7.0 by @dependabot[bot] in #3941
  • build(deps): bump com.google.guava:guava from 33.6.0-jre to 33.7.2-jre in /hiero-dependency-versions by @dependabot[bot] in #3904
  • build(deps): bump grpcIoVersion from 1.84.0 to 1.85.0 in /hiero-dependency-versions by @dependabot[bot] in #3905
  • build(deps): bump com.github.luben:zstd-jni from 1.5.7-22 to 1.5.7-24 in /hiero-dependency-versions by @dependabot[bot] in #3906
  • build(deps): bump helidonVersion from 4.5.4 to 4.5.6 in /hiero-dependency-versions by @dependabot[bot] in #3908
  • build(deps): bump step-security/harden-runner from 2.22.1 to 2.22.2 by @dependabot[bot] in #3922
  • build(deps): bump com.hedera.pbj.pbj-compiler from 0.15.10 to 0.16.2 by @dependabot[bot] in #3601
  • build(deps): bump step-security/harden-runner from 2.21.0 to 2.22.1 by @dependabot[bot] in #3821
  • build(deps): bump gradle-wrapper from 9.8.0 to 9.8.1. by @dependabot[bot] in #3846
  • build(deps): bump actions/upload-artifact from 7.0.1 to 7.0.2. by @dependabot[bot] in #3822
  • build(deps): bump actions/setup-node from 7.0.0 to 7.1.0. by @dependabot[bot] in #3820
  • build(deps): bump helm/kind-action from 1.15.0 to 1.15.1. by @dependabot[bot] in #3819
  • build(deps): bump com.github.spotbugs:spotbugs-annotations from 4.10.2 to 4.10.4 in /hiero-dependency-versions. by @dependabot[bot] in #3799
  • build(deps): bump grpcIoVersion from 1.83.1 to 1.84.0 in /hiero-dependency-versions. by @dependabot[bot] in #3795
  • build(deps): bump gradle/actions/setup-gradle from 6.3.0 to 6.4.0. by @dependabot[bot] in #3777
  • build(deps): bump step-security/setup-buildx-action from 4.2.0 to 4.4.1. by @dependabot[bot] in #3776

Full Changelog: v0.45.1...v0.46.0

Don't miss a new hiero-block-node release

NewReleases is sending notifications on new releases.