Skip to content

Commit

Permalink
avoid getting region twice
Browse files Browse the repository at this point in the history
Signed-off-by: Ryan Leung <[email protected]>
  • Loading branch information
rleungx committed Feb 13, 2025
1 parent e893032 commit fd217a1
Showing 1 changed file with 4 additions and 12 deletions.
16 changes: 4 additions & 12 deletions pkg/core/region.go
Original file line number Diff line number Diff line change
Expand Up @@ -1418,22 +1418,14 @@ func SortedPeersStatsEqual(peersA, peersB []*pdpb.PeerStats) bool {
func (r *RegionsInfo) GetRegionByKey(regionKey []byte) *RegionInfo {
r.t.RLock()
defer r.t.RUnlock()
region := r.tree.search(regionKey)
if region == nil {
return nil
}
return r.getRegionLocked(region.GetID())
return r.tree.search(regionKey)
}

// GetPrevRegionByKey searches previous RegionInfo from regionTree
func (r *RegionsInfo) GetPrevRegionByKey(regionKey []byte) *RegionInfo {
r.t.RLock()
defer r.t.RUnlock()
region := r.tree.searchPrev(regionKey)
if region == nil {
return nil
}
return r.getRegionLocked(region.GetID())
return r.tree.searchPrev(regionKey)
}

// GetRegions gets all RegionInfo from regionMap
Expand Down Expand Up @@ -2116,10 +2108,10 @@ func (r *RegionsInfo) GetAdjacentRegions(region *RegionInfo) (*RegionInfo, *Regi
var prev, next *RegionInfo
// check key to avoid key range hole
if p != nil && bytes.Equal(p.GetEndKey(), region.GetStartKey()) {
prev = r.getRegionLocked(p.GetID())
prev = p.RegionInfo
}
if n != nil && bytes.Equal(region.GetEndKey(), n.GetStartKey()) {
next = r.getRegionLocked(n.GetID())
next = n.RegionInfo
}
return prev, next
}
Expand Down

0 comments on commit fd217a1

Please sign in to comment.