Compare commits

...

3 Commits

Author SHA1 Message Date
nisdas
8d4505c367 Merge branch 'develop' of https://github.com/prysmaticlabs/geth-sharding into debugE2EFailure 2024-01-24 09:48:45 +08:00
nisdas
1c9a3b43b4 change it 2024-01-23 21:53:42 +08:00
nisdas
b7aaf2813a fix it 2024-01-23 21:16:22 +08:00
2 changed files with 10 additions and 0 deletions

View File

@@ -83,6 +83,7 @@ go_library(
"@com_github_prometheus_client_golang//prometheus/promauto:go_default_library",
"@com_github_prysmaticlabs_go_bitfield//:go_default_library",
"@com_github_sirupsen_logrus//:go_default_library",
"@in_gopkg_d4l3k_messagediff_v1//:go_default_library",
"@io_opencensus_go//plugin/ocgrpc:go_default_library",
"@io_opencensus_go//trace:go_default_library",
"@org_golang_google_grpc//:go_default_library",

View File

@@ -49,6 +49,7 @@ import (
"google.golang.org/grpc/status"
"google.golang.org/protobuf/proto"
"google.golang.org/protobuf/types/known/emptypb"
"gopkg.in/d4l3k/messagediff.v1"
)
// keyFetchPeriod is the frequency that we try to refetch validating keys
@@ -588,6 +589,14 @@ func (v *validator) UpdateDuties(ctx context.Context, slot primitives.Slot) erro
log.WithError(err).Error("error getting validator duties")
return err
}
if diff, isEqual := messagediff.PrettyDiff(resp.Duties, resp.CurrentEpochDuties); !isEqual {
v.dutiesLock.Lock()
v.duties = nil // Clear assignments so we know to retry the request.
v.dutiesLock.Unlock()
wrappedErr := errors.Errorf("duties are different: %s", diff)
log.WithError(wrappedErr).Error("error getting validator duties")
return wrappedErr
}
v.dutiesLock.Lock()
v.duties = resp