-
Notifications
You must be signed in to change notification settings - Fork 9
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
Feature/wire #133
Feature/wire #133
Conversation
…onPipelineChannelTest
…manual Logger init
… Add RPC disconnect and timeouts handling
…gs. Set node-name MDC for all threads. Tune logging
… verified blocks as well
…t unhandled Flux errors
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.
Looks perfect! Just some thoughts when looking around.
ExpiredBlock, | ||
InvalidBlock, | ||
StateMismatch, | ||
OtherError |
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.
I'd throw out OtherError
until it is needed. Maybe we could keep staying with more concrete results.
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.
IMO, UnexpectedError
reads better.
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.
And I think we definitely need a StateTransitionError
to reflect SpecAssertionException
that is thrown by the spec.
import org.ethereum.beacon.db.source.SingleValueSource; | ||
import tech.pegasys.artemis.ethereum.core.Hash32; | ||
|
||
public interface BeaconChainStorage { | ||
|
||
BeaconBlockStorage getBlockStorage(); | ||
|
||
DataSource<Hash32, BeaconBlockHeader> getBlockHeaderStorage(); |
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.
Why not wrap it with dedicated interface like others. Or, lets postpone it?
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.
Let's postpone, since I'm not yet sure how this header storage should be organized
} | ||
} | ||
|
||
void chainStarted(ChainStart chainStartEvent) { |
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.
could we split this method to few smaller readable tasks?
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.
Yep, good question. I wanted to return to this when create it
public abstract class ValidatorKeys { | ||
|
||
public static class Generate extends ValidatorKeys { | ||
private int count; |
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.
It would be great to see something like 10 per epoch or, say, one per every 10 slots.
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.
Not sure what do you mean...
timeParameters: | ||
SECONDS_PER_SLOT: 10 | ||
MIN_ATTESTATION_INCLUSION_DELAY: 1 | ||
SLOTS_PER_EPOCH: 2 |
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.
new line, please!
* this block + all its descendants returned | ||
* | ||
* Blocks with height less than {@link #getTopBlock()} are dropped | ||
* Blocks with height bigger than some threshold above {@link #getTopBlock()} are dropped |
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.
some threshold above
sounds really like magic
…d this cause tasks submitted to already disconnected api
# Conflicts: # consensus/src/main/java/org/ethereum/beacon/consensus/verifier/operation/AttestationVerifier.java
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.
Network stack and sync process based on RX streams is something outstanding! Happy to merge this one.
…be downloaded for sync to proceed
Implement wire protocol, add regular sync, peers and connections management