Proviroll

Troubleshooting

Diagnose Agave bootstrap, network, storage, snapshot, and validator-health failures without jumping straight to a reset.

Troubleshooting is the evidence-first process of locating a validator failure across process, storage, network, snapshot, and consensus state. Start with evidence: a process restart or ledger wipe can erase the exact state needed to explain a failure.

First five checks

systemctl status <validator-service> --no-pager
journalctl -u <validator-service> -n 200 --no-pager
solana cluster-version --url <local-rpc-url>
solana slot --url <local-rpc-url>
solana validators --url <local-rpc-url>

Repeat the slot check after ten seconds. If it does not advance, record that result before changing anything.

Symptom guide

SymptomLikely classes of causeEvidence to collect
Follower cannot join clusterWrong entrypoint, blocked UDP range, wrong expected genesis, or bootstrap unavailableGossip output, firewall rules, genesis hash, bootstrap service logs.
RPC listens but node is unhealthyReplay/catch-up delay, storage pressure, stalled process, or wrong clusterSlot progression, disk latency/space, logs, reference endpoint comparison.
Node repeatedly restartsService limits, permission problems, invalid flags, OOM, or storage failuresystemd status, exit code, kernel log, effective limits, mount ownership.
Leader slots are skippedCPU scheduling, VM steal time, network loss, or disk latencyCPU governor, steal/IO wait, NIC counters, slot/performance samples.
Snapshot download never completesBad peer reachability, insufficient disk, incompatible genesis, or corrupted local stateSnapshot logs, disk capacity, genesis hash, peer/gossip visibility.
Validator is delinquentVoting key/configuration problem, excessive lag, or service failuregetVoteAccounts, validator logs, local/reference slot lag.

Safe escalation path

  1. Read logs and collect status.
  2. Check configuration drift: version, flags, genesis hash, entrypoints, trusted validators, and mounts.
  3. Check host limits and resource pressure.
  4. Check network reachability and peer discovery.
  5. Attempt a controlled restart only when the failure mode supports it.
  6. Restore from snapshot or rebuild only after preserving evidence and confirming the target genesis.

Dangerous shortcuts

  • Do not delete ledger/accounts directories to fix a generic “not healthy” alert.
  • Do not set --wal-recovery-mode skip_any_corrupted_record as a reflex; understand the data-integrity consequence for the node and version in use.
  • Do not disable known-validator or expected-genesis protections just to make a follower connect.
  • Do not expose RPC publicly to test a networking problem.

On this page