Nomad Docs
  • Nomad 101
    • Funds Recovery
    • Introduction
    • Our Mission
    • Getting Started
  • The Nomad Protocol
    • Overview
    • Cross-chain Messaging
      • Lifecycle of a Message
    • Verification Mechanisms
      • Background on Verification
      • Native Verification
      • External Verification
      • Optimistic Verification
      • Comparing Mechanisms
    • Security
      • Root of Trust
        • Fraud
          • Optimistic Timeout Period
          • Fraud Recovery
        • App-Governed Root of Trust
        • Liveness Assumptions
      • Attack Vectors
        • Key Compromise
        • Economic Attacks
        • Smart Contract Bugs
      • Long-Term Security
        • Permissionless Watchers
        • Financial Controls
        • Cross-Domain MEV
    • Smart Contracts
      • Home
      • Replica
      • XAppConnectionManager
    • Off-chain Agents
      • Updater
      • Watchers
      • Relayer
      • Processor
  • Token Bridge
    • Overview
    • How to Bridge
      • Using Etherscan
      • Nomad Bridge App
      • Testnet Bridge App
    • Asset Issuers
      • Custom Representations
    • Deployed Tokens
      • Mainnet
      • Testnet
    • Smart Contracts
      • BridgeRouter
      • TokenRegistry
      • BridgeToken
      • BridgeMessage
    • Architecture
    • FAQ
  • Governance Bridge
    • Overview
    • Zodiac: Nomad Module
    • Smart Contracts
      • NomadModule
    • Architecture
  • Developers
    • Quickstart
      • Send Messages
      • Receive Messages
    • Environments
      • Domain (Chain) IDs
    • Application Developers
      • Building xApps
      • SDK
        • Contracts SDK
        • Typescript SDK
      • Examples
        • Ping Pong
        • Example Bridge GUI
        • xApp Example
      • Advanced
        • Router Pattern
    • Node Operators
      • Running Agents Guide
        • Troubleshooting
      • Running a Watcher
      • Agent Operations
      • Agent Gas Values
      • The Keymaster
    • Core Developers
      • Upgrade Setup
      • Deploying Contracts
        • Development
        • Production
  • Operational Security
    • Audits
    • Bug Bounty
    • Governance
    • Contracts
    • Agent Operations
  • Resources
    • Awesome Interoperability
    • Brand Kit
    • FAQ
    • Glossary
    • GitHub
    • Discord
    • Twitter
    • Website
Powered by GitBook
On this page
  • Common Errors
  • ProverSync found new root but could not find leaf under it
  1. Developers
  2. Node Operators
  3. Running Agents Guide

Troubleshooting

Hints for dealing with common (and not so common) Agent failures.

Common Errors

ProverSync found new root but could not find leaf under it

The eth_getLogs RPC call is used by Agents to query for events from a given EVM-compatible blockchain. This error manifests when an Agent is unable to locate a Dispatch event for a given message. This sometimes manifests on some novel EVM-compatible networks non-deterministically and can be hard to debug. The error lists the current root and the leaf index of the message that was not properly indexed. A special case of this Error is when the Agent cannot locate the first leaf with index 0. This usually indicates a deviation from the behavior of an Ethereum Geth node, which has event data indexed in a separate data structure than block data. This is generally fixed by switching your RPC to an Archive node, such that all the required data to format the response to eth_getLogs is available at query-time. Below is an example of an error in this special case:

ProverSync found new root 0x6f46…504c but could not find leaf under it. Leaf index of missing leaf: 0.

PreviousRunning Agents GuideNextRunning a Watcher

Last updated 2 years ago