-
Notifications
You must be signed in to change notification settings - Fork 329
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
Add client workers for active channels, clear packets on start #872
Conversation
…clear packets on start.
This comment has been minimized.
This comment has been minimized.
@@ -247,8 +255,6 @@ pub trait ChainHandle: DynClone + Send + Sync + Debug { | |||
|
|||
fn query_latest_height(&self) -> Result<Height, Error>; | |||
|
|||
fn query_clients(&self, request: QueryClientStatesRequest) -> Result<Vec<ClientId>, Error>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We're removing here the ChainHandle::query_clients
interface. The intention is to bring it back eventually, right?
This interface will be necessary when we want to implement a CLI to query clients
for a non-CosmosSdk chain. (Currently this CLI only works for CosmosSdk.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Amazing stuff @ancazamfir!
Left some suggestions for further refactoring, but perhaps @adizere can do some of them in #881?
@ancazamfir What's the best way to test this? |
Here's a basic approach: https://gist.github.com/adizere/3b522c20f7b487f398942bba9dabd2c8#file-instructions-md
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looked into a few different scenarios testing this, and did not find anything suspicious. In any case, we'll continue working on this + addressing outstanding Romain's comments in PR #881.
Awesome progress with this, Anca!
…malsystems#872) * Initial changes * Create client workers on startup for all existing clients * Fix client worker creation, push domain type conversion at chain * Spawn client workers only for active channels. Spawn path workers to clear packets on start. * Get refresh time from client state, trusting_period for tendermint clients * Remove last_update, get it from timestamp of consensus state at latest height * Fix - client worker should not exit if some consensus states expired * Cleanup * FMT and typed error in ICS 02 deserializer * Fix for stale doc comments. Cleaner imports * Simplified refresh() timestamp comparison. * Testing & error reporting improvements. Renamed Timestamp::subtract to duration_since. * Better type & name for MAX_MISBEHAVIOUR_CHECK_DURATION * More of Romain's comments * Sync w/ Anca, Fixed the consensus_state bug * Changelog Co-authored-by: Adi Seredinschi <adi@informal.systems>
Closes: #786
Closes: #784
Description
tbd
For contributor use:
docs/
) and code comments.Files changed
in the Github PR explorer.