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

Light Client minor improvements #138

Closed
1 of 3 tasks
ebuchman opened this issue Feb 2, 2020 · 3 comments
Closed
1 of 3 tasks

Light Client minor improvements #138

ebuchman opened this issue Feb 2, 2020 · 3 comments
Labels
light-client Issues/features which involve the light client
Milestone

Comments

@ebuchman
Copy link
Member

ebuchman commented Feb 2, 2020

Follow up to #110 Types:

  • memoize results of methods that don't take args, eg. .hash() (Light client impl followup  #96 (comment))
  • introduce a simple event type and let bisection function take a closure that will fire events. this can be used for logging so we don't need a print statement or logger inside the functions

Also follow up to PR review:

@romac romac added the light-client Issues/features which involve the light client label May 25, 2020
@romac romac mentioned this issue May 25, 2020
19 tasks
@ebuchman ebuchman added this to the Light Node milestone Jun 2, 2020
@ebuchman
Copy link
Member Author

ebuchman commented Jun 2, 2020

Possibly break this up into two issues. Memoizing isn't important for https://github.com/informalsystems/tendermint-rs/milestone/1 but some good form of logging probably is

@brapse
Copy link
Contributor

brapse commented Jun 10, 2020

It isn't clear to me what the motivation or expectation is here.

Is it possible that we want to know what blocks were part of a verification path? In which case this might be fulfilled by the tracing feature which is already landed:

/// Record that the block at `height` was needed to verify the block at `target_height`.
///
/// ## Preconditions
/// - `height` < `target_height`
#[pre(height <= target_height)]
pub fn trace_block(&mut self, target_height: Height, height: Height) {
self.verification_trace
.entry(target_height)
.or_insert_with(HashSet::new)
.insert(height);
}

If not, it would be great to update the description of this issue with what we want and why.

@ebuchman
Copy link
Member Author

I think we can close for now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
light-client Issues/features which involve the light client
Projects
None yet
Development

No branches or pull requests

3 participants