<aside> ⚠️ Are you having trouble starting your node with mev-tendermint? We’ve compiled a list of common problems we’ve seen many validators experience
</aside>
Problems with mev-tendermint set up can often be traced back to your go.mod file.
Symptoms:
Here are a few components to investigate (The answer to each of these questions should be yes):
Do you have a tendermint ⇒ mev-tendermint replace statement?
→ Towards the bottom of your go.mod file you should have a line that looks like this:
replace [github.com/tendermint/tendermint](<http://github.com/tendermint/tendermint>) => [github.com/skip-mev](<http://github.com/skip-mev>)/mev-tendermint MEV_TENDERMINT_VERSION
→ If you don’t have the replace statement, your node will run without communicating with Skip and will be unable to receive MEV bundles that increase your validator rewards
→ Find the mev-tendermint version you should be using here
Do you have EXACTLY 1 tendermint/tendermint
replace statement?
→ Some chains (e.g. Terra2) replace tendermint with their own version of tendermint using a go.mod replace statement, just like we do. If you leave that pre-existing replace statement in the go.mod file and you add one to replace tendermint with mev-tendermint, the client will not compile. So make sure you get rid of that pre-existing replace statement.
Is mev-tendermint in a replace
section AND not in a require
section?
→ If mev-tendermint is in the require
section of the file rather than the replace section, the binary will fail to compile.
→ You need to ensure the require
section still includes a “vanilla” version of tendermint (e.g. github.com/tendermint/tendermint v0.34.23
), and that mev-tendermint is only introduced in the replace
section
Are you using the version of mev-tendermint that matches the version in github.com/skip-mev/config/ (in the directory for your chain_id and chain_version)?
→ Often times, compilation and runtime errors can be caused by using an old version of mev-tendermint.
→ Double check that the version referenced in the replace
statement in your go.mod
file matches the version in Skip’s docs / the config repo for your particular chain id and chain version. (The chain id should be listed in the chain’s official documentation, and the chain version tag can be found in the latest upgrade announcement for the chain and usually in their official docs or github repos)
Problems with mev-tendermint very frequently arise just from folks running an old or unreleased/not-yet-supported version of the chain application code. (And this causes failures that have nothing to do with mev-tendermint)
Symptoms: