Skip to content
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

Support Efficient Iteration of ConsensusStates in Reverse Chronological Order #64

Open
AdityaSripal opened this issue Oct 28, 2020 · 2 comments
Assignees
Labels
change: protocol breaking Issues that cannot be addressed because they break the current protocol version

Comments

@AdityaSripal
Copy link
Member

SDK should provide efficient iteration of consensus states for a particular client in reverse chronological order.

To accomplish this, the consenus state height must be stored as part of the key in such a way that the reverse lexicographic order is the same as the (reverse) chronological order. Then we could simply use the SDK store's ReverseIterator implementation.

@colin-axner
Copy link
Contributor

colin-axner commented Jan 22, 2021

I believe this is ibc-breaking now that ibc 1.0 has been released since this would change proof paths

@colin-axner colin-axner transferred this issue from cosmos/cosmos-sdk Mar 5, 2021
@colin-axner colin-axner added this to the 1.0.0 milestone Apr 7, 2021
@colin-axner
Copy link
Contributor

#125 implements this at the 07-tendermint level, but every other light client would need to reimplement this logic to get support for pruning and other mechanisms which require efficient iteration.

This is IBC breaking and should only be applied at the 02-client level once we are ready to move on to IBC v2

@colin-axner colin-axner removed this from the 1.0.0 milestone Apr 22, 2021
@colin-axner colin-axner added the change: protocol breaking Issues that cannot be addressed because they break the current protocol version label Apr 22, 2021
faddat referenced this issue in notional-labs/ibc-go Mar 1, 2022
* Fix urlFlag typo

* Create fn that has both file and url flags for chainsAddCmd

* Extract chains add flag values

* Update chains add cmd to fetch chain config from url

* Define error and return if both file and url flags present
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
change: protocol breaking Issues that cannot be addressed because they break the current protocol version
Projects
None yet
Development

No branches or pull requests

2 participants