Skip to content

Improve debuggability of chain halts #13404

Open

Description

Summary

When a chain halts we need to get as much information as possible and as easy as possible.

Problem Definition

Currently, the usual way to debug a chain halt is not that easy. We should provide tools and guides on how to debug and pinpoint the root cause of the most common failures.

Proposal

Provide tools and guides for solving:

  • wrong Block.Header.LastResultsHash.
  • wrong Block.Header.ConsensusHash.
  • wrong Block.Header.AppHash.

I think those are the most common errors for chain halts (besides panics).

Some stuff that comes to mind:

  • Command to obtain a specific block (inputs and results) along with hashes, txs, etc. (even when the chain is halted)
  • Dump to a file info that might be helpful
  • Improved iavl-viewer + detailed how-to (maybe iterate over this https://github.com/cosmos/iavl/tree/master/cmd/iaviewer)
  • Remote debugging tools (like running iavl-viewer over http instead of having to pull the entire state?) so validators can give read-only access to chain devs if they desire to do so.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    T: Dev UXUX for SDK developers (i.e. how to call our code)toolingdev tooling within the sdk

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions