Technical indexer documentation and infrastructure templates for the Mission Control testnet.
For support, please join the #indexers
channel on our
Discord. The Graph team will be happy to
assist you in getting set up.
We have all been eagerly waiting for this moment. It is here now: The Graph Network has launched!
In order to upgrade from the testnet to mainnet, please follow the guide
below. Let us know on Discord in the
#indexers
channel if you have any problems or questions.
Note: We will be open sourcing the indexer repository and its dependencies in the coming days. At that point there will be a new release. From then on, we will implement a more rigorous release process.
The following releases are required for mainnet:
There is a new canonical IPFS node for The Graph Network:
Before you can upgrade, you need to stake and add an operator using the tokken lock contract. This is described in this guide.
graphprotocol/graph-node:v0.20.0
This release disables support for IPFS and fulltext search, two non-deterministic features that could lead to inconsistent indexing results (proof of indexing) and, consequently, slashing.
Configure your nodes to point to the new canonical IPFS node for The Graph Network: https://ipfs.network.thegraph.com. NOTE: No trailing slash!
An Ethereum node that supports EIP-1898 is required to avoid unpredictable subgraph failures, inconsistent indexing results (proof of indexing) and, consequently, slashing.
graphprotocol/indexer-service:sha-4d50de5
@graphprotocol/indexer-service@0.9.0-alpha.2
This is primarily an upgrade to add support for the mainnet contracts.
Start from a fresh database, don't mix testnet and mainnet infrastructure.
In order to run against mainnet, either
--ethereum-network mainnet
to graph-indexer-service
, orINDEXER_SERVICE_ETHEREUM_NETWORK=mainnet
in the environment.Also, set --network-subgraph-endpoint
or
INDEXER_SERVICE_NETWORK_SUBGRAPH_ENDPOINT
to
https://gateway.network.thegraph.com/network
.
As before, make sure to secure your indexer by using different indexer and operator keys in the protocol:
When setting up your indexer, make sure to:
--indexer-address
or INDEXER_SERVICE_INDEXER_ADDRESS
.--mnemonic
or INDEXER_SERVICE_MNEMONIC
.graphprotocol/indexer-agent:sha-4d50de5
@graphprotocol/indexer-agent@0.9.0-alpha.2
This is primarily an upgrade to add support for the mainnet contracts.
Start from a fresh database, don't mix testnet and mainnet infrastructure.
In order to run against mainnet, either
--ethereum-network mainnet
to graph-indexer-agent
, orINDEXER_AGENT_ETHEREUM_NETWORK=mainnet
in the environment.Also, set --network-subgraph-endpoint
or
INDEXER_AGENT_NETWORK_SUBGRAPH_ENDPOINT
to
https://gateway.network.thegraph.com/network
.
As before, make sure to secure your indexer by using different indexer and operator keys in the protocol:
When setting up your indexer, make sure to:
--indexer-address
or INDEXER_AGENT_INDEXER_ADDRESS
.--mnemonic
or INDEXER_AGENT_MNEMONIC
.The agent does not support a configurable ETH "rate" limit yet, so make sure not to fund your operator account with too much ETH.
@graphprotocol/indexer-cli@0.9.0-alpha.2