Skip to content

Treat Post & Pre-ChainStart Validators Equally in Assignments Fetching #2074

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

Merged
merged 9 commits into from
Mar 26, 2019

Conversation

rauljordan
Copy link
Contributor

This is part of #1586


Description

Write why you are making the changes in this pull request

Currently our validator client treats post-chainstart validators differently than pre-chainstart ones. However, they should be treated equally as eventually they will get activated and will be receiving assignments.

Write a summary of the changes you are making

We start querying for assignments from the canonical head of the beacon node we are connected to. If we have a "not found" error code, we simply keep listening as if the validator is activated, the assignments will eventually come.

Co-Authored-By: rauljordan <raul@prysmaticlabs.com>
@codecov
Copy link

codecov bot commented Mar 26, 2019

Codecov Report

Merging #2074 into master will increase coverage by 0.07%.
The diff coverage is 66.66%.

@@            Coverage Diff             @@
##           master    #2074      +/-   ##
==========================================
+ Coverage   69.54%   69.61%   +0.07%     
==========================================
  Files         112      112              
  Lines        8632     8587      -45     
==========================================
- Hits         6003     5978      -25     
+ Misses       2012     1996      -16     
+ Partials      617      613       -4

@rauljordan rauljordan merged commit fcc18fa into master Mar 26, 2019
@rauljordan rauljordan deleted the rem-activation branch March 26, 2019 14:03
@@ -39,7 +41,7 @@ func (db *BeaconDB) SaveValidatorIndexBatch(pubKey []byte, index int) error {
// ValidatorIndex accepts a public key and returns the corresponding validator index.
func (db *BeaconDB) ValidatorIndex(pubKey []byte) (uint64, error) {
if !db.HasValidator(pubKey) {
return 0, fmt.Errorf("validator %#x does not exist", pubKey)
return 0, status.Error(codes.NotFound, fmt.Sprintf("validator %#x does not exist", pubKey))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The db package shouldn't return a gRPC error

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants