Skip to content

Commit 31fbc37

Browse files
committed
batcheval: generalize checkNotLearnerReplica
This now errors out whenever the replica is not a voter, which is more robust as new replica types are introduced (which generally should not automatically become eligible to receive leases). Release note: None
1 parent eb7d146 commit 31fbc37

3 files changed

Lines changed: 4 additions & 4 deletions

File tree

pkg/storage/batcheval/cmd_lease.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,12 @@ func newFailedLeaseTrigger(isTransfer bool) result.Result {
4242
return trigger
4343
}
4444

45-
func checkNotLearnerReplica(rec EvalContext) error {
45+
func checkCanReceiveLease(rec EvalContext) error {
4646
repDesc, ok := rec.Desc().GetReplicaDescriptor(rec.StoreID())
4747
if !ok {
4848
return errors.AssertionFailedf(
4949
`could not find replica for store %s in %s`, rec.StoreID(), rec.Desc())
50-
} else if t := repDesc.GetType(); t == roachpb.ReplicaType_LEARNER {
50+
} else if t := repDesc.GetType(); t != roachpb.ReplicaType_VOTER {
5151
return errors.Errorf(`cannot transfer lease to replica of type %s`, t)
5252
}
5353
return nil

pkg/storage/batcheval/cmd_lease_request.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ func RequestLease(
4747
//
4848
// If this check is removed at some point, the filtering of learners on the
4949
// sending side would have to be removed as well.
50-
if err := checkNotLearnerReplica(cArgs.EvalCtx); err != nil {
50+
if err := checkCanReceiveLease(cArgs.EvalCtx); err != nil {
5151
return newFailedLeaseTrigger(false /* isTransfer */), err
5252
}
5353

pkg/storage/batcheval/cmd_lease_transfer.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ func TransferLease(
4646
//
4747
// If this check is removed at some point, the filtering of learners on the
4848
// sending side would have to be removed as well.
49-
if err := checkNotLearnerReplica(cArgs.EvalCtx); err != nil {
49+
if err := checkCanReceiveLease(cArgs.EvalCtx); err != nil {
5050
return newFailedLeaseTrigger(true /* isTransfer */), err
5151
}
5252

0 commit comments

Comments
 (0)