@@ -377,7 +377,7 @@ func (et *EvictionToken) syncRLocked(
377
377
ctx context.Context ,
378
378
) (stillValid bool , cachedEntry * cacheEntry , rawEntry * cache.Entry ) {
379
379
cachedEntry , rawEntry = et .rdc .getCachedRLocked (ctx , et .entry .desc .StartKey , false /* inverted */ )
380
- if cachedEntry == nil || ! descsCompatible (cachedEntry .Desc () , et .Desc ()) {
380
+ if cachedEntry == nil || ! descsCompatible (& cachedEntry .desc , et .Desc ()) {
381
381
et .clear ()
382
382
return false , nil , nil
383
383
}
@@ -438,7 +438,7 @@ func (et *EvictionToken) SyncTokenAndMaybeUpdateCache(
438
438
ri := roachpb.RangeInfo {
439
439
Desc : * rangeDesc ,
440
440
Lease : * l ,
441
- ClosedTimestampPolicy : et .entry .ClosedTimestampPolicy () ,
441
+ ClosedTimestampPolicy : et .entry .closedts ,
442
442
}
443
443
et .evictAndReplaceLocked (ctx , ri )
444
444
return false
@@ -605,7 +605,7 @@ func (rc *RangeCache) LookupRangeID(
605
605
if err != nil {
606
606
return 0 , err
607
607
}
608
- return tok .entry .Desc () .RangeID , nil
608
+ return tok .entry .desc .RangeID , nil
609
609
}
610
610
611
611
// Lookup presents a simpler interface for looking up a RangeDescriptor for a
@@ -640,7 +640,7 @@ func (rc *RangeCache) getCachedOverlappingRLocked(
640
640
defer from .release ()
641
641
var res []* cache.Entry
642
642
rc .rangeCache .cache .DoRangeReverseEntry (func (e * cache.Entry ) (exit bool ) {
643
- desc := rc .getValue (e ).Desc ()
643
+ desc := rc .getValue (e ).desc
644
644
if desc .StartKey .Equal (span .EndKey ) {
645
645
// Skip over descriptor starting at the end key, who'd supposed to be exclusive.
646
646
return false
@@ -1013,7 +1013,7 @@ func (rc *RangeCache) evictDescLocked(ctx context.Context, desc *roachpb.RangeDe
1013
1013
// Cache is empty; nothing to do.
1014
1014
return false
1015
1015
}
1016
- cachedDesc := cachedEntry .Desc ()
1016
+ cachedDesc := cachedEntry .desc
1017
1017
cachedNewer := cachedDesc .Generation > desc .Generation
1018
1018
if cachedNewer {
1019
1019
return false
@@ -1096,7 +1096,7 @@ func (rc *RangeCache) getCachedRLocked(
1096
1096
}
1097
1097
1098
1098
// Return nil if the key does not belong to the range.
1099
- if ! containsFn (entry .Desc () , key ) {
1099
+ if ! containsFn (& entry .desc , key ) {
1100
1100
return nil , nil
1101
1101
}
1102
1102
return entry , rawEntry
@@ -1142,7 +1142,7 @@ func (rc *RangeCache) insertLockedInner(ctx context.Context, rs []*cacheEntry) [
1142
1142
_ , ok := ent .desc .GetReplicaDescriptorByID (replID )
1143
1143
if ! ok {
1144
1144
log .Fatalf (ctx , "leaseholder replicaID: %d not part of descriptor: %s. lease: %s" ,
1145
- replID , ent .Desc () , ent .Lease () )
1145
+ replID , ent .desc , ent .lease )
1146
1146
}
1147
1147
}
1148
1148
// Note: we append the end key of each range to meta records
@@ -1195,10 +1195,10 @@ func (rc *RangeCache) clearOlderOverlapping(
1195
1195
func (rc * RangeCache ) clearOlderOverlappingLocked (
1196
1196
ctx context.Context , newEntry * cacheEntry ,
1197
1197
) (ok bool , newerEntry * cacheEntry ) {
1198
- log .VEventf (ctx , 2 , "clearing entries overlapping %s" , newEntry .Desc () )
1198
+ log .VEventf (ctx , 2 , "clearing entries overlapping %s" , newEntry .desc )
1199
1199
newest := true
1200
1200
var newerFound * cacheEntry
1201
- overlapping := rc .getCachedOverlappingRLocked (ctx , newEntry .Desc () .RSpan ())
1201
+ overlapping := rc .getCachedOverlappingRLocked (ctx , newEntry .desc .RSpan ())
1202
1202
for _ , e := range overlapping {
1203
1203
entry := rc .getValue (e )
1204
1204
if newEntry .overrides (entry ) {
@@ -1208,7 +1208,7 @@ func (rc *RangeCache) clearOlderOverlappingLocked(
1208
1208
rc .delEntryLocked (e )
1209
1209
} else {
1210
1210
newest = false
1211
- if descsCompatible (entry .Desc (), newEntry .Desc () ) {
1211
+ if descsCompatible (& entry .desc , & newEntry .desc ) {
1212
1212
newerFound = entry
1213
1213
// We've found a similar descriptor in the cache; there can't be any
1214
1214
// other overlapping ones so let's stop the iteration.
@@ -1230,7 +1230,7 @@ func (rc *RangeCache) swapEntryLocked(
1230
1230
) {
1231
1231
if newEntry != nil {
1232
1232
old := rc .getValue (oldEntry )
1233
- if ! descsCompatible (old .Desc (), newEntry .Desc () ) {
1233
+ if ! descsCompatible (& old .desc , & newEntry .desc ) {
1234
1234
log .Fatalf (ctx , "attempting to swap non-compatible descs: %s vs %s" ,
1235
1235
old , newEntry )
1236
1236
}
@@ -1244,7 +1244,7 @@ func (rc *RangeCache) swapEntryLocked(
1244
1244
}
1245
1245
1246
1246
func (rc * RangeCache ) addEntryLocked (entry * cacheEntry ) {
1247
- key := newRangeCacheKey (entry .Desc () .StartKey )
1247
+ key := newRangeCacheKey (entry .desc .StartKey )
1248
1248
rc .rangeCache .cache .Add (key , entry )
1249
1249
}
1250
1250
@@ -1300,45 +1300,6 @@ type cacheEntry struct {
1300
1300
closedts roachpb.RangeClosedTimestampPolicy
1301
1301
}
1302
1302
1303
- func (e cacheEntry ) String () string {
1304
- return fmt .Sprintf ("desc:%s, lease:%s" , e .Desc (), e .lease )
1305
- }
1306
-
1307
- // Desc returns the cached descriptor. Note that, besides being possibly stale,
1308
- // this descriptor also might not represent a descriptor that was ever
1309
- // committed. See DescSpeculative().
1310
- func (e * cacheEntry ) Desc () * roachpb.RangeDescriptor {
1311
- return & e .desc
1312
- }
1313
-
1314
- // Leaseholder returns the cached leaseholder replica, if known. Returns nil if
1315
- // the leaseholder is not known.
1316
- func (e * cacheEntry ) Leaseholder () * roachpb.ReplicaDescriptor {
1317
- if e .lease .Empty () {
1318
- return nil
1319
- }
1320
- return & e .lease .Replica
1321
- }
1322
-
1323
- // Lease returns the cached lease, if known. Returns nil if no lease is known.
1324
- // It's possible for a leaseholder to be known, but not a full lease, in which
1325
- // case Leaseholder() returns non-nil but Lease() returns nil.
1326
- func (e * cacheEntry ) Lease () * roachpb.Lease {
1327
- if e .lease .Empty () {
1328
- return nil
1329
- }
1330
- if e .LeaseSpeculative () {
1331
- return nil
1332
- }
1333
- return & e .lease
1334
- }
1335
-
1336
- // ClosedTimestampPolicy returns the cached understanding of the range's closed
1337
- // timestamp policy. If no policy is known, LAG_BY_CLUSTER_SETTING is returned.
1338
- func (e * cacheEntry ) ClosedTimestampPolicy () roachpb.RangeClosedTimestampPolicy {
1339
- return e .closedts
1340
- }
1341
-
1342
1303
// DescSpeculative returns true if the descriptor in the entry is "speculative"
1343
1304
// - i.e. it doesn't correspond to a committed value. Such descriptors have been
1344
1305
// inserted in the cache with Generation=0.
@@ -1358,11 +1319,15 @@ func (e *cacheEntry) LeaseSpeculative() bool {
1358
1319
return e .lease .Speculative ()
1359
1320
}
1360
1321
1322
+ func (e cacheEntry ) String () string {
1323
+ return fmt .Sprintf ("desc:%s, lease:%s" , e .desc , e .lease )
1324
+ }
1325
+
1361
1326
func (e * cacheEntry ) toRangeInfo () roachpb.RangeInfo {
1362
1327
return roachpb.RangeInfo {
1363
1328
Desc : e .desc ,
1364
1329
Lease : e .lease ,
1365
- ClosedTimestampPolicy : e .ClosedTimestampPolicy () ,
1330
+ ClosedTimestampPolicy : e .closedts ,
1366
1331
}
1367
1332
}
1368
1333
@@ -1381,8 +1346,8 @@ func (e *cacheEntry) toRangeInfo() roachpb.RangeInfo {
1381
1346
// "speculative" (sequence=0).
1382
1347
func (e * cacheEntry ) overrides (o * cacheEntry ) bool {
1383
1348
if util .RaceEnabled {
1384
- if _ , err := e .Desc () .RSpan ().Intersect (o .Desc () .RSpan ()); err != nil {
1385
- panic (fmt .Sprintf ("descriptors don't intersect: %s vs %s" , e .Desc () , o .Desc () ))
1349
+ if _ , err := e .desc .RSpan ().Intersect (o .desc .RSpan ()); err != nil {
1350
+ panic (fmt .Sprintf ("descriptors don't intersect: %s vs %s" , e .desc , o .desc ))
1386
1351
}
1387
1352
}
1388
1353
@@ -1395,9 +1360,9 @@ func (e *cacheEntry) overrides(o *cacheEntry) bool {
1395
1360
// If two RangeDescriptors overlap and have the same Generation, they must
1396
1361
// be referencing the same range, in which case their lease sequences are
1397
1362
// comparable.
1398
- if e .Desc () .RangeID != o .Desc () .RangeID {
1363
+ if e .desc .RangeID != o .desc .RangeID {
1399
1364
panic (fmt .Sprintf ("overlapping descriptors with same gen but different IDs: %s vs %s" ,
1400
- e .Desc () , o .Desc () ))
1365
+ e .desc , o .desc ))
1401
1366
}
1402
1367
1403
1368
if res := compareEntryLeases (o , e ); res != 0 {
@@ -1421,8 +1386,8 @@ func (e *cacheEntry) overrides(o *cacheEntry) bool {
1421
1386
// older; this matches the semantics of b.overrides(a).
1422
1387
func compareEntryDescs (a , b * cacheEntry ) int {
1423
1388
if util .RaceEnabled {
1424
- if _ , err := a .Desc () .RSpan ().Intersect (b .Desc () .RSpan ()); err != nil {
1425
- panic (fmt .Sprintf ("descriptors don't intersect: %s vs %s" , a .Desc () , b .Desc () ))
1389
+ if _ , err := a .desc .RSpan ().Intersect (b .desc .RSpan ()); err != nil {
1390
+ panic (fmt .Sprintf ("descriptors don't intersect: %s vs %s" , a .desc , b .desc ))
1426
1391
}
1427
1392
}
1428
1393
@@ -1434,10 +1399,10 @@ func compareEntryDescs(a, b *cacheEntry) int {
1434
1399
return - 1
1435
1400
}
1436
1401
1437
- if a .Desc () .Generation < b .Desc () .Generation {
1402
+ if a .desc .Generation < b .desc .Generation {
1438
1403
return - 1
1439
1404
}
1440
- if a .Desc () .Generation > b .Desc () .Generation {
1405
+ if a .desc .Generation > b .desc .Generation {
1441
1406
return 1
1442
1407
}
1443
1408
return 0
@@ -1467,10 +1432,10 @@ func compareEntryLeases(a, b *cacheEntry) int {
1467
1432
return - 1
1468
1433
}
1469
1434
1470
- if a .Lease () .Sequence < b .Lease () .Sequence {
1435
+ if a .lease .Sequence < b .lease .Sequence {
1471
1436
return - 1
1472
1437
}
1473
- if a .Lease () .Sequence > b .Lease () .Sequence {
1438
+ if a .lease .Sequence > b .lease .Sequence {
1474
1439
return 1
1475
1440
}
1476
1441
return 0
@@ -1502,9 +1467,9 @@ func compareEntryLeases(a, b *cacheEntry) int {
1502
1467
func (e * cacheEntry ) maybeUpdate (
1503
1468
ctx context.Context , l * roachpb.Lease , rangeDesc * roachpb.RangeDescriptor ,
1504
1469
) (updated , updatedLease bool , newEntry * cacheEntry ) {
1505
- if ! descsCompatible (e . Desc () , rangeDesc ) {
1470
+ if ! descsCompatible (& e . desc , rangeDesc ) {
1506
1471
log .Fatalf (ctx , "attempting to update by comparing non-compatible descs: %s vs %s" ,
1507
- e .Desc () , rangeDesc )
1472
+ e .desc , rangeDesc )
1508
1473
}
1509
1474
1510
1475
newEntry = & cacheEntry {
@@ -1562,7 +1527,7 @@ func (e *cacheEntry) maybeUpdate(
1562
1527
2 ,
1563
1528
"incompatible leaseholder id: %d/descriptor %v pair; eliding lease update to the cache" ,
1564
1529
newEntry .lease .Replica .ReplicaID ,
1565
- newEntry .Desc () ,
1530
+ newEntry .desc ,
1566
1531
)
1567
1532
newEntry .lease = roachpb.Lease {}
1568
1533
updatedLease = false
0 commit comments