Skip to content
LogoLogo

Troubleshooting and FAQ

My node is not proposing blocks

Once your node is proposing blocks, it will start emitting logs like these:

INFO handle_propose{epoch=18 view=387213 parent.view=387212 parent.digest=0x43885416b4a7ae7550c615ad4dc702045cd26540b78fa2bd75abdcbfbef02d9d}: tempo_commonware_node::consensus::application::actor: constructed proposal proposal.digest=0x6baa8fa813beea491cf598024d8b31cb2927e7ba1b92a29899a795dbafd682c6 proposal.height=5733680

If you do not see logs like these:

  • Check that your validator is part of the active set, and is both a player and a dealer.
  • Check that your node is synced up to the latest block height.
  • Check that your outgoing IP address matches the one whitelisted on the validator smart contract:
tempo consensus validators-info --rpc-url https://rpc.tempo.xyz

My node is not connecting to peers

If consensus_engine_peer_manager_peers remains at 0 for more than 3 hours after your validator was added on-chain:

  • Verify your firewall allows inbound connections on the ingress port you registered.
  • Verify your egress IP matches the one registered on-chain — check with tempo consensus validator <pubkey> --rpc-url https://rpc.tempo.xyz.
  • If you have reset your validator's data without rotating to a new identity, your node may have been blocked due to double-signing. In that case, reach out to the Tempo team to coordinate a new validator identity.

My node's DKG metrics are not increasing

If how_often_dealer and how_often_player are not increasing after 6 hours:

  • Confirm your node is connected to peers (see above).
  • Check that your validator has progressed past the Syncer state — it takes at least one full epoch (~3 hours) after on-chain addition before your node participates in DKG.
  • Check DKG failure count: if consensus_engine_dkg_manager_ceremony_failures_total is increasing, your node may be failing to complete ceremonies. Enable debug logging for more detail:
    RUST_LOG=info,tempo_commonware_node::dkg=debug

My node is rejecting blocks or missing proposals

If your node logs block validation errors (e.g. "block timestamp is in the future") or you notice missed proposals, a potential root cause is clock drift. Check whether parent_ahead_of_local_time is increasing in your metrics — if so, your system clock is behind the network.

To fix:

  1. Check your current sync status:

    timedatectl status

    Confirm System clock synchronized: yes and NTP service: active.

  2. Install chrony (if not already installed):

    sudo apt install chrony
    sudo systemctl enable --now chronyd
  3. Verify the offset is acceptable:

    chronyc tracking

    The System time offset should be under a few milliseconds.

  4. Restart your node after fixing the clock to clear any cached invalid block state.

See Time Synchronization for full setup details.

I accidentally deleted my consensus data directory

If you deleted <datadir>/consensus, your signing share is lost but will be automatically recovered from the network when the node restarts. Your node will re-join the committee after the next successful DKG ceremony.

How long does it take for my validator to become active?

After on-chain registration, your validator follows the state transition timeline:

  1. Epoch E (immediate) — registered on the p2p network, starts syncing.
  2. Epoch E+1 (~3 hours) — becomes a player, receives signing shares.
  3. Epoch E+2 (~6 hours) — becomes a dealer/validator, can propose and vote once synced.

In most cases, your validator will be fully active within 6 hours.

How long does it take for my validator to exit?

After deactivation, your validator is phased out over two epochs:

  1. Epoch E — deactivation transaction submitted. Validator remains fully active.
  2. Epoch E+1 (~3 hours) — still a dealer but no longer a player. In the process of being removed.
  3. Epoch E+2 (~6 hours) — fully out of the committee (assuming no DKG failures).

Keep your node running until in_committee: false — check with validator lookup.

Can I register my validator without the Tempo team?

No — the active validator set is currently permissioned. Only the contract owner can add validators on-chain. To get started, contact the Tempo team.

The onboarding process:

  1. You generate your signing key and registration signature (Steps 1–2).
  2. You provide the required values to the Tempo team (Step 3).
  3. The Tempo team adds your validator on-chain.
  4. You download a snapshot and start your node (Running the validator).

What can I do without the Tempo team?

Once your validator is registered, most operations are self-service:

Only initial registration and reactivation require the Tempo team.

How do I check which version I'm running?

tempo --version

Compare with the latest release on the network upgrades page to ensure you're on a supported version.