Add Spans for Validator DB Methods (#8390)

Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
This commit is contained in:
Raul Jordan 2021-02-03 13:29:20 -06:00 committed by GitHub
parent c5551ebebb
commit afa5b5e790
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 2 deletions

View File

@ -52,6 +52,8 @@ var (
// we have stored in the database for the given validator public key. // we have stored in the database for the given validator public key.
func (s *Store) AttestationHistoryForPubKey(ctx context.Context, pubKey [48]byte) ([]*AttestationRecord, error) { func (s *Store) AttestationHistoryForPubKey(ctx context.Context, pubKey [48]byte) ([]*AttestationRecord, error) {
records := make([]*AttestationRecord, 0) records := make([]*AttestationRecord, 0)
ctx, span := trace.StartSpan(ctx, "Validator.AttestationHistoryForPubKey")
defer span.End()
err := s.view(func(tx *bolt.Tx) error { err := s.view(func(tx *bolt.Tx) error {
bucket := tx.Bucket(pubKeysBucket) bucket := tx.Bucket(pubKeysBucket)
pkBucket := bucket.Bucket(pubKey[:]) pkBucket := bucket.Bucket(pubKey[:])
@ -90,6 +92,8 @@ func (s *Store) AttestationHistoryForPubKey(ctx context.Context, pubKey [48]byte
func (s *Store) CheckSlashableAttestation( func (s *Store) CheckSlashableAttestation(
ctx context.Context, pubKey [48]byte, signingRoot [32]byte, att *ethpb.IndexedAttestation, ctx context.Context, pubKey [48]byte, signingRoot [32]byte, att *ethpb.IndexedAttestation,
) (SlashingKind, error) { ) (SlashingKind, error) {
ctx, span := trace.StartSpan(ctx, "Validator.CheckSlashableAttestation")
defer span.End()
var slashKind SlashingKind var slashKind SlashingKind
err := s.view(func(tx *bolt.Tx) error { err := s.view(func(tx *bolt.Tx) error {
bucket := tx.Bucket(pubKeysBucket) bucket := tx.Bucket(pubKeysBucket)
@ -170,6 +174,8 @@ func (s *Store) CheckSlashableAttestation(
func (s *Store) SaveAttestationsForPubKey( func (s *Store) SaveAttestationsForPubKey(
ctx context.Context, pubKey [48]byte, signingRoots [][32]byte, atts []*ethpb.IndexedAttestation, ctx context.Context, pubKey [48]byte, signingRoots [][32]byte, atts []*ethpb.IndexedAttestation,
) error { ) error {
ctx, span := trace.StartSpan(ctx, "Validator.SaveAttestationsForPubKey")
defer span.End()
if len(signingRoots) != len(atts) { if len(signingRoots) != len(atts) {
return fmt.Errorf( return fmt.Errorf(
"number of signing roots %d does not match number of attestations %d", "number of signing roots %d does not match number of attestations %d",
@ -194,6 +200,8 @@ func (s *Store) SaveAttestationsForPubKey(
func (s *Store) SaveAttestationForPubKey( func (s *Store) SaveAttestationForPubKey(
ctx context.Context, pubKey [48]byte, signingRoot [32]byte, att *ethpb.IndexedAttestation, ctx context.Context, pubKey [48]byte, signingRoot [32]byte, att *ethpb.IndexedAttestation,
) error { ) error {
ctx, span := trace.StartSpan(ctx, "Validator.SaveAttestationForPubKey")
defer span.End()
s.batchedAttestationsChan <- &AttestationRecord{ s.batchedAttestationsChan <- &AttestationRecord{
PubKey: pubKey, PubKey: pubKey,
Source: att.Data.Source.Epoch, Source: att.Data.Source.Epoch,

View File

@ -3,10 +3,10 @@ package kv
import ( import (
"context" "context"
bolt "go.etcd.io/bbolt"
"github.com/prysmaticlabs/prysm/shared/bytesutil" "github.com/prysmaticlabs/prysm/shared/bytesutil"
"github.com/prysmaticlabs/prysm/shared/params" "github.com/prysmaticlabs/prysm/shared/params"
bolt "go.etcd.io/bbolt"
"go.opencensus.io/trace"
) )
// PruneAttestationsOlderThanCurrentWeakSubjectivity loops through every // PruneAttestationsOlderThanCurrentWeakSubjectivity loops through every
@ -14,6 +14,8 @@ import (
// that has target epochs older than the highest weak subjectivity period // that has target epochs older than the highest weak subjectivity period
// in our database. This routine is meant to run on startup. // in our database. This routine is meant to run on startup.
func (s *Store) PruneAttestationsOlderThanCurrentWeakSubjectivity(ctx context.Context) error { func (s *Store) PruneAttestationsOlderThanCurrentWeakSubjectivity(ctx context.Context) error {
ctx, span := trace.StartSpan(ctx, "Validator.PruneAttestationsOlderThanCurrentWeakSubjectivity")
defer span.End()
return s.update(func(tx *bolt.Tx) error { return s.update(func(tx *bolt.Tx) error {
bucket := tx.Bucket(pubKeysBucket) bucket := tx.Bucket(pubKeysBucket)
return bucket.ForEach(func(pubKey []byte, _ []byte) error { return bucket.ForEach(func(pubKey []byte, _ []byte) error {