-
Notifications
You must be signed in to change notification settings - Fork 326
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
query client status CLI fails with high number of consensus states #3814
Comments
This doesn't look like a pagination issue but I don't understand what is happening. When querying all consensus heights:
Then when hermes tries to query a single consensus state in the range it got, the state is not found:
When hermes tries to find a consensus state from the simd returned range the state is fine:
I tried with other clients on osmosis and the issue is the same. Thought maybe the states hermes gets are some old prune states but I tried to reproduce on a local setup and was not able to (may have to try higher scale). |
Do you still see the same issue if you apply this diff? diff --git a/crates/relayer/src/chain/requests.rs b/crates/relayer/src/chain/requests.rs
index cc459081..68ed170c 100644
--- a/crates/relayer/src/chain/requests.rs
+++ b/crates/relayer/src/chain/requests.rs
@@ -117,6 +117,7 @@ impl PageRequest {
PageRequest {
limit: u32::MAX as u64,
+ reverse: true,
..Default::default()
}
} |
yes, it's the same |
Oh I think the gRPC endpoint was of a node that was not synced (the RPC endpoint was good though). I changed it to a good node and it's fine. Wondering if there is gRPC status query for the sync info. Will try to find out. |
|
Summary of Bug
While debugging an IBC client on osmosis, I noticed that
query client status
fails (added some debugs):As seen above the
client_state.latest_height()
is higher than the highest consensus state height returned byquery_consensus_state_heights()
.It looks like the query for all consensus states does not return latest states
and, for this particular case, the highest returned is for a consensus state that has been pruned, hence the error. We need to debug this, maybe it's an issue with the pagination.But in particular for this CLI we don't need to get all consensus states but only the one at
client_state.latest_height()
.So we need to:
fix the pagination forthis was not an issue but rather:query_consensus_state_heights()
(i.e. getN
at a time and assemble the full list)query client status
CLI to use theclient.latest_height
to retrieve the latest consensus stateVersion
all
Steps to Reproduce
Acceptance Criteria
query client status
should succeed with high number of consensus states.For Admin Use
The text was updated successfully, but these errors were encountered: