Troubleshooting
Common issues and solutions when running Evolve nodes.
Diagnostic Commands
Check Node Status
bash
# Health check
curl http://localhost:7331/health/live
curl http://localhost:7331/health/ready
# Node status
curl http://localhost:26657/statusView Logs
If running in the foreground, logs are printed to stderr by default. If running as a background service, use the appropriate command:
bash
# foreground (default in dev)
./evnode start ... 2>&1 | tee evnode.log
# systemd service
journalctl -u evnode -f
# docker container
docker logs -f <container_name>Common Issues
Node Won't Start
Symptom: Node exits immediately after starting.
Solutions:
- Check for port conflicts:
bash
lsof -i :26657
lsof -i :7676- Verify configuration file syntax:
bash
cat ~/.evnode/config/evnode.yml- Check data directory permissions:
bash
ls -la ~/.evnode/dataDA Connection Failures
Symptom: Logs show DA layer submission failed errors.
Error example:
text
ERR DA layer submission failed error="connection refused"Solutions:
- Verify DA endpoint is reachable:
bash
curl http://localhost:26658/health- Check authentication token (Celestia):
bash
celestia light auth write --p2p.network mocha- Verify DA node is fully synced:
bash
celestia header sync-stateOut of DA Funds
Symptom: Code: 19 errors in logs.
Error example:
text
ERR DA layer submission failed error="Codespace: 'sdk', Code: 19, Message: "Solutions:
- Check DA account balance
- Fund the account with more tokens
- Increase gas price to unstick pending transactions:
bash
--evnode.da.gas_price 0.05See Restart Chain Guide for detailed steps.
P2P Connection Issues
Symptom: Node not syncing, no peers connected.
Solutions:
- Verify peer address format:
bash
# Correct format
/ip4/1.2.3.4/tcp/7676/p2p/12D3KooWABC...
# NOT just the peer ID
12D3KooWABC...- Check firewall allows P2P port:
bash
sudo ufw status
# Ensure port 7676 (or your P2P port) is allowed- Try DA-only sync mode (no P2P):
bash
evnode start --evnode.da.address http://localhost:26658
# Leave --evnode.p2p.peers emptyNode Falling Behind
Symptom: catching_up: true in status, height increasing slowly.
Solutions:
- Check system resources:
bash
htop
df -h- Increase DA request timeout:
bash
--evnode.da.request_timeout 60s- Verify DA layer is responding quickly:
bash
time curl http://localhost:26658/header/sync_stateExecution Layer Desync
Symptom: State root mismatches, execution errors.
EVM (ev-reth):
bash
# Check ev-reth logs for errors
journalctl -u ev-reth -f
# Verify Engine API connectivity
curl -X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer $(cat jwt.hex)" \
--data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' \
http://localhost:8551Cosmos SDK (ev-abci):
bash
# Check app hash consistency
curl http://localhost:26657/status | jq '.sync_info'Reset Procedures
Soft Reset (Keep Genesis)
Reset state while keeping configuration:
bash
# Stop the node
systemctl stop evnode
# Clear data directory
rm -rf ~/.evnode/data/*
# Restart
systemctl start evnodeHard Reset (Full Reinitialize)
Complete reset including configuration:
bash
# Stop the node
systemctl stop evnode
# Remove everything
rm -rf ~/.evnode
# Reinitialize
evnode initReset EVM State (ev-reth)
bash
# Stop both nodes
systemctl stop evnode ev-reth
# Clear ev-reth data
rm -rf ~/.ev-reth/db
# Clear ev-node cache
rm -rf ~/.evnode/data/cache
# Restart
systemctl start ev-reth evnodePerformance Issues
High Memory Usage
- Reduce cache size in configuration
- Enable lazy aggregation mode
- Limit max pending blocks:
bash
--evnode.node.max_pending_blocks 50High CPU Usage
- Increase block time:
bash
--evnode.node.block_time 2s- Check for transaction spam
- Monitor execution layer performance
Disk Space
- Check disk usage:
bash
du -sh ~/.evnode/data/*- Prune old data (if supported by execution layer)
- Consider moving data to larger disk
Getting Help
- Check logs for specific error messages
- Search GitHub Issues
- Join the community Discord for support
See Also
- Reset State Guide - Detailed reset procedures
- Restart Chain Guide - Restarting after issues
- Monitoring Guide - Proactive monitoring