Merge pull request #9813 from mgates/move_lease_sorting_outside_lock

leases: Move lease sorting outside of lock
This commit is contained in:
Xiang Li 2018-06-06 09:39:46 -07:00 committed by GitHub
commit 5d461a9e1b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -335,7 +335,6 @@ func (le *lessor) unsafeLeases() []*Lease {
for _, l := range le.leaseMap {
leases = append(leases, l)
}
sort.Sort(leasesByExpiry(leases))
return leases
}
@ -343,6 +342,7 @@ func (le *lessor) Leases() []*Lease {
le.mu.RLock()
ls := le.unsafeLeases()
le.mu.RUnlock()
sort.Sort(leasesByExpiry(ls))
return ls
}
@ -366,6 +366,7 @@ func (le *lessor) Promote(extend time.Duration) {
// adjust expiries in case of overlap
leases := le.unsafeLeases()
sort.Sort(leasesByExpiry(leases))
baseWindow := leases[0].Remaining()
nextWindow := baseWindow + time.Second