Skip to content

Commit

Permalink
bump firecore, prep release 2.9.0
Browse files Browse the repository at this point in the history
  • Loading branch information
sduchesneau committed Jan 16, 2025
1 parent a5f9250 commit 4da79b3
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 7 deletions.
24 changes: 23 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). See [MAINTAINERS.md](./MAINTAINERS.md)
for instructions to keep up to date.

## Unreleased
## v2.9.0

### Reader

Expand All @@ -31,6 +31,28 @@ for instructions to keep up to date.

### Substreams

* The `substreams-tier1` app now has two new configuration flags named respectively `substreams-tier1-active-requests-soft-limit` and `substreams-tier1-active-requests-hard-limit`
helping better load balance active requests across a pool of `tier1` instances.

The `substreams-tier1-active-requests-soft-limit` limits the number of client active requests that a tier1 accepts before starting
to be report itself as 'unready' within the health check endpoint. A limit of 0 or less means no limit.

This is useful to load balance active requests more easily across a pool of tier1 instance. When the instance reaches the soft
limit, it will start to be unready from the load balancer standpoint. The load balancer in return will remove it from the list
of available instances, and new connections will be routed to remaining clients, spreading the load.

The `substreams-tier1-active-requests-hard-limit` limits the number of client active requests that a tier1 accepts before
rejecting incoming gRPC requests with 'Unavailable' code and setting itself as unready. A limit of 0 or less means no limit.

This is useful to prevent the tier1 from being overwhelmed by too many requests, most client auto-reconnects on 'Unavailable' code
so they should end up on another tier1 instance, assuming you have proper auto-scaling of the number of instances available.

* The `substreams-tier1` app now exposes a new Prometheus metric `substreams_tier1_rejected_request_counter` that tracks rejected
requests. The counter is labelled by the gRPC/ConnectRPC returned code (`ok` and `canceled` are not considered rejected requests).

* The `substreams-tier2` app now exposes a new Prometheus metric `substreams_tier2_rejected_request_counter` that tracks rejected
requests. The counter is labelled by the gRPC/ConnectRPC returned code (`ok` and `canceled` are not considered rejected requests).

* Properly accept and compress responses with `gzip` for browser HTTP clients using ConnectWeb with `Accept-Encoding` header
* Allow setting subscription channel max capacity via `SOURCE_CHAN_SIZE` env var (default: 100)

Expand Down
4 changes: 2 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,13 @@ require (
github.com/streamingfast/dstore v0.1.1-0.20241011152904-9acd6205dc14
github.com/streamingfast/eth-go v0.0.0-20240312122859-216e183c0b7f
github.com/streamingfast/firehose v0.1.1-0.20240118135215-dcf04d40bfcd
github.com/streamingfast/firehose-core v1.6.10-0.20250116175447-05574d87bf59
github.com/streamingfast/firehose-core v1.7.0
github.com/streamingfast/firehose-ethereum/types v0.0.0-20240603154554-acc011d4f8c4
github.com/streamingfast/jsonpb v0.0.0-20210811021341-3670f0aa02d0
github.com/streamingfast/logging v0.0.0-20230608130331-f22c91403091
github.com/streamingfast/pbgo v0.0.6-0.20250114182320-0b43084f4000
github.com/streamingfast/shutter v1.5.0
github.com/streamingfast/substreams v1.11.4-0.20250116174758-7b0afb88692e
github.com/streamingfast/substreams v1.12.0
github.com/stretchr/testify v1.9.0
github.com/test-go/testify v1.1.4
github.com/tidwall/gjson v1.18.0
Expand Down
8 changes: 4 additions & 4 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -2174,8 +2174,8 @@ github.com/streamingfast/eth-go v0.0.0-20240312122859-216e183c0b7f h1:1LwsmRVENf
github.com/streamingfast/eth-go v0.0.0-20240312122859-216e183c0b7f/go.mod h1:UEm8dqibr3c3A1iIA3CHpkhN7j3X78prN7/55sXf3A0=
github.com/streamingfast/firehose v0.1.1-0.20240118135215-dcf04d40bfcd h1:t5n8dDcgUi7t36Qwxm19K4H2vyOLJfY6MHxTbOvK1z8=
github.com/streamingfast/firehose v0.1.1-0.20240118135215-dcf04d40bfcd/go.mod h1:du6tys2Q6X2pRQ3JbCziWiy7Y7KrOcl4CSb9uiGsVxA=
github.com/streamingfast/firehose-core v1.6.10-0.20250116175447-05574d87bf59 h1:gTDDOI6NyQrTksEYA7ZmpXlfyp4SPIaEDIGnWbEtI2s=
github.com/streamingfast/firehose-core v1.6.10-0.20250116175447-05574d87bf59/go.mod h1:2peGY8ot6tfa53SmNgGWG4JASSddGU2msQtJYW0J+yE=
github.com/streamingfast/firehose-core v1.7.0 h1:jBbFwGtLniXmddSP+3uhZOrrK2522+C+DMMdQydYOXw=
github.com/streamingfast/firehose-core v1.7.0/go.mod h1:V1JaIfMtnK8fwdSRSNtm9vW6qtyf4P/wsptgSmcM21Y=
github.com/streamingfast/firehose-ethereum/types v0.0.0-20240603154554-acc011d4f8c4 h1:gr6ew/RxqQNDtDejLsNE3oAkvyitrtlj15alAjRDKs8=
github.com/streamingfast/firehose-ethereum/types v0.0.0-20240603154554-acc011d4f8c4/go.mod h1:CG22ObinxSbKIP19bAj0uro0a290kzZTiBbjL8VR0SE=
github.com/streamingfast/google-cloud-go v0.0.0-20241202194114-f77ff78d4f66 h1:c0cmKOyazz58F94SwI5a9qZswiJxk0cXSq08mhBGFAI=
Expand Down Expand Up @@ -2203,8 +2203,8 @@ github.com/streamingfast/shutter v1.5.0 h1:NpzDYzj0HVpSiDJVO/FFSL6QIK/YKOxY0gJAt
github.com/streamingfast/shutter v1.5.0/go.mod h1:B/T6efqdeMGbGwjzPS1ToXzYZI4kDzI5/u4I+7qbjY8=
github.com/streamingfast/snapshotter v0.0.0-20230316190750-5bcadfde44d0 h1:Y15G1Z4fpEdm2b+/70owI7TLuXadlqBtGM7rk4Hxrzk=
github.com/streamingfast/snapshotter v0.0.0-20230316190750-5bcadfde44d0/go.mod h1:/Rnz2TJvaShjUct0scZ9kKV2Jr9/+KBAoWy4UMYxgv4=
github.com/streamingfast/substreams v1.11.4-0.20250116174758-7b0afb88692e h1:9pk6d5QKvVLMl5TXSXKb8b0VMmEVh6e3kca200yIuk8=
github.com/streamingfast/substreams v1.11.4-0.20250116174758-7b0afb88692e/go.mod h1:Dgbt37alWqMyahFQ4rdhX8iFLZHn2qD8TBhcP3NIuW8=
github.com/streamingfast/substreams v1.12.0 h1:AhsXsJTmwukurvD65YVqcEkIdFjSa0S1HO3sU4Vq7sY=
github.com/streamingfast/substreams v1.12.0/go.mod h1:Dgbt37alWqMyahFQ4rdhX8iFLZHn2qD8TBhcP3NIuW8=
github.com/streamingfast/wazero v0.0.0-20241202185309-91287c3640ed h1:LU6/c376zP1cMAo9L6rFLyjo0W7RU+hIh7BegH8Zo5M=
github.com/streamingfast/wazero v0.0.0-20241202185309-91287c3640ed/go.mod h1:yAI0XTsMBhREkM/YDAK/zNou3GoiAce1P6+rp/wQhjs=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
Expand Down

0 comments on commit 4da79b3

Please sign in to comment.