Skip to content

Make query to find what states a given node exposes #15463

Open

Description

Summary

If you want to make some tooling to run a query across many heights, you need to know what states a given full node has. (E.g. an indexer). The current ecosystem default as far as I can tell, is to use an archive node, which provides much slower queries. And in general is a bit less robust than what many people's needs could afford them. (E.g. resync from full nodes maintaining last 10k blocks, and only revert to an archive node if too old)

Right now the closest thing we have is earliest_block_height in the STATUS RPC endpoint. However this exposes the Tendermint earliest block height, not the state machine's which is subject to pruning conditions.

The proposal is to add a query of some sort, that returns the earliest state that a given node is serving queries from.

Its not obvious to me what the most natural way to expose this info is, but its pretty easy for integrators to adapt to whatever standard we want to set. E.g.
an "Earliest State Query", or a more general "status" query from the state machine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions