Open
Description
Bug report
Explanation
- Since the check for Extended Blocks was introduced, substreams-based subgraphs stopped syncing.
- I realized that the substream provider was not being added and rejected on the Extended Block check meant for Firehose.
- The substream endpoint I used was Pinax (Mainnet).
Expected Behaviour
As far as I know, the Extended Block check should only happen for Firehose.
Mitigation
I fixed it by adding the chain to GRAPH_NODE_FIREHOSE_DISABLE_EXTENDED_BLOCKS_FOR_CHAINS.
Root Cause
The ExtendedBlocksCheck calls adapter.provides_extended_blocks()
, however the adapter for Substreams is the same as Firehose and performs the same check instead of returning OK(true)
like the EthereumNetworkAdapter
. The request breaks the Substreams endpoint and returns the error posted in the log below.
These are the adapters for each service seen in the code:
pub struct Networks {
pub adapters: Vec<AdapterConfiguration>,
pub rpc_provider_manager: ProviderManager<EthereumNetworkAdapter>,
pub firehose_provider_manager: ProviderManager<Arc<FirehoseEndpoint>>,
pub substreams_provider_manager: ProviderManager<Arc<FirehoseEndpoint>>,
}
Relevant lines
- match adapter.provides_extended_blocks().await {
- pub substreams_provider_manager: ProviderManager<Arc>,
Relevant log output
ERRO Failed to check if provider 'ethereum-substreams-pinax' supports extended blocks on chain 'mainnet': status: Internal, message: "protocol error: received message with invalid compression flag: 52 (valid flags are 0 and 1) while receiving response with status: 404 Not Found", details: [], metadata: MetadataMap { headers: {"server": "nginx/1.26.3", "date": "Wed, 19 Feb 2025 01:16:33 GMT", "content-type": "text/plain; charset=utf-8", "content-length": "19", "vary": "Accept-Encoding", "vary": "Origin", "x-content-type-options": "nosniff"} }
IPFS hash
QmbztMDqPDBDuBfmFxrn5yxtrvEVGYhHzEahsQW9EdMNEf
Subgraph name or link to explorer
Some information to help us out
- Tick this box if this bug is caused by a regression found in the latest release.
- Tick this box if this bug is specific to the hosted service.
- I have searched the issue tracker to make sure this issue is not a duplicate.
OS information
Linux