-
Notifications
You must be signed in to change notification settings - Fork 117
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
Beginning of peerset implementation. #62
Conversation
We noticed that there's an advantage to having a generic |
Perhaps as an initial step, it would be good to separate the backpressure-drives-peerset-expansion component from this PR and deal with that separately and subsequently, which would allow using, e.g., the |
The "wip" commit stubs above change |
// XXX hack | ||
impl Into<crate::BoxedStdError> for PeerError { | ||
fn into(self) -> crate::BoxedStdError { | ||
Box::new(format_err!("dropped error info").compat()) |
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.
This is ultimately because failure::Error
doesn't implement Clone
; fixing it properly requires reworking other error handling (to use custom Fail
s) and I would like to wait two weeks to do it rather than do it now, if that's OK with others
Per slack discussion, dropping the middle two tasks for a subsequent PR. |
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.
LGTM ✅
Co-authored-by: Deirdre Connolly <[email protected]>
This is adapted from the MIT-licensed tower-balance implementation.
Rebased onto |
So far this just has initial work following design discussion with @dconnolly this afternoon.
TODO:
discovery implementation existspeerset backpressure creates new peers