Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Which RPC calls does firehose replace? #4346

Closed
paymog opened this issue Feb 7, 2023 · 6 comments
Closed

Which RPC calls does firehose replace? #4346

paymog opened this issue Feb 7, 2023 · 6 comments

Comments

@paymog
Copy link

paymog commented Feb 7, 2023

Do you want to request a feature or report a bug?

I have a question

What is the current behavior?

I've launched firehose for my indexers and I'm still seeing many rpc calls being issued by the graph node. I'm specifically interested in learning which RPC calls we should expect to be eliminated once firehose is turned on.

I'm currently running graph node version 0.29.0 and firehose v1.3.3.

I see the following JSON rpc calls continuing to happen even though firehose has been enabled:

image

I would have intuitively guessed that firehose would replace all calls except eth_call which requires an archive node. However I'm still seeing calls for getting blocks by number, transaction receipts, and get logs.

@matthewdarwin
Copy link

From reading the comments here, seems like you need to be on version 0.30? #4059

@paymog
Copy link
Author

paymog commented Feb 7, 2023

I'm also seeing this against my polygon firehose which I think (though I might be completely wrong!) isn't affected by #4059

Also, 0.30 hasn't been released based on docker hub: https://hub.docker.com/r/graphprotocol/graph-node/tags?page=1&name=0.30

EDIT: thinking about it more, #4059 might be for all eth-compatible chains and not just eth mainnet?

@maoueh
Copy link
Contributor

maoueh commented Feb 7, 2023

thinking about it more, #4059 might be for all eth-compatible chains and not just eth mainnet?

That is correct, it affects all Ethereum like chain. So right now, from the list you presented above, they all look correct, all done by the BlockIngestor which is technically not required anymore.

Have you tried with environment variable IS_FIREHOSE_PREFERRED=true so far?

@paymog
Copy link
Author

paymog commented Feb 7, 2023

Ah got it! Hopefully 0.30.0 is released soon!

Yeah, I've tried that in the past and from what I can tell GRAPH_ETHEREUM_IS_FIREHOSE_PREFERRED set to true by default.

@paymog
Copy link
Author

paymog commented Feb 7, 2023

Is the expectation that if I deploy a new subgraph which starts indexing at block 0, the only rpc calls made for that subgraph will be eth_call and that all the other indexing needs for the "new" subgraph will be handled by firehose?

@maoueh
Copy link
Contributor

maoueh commented Feb 7, 2023

Is the expectation that if I deploy a new subgraph which starts indexing at block 0, the only rpc calls made for that subgraph will be eth_call and that all the other indexing needs for the "new" subgraph will be handled by firehose?

Yes

@paymog paymog closed this as completed Mar 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants