mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-30 15:05:27 +00:00
Shorten scheduler/factory test by making backoff a struct var
This commit is contained in:
parent
e67786b2f0
commit
b38c25ebf4
@ -112,6 +112,9 @@ func (f *ConfigFactory) CreateFromKeys(predicateKeys, priorityKeys util.StringSe
|
|||||||
podBackoff := podBackoff{
|
podBackoff := podBackoff{
|
||||||
perPodBackoff: map[string]*backoffEntry{},
|
perPodBackoff: map[string]*backoffEntry{},
|
||||||
clock: realClock{},
|
clock: realClock{},
|
||||||
|
|
||||||
|
defaultDuration: 1 * time.Second,
|
||||||
|
maxDuration: 60 * time.Second,
|
||||||
}
|
}
|
||||||
|
|
||||||
return &scheduler.Config{
|
return &scheduler.Config{
|
||||||
@ -248,6 +251,8 @@ type podBackoff struct {
|
|||||||
perPodBackoff map[string]*backoffEntry
|
perPodBackoff map[string]*backoffEntry
|
||||||
lock sync.Mutex
|
lock sync.Mutex
|
||||||
clock clock
|
clock clock
|
||||||
|
defaultDuration time.Duration
|
||||||
|
maxDuration time.Duration
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *podBackoff) getEntry(podID string) *backoffEntry {
|
func (p *podBackoff) getEntry(podID string) *backoffEntry {
|
||||||
@ -255,7 +260,7 @@ func (p *podBackoff) getEntry(podID string) *backoffEntry {
|
|||||||
defer p.lock.Unlock()
|
defer p.lock.Unlock()
|
||||||
entry, ok := p.perPodBackoff[podID]
|
entry, ok := p.perPodBackoff[podID]
|
||||||
if !ok {
|
if !ok {
|
||||||
entry = &backoffEntry{backoff: 1 * time.Second}
|
entry = &backoffEntry{backoff: p.defaultDuration}
|
||||||
p.perPodBackoff[podID] = entry
|
p.perPodBackoff[podID] = entry
|
||||||
}
|
}
|
||||||
entry.lastUpdate = p.clock.Now()
|
entry.lastUpdate = p.clock.Now()
|
||||||
@ -266,8 +271,8 @@ func (p *podBackoff) getBackoff(podID string) time.Duration {
|
|||||||
entry := p.getEntry(podID)
|
entry := p.getEntry(podID)
|
||||||
duration := entry.backoff
|
duration := entry.backoff
|
||||||
entry.backoff *= 2
|
entry.backoff *= 2
|
||||||
if entry.backoff > 60*time.Second {
|
if entry.backoff > p.maxDuration {
|
||||||
entry.backoff = 60 * time.Second
|
entry.backoff = p.maxDuration
|
||||||
}
|
}
|
||||||
glog.V(4).Infof("Backing off %s for pod %s", duration.String(), podID)
|
glog.V(4).Infof("Backing off %s for pod %s", duration.String(), podID)
|
||||||
return duration
|
return duration
|
||||||
@ -282,7 +287,7 @@ func (p *podBackoff) gc() {
|
|||||||
defer p.lock.Unlock()
|
defer p.lock.Unlock()
|
||||||
now := p.clock.Now()
|
now := p.clock.Now()
|
||||||
for podID, entry := range p.perPodBackoff {
|
for podID, entry := range p.perPodBackoff {
|
||||||
if now.Sub(entry.lastUpdate) > 60*time.Second {
|
if now.Sub(entry.lastUpdate) > p.maxDuration {
|
||||||
delete(p.perPodBackoff, podID)
|
delete(p.perPodBackoff, podID)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -120,6 +120,8 @@ func TestDefaultErrorFunc(t *testing.T) {
|
|||||||
podBackoff := podBackoff{
|
podBackoff := podBackoff{
|
||||||
perPodBackoff: map[string]*backoffEntry{},
|
perPodBackoff: map[string]*backoffEntry{},
|
||||||
clock: &fakeClock{},
|
clock: &fakeClock{},
|
||||||
|
defaultDuration: 1 * time.Millisecond,
|
||||||
|
maxDuration: 1 * time.Second,
|
||||||
}
|
}
|
||||||
errFunc := factory.makeDefaultErrorFunc(&podBackoff, queue)
|
errFunc := factory.makeDefaultErrorFunc(&podBackoff, queue)
|
||||||
|
|
||||||
@ -205,6 +207,8 @@ func TestBackoff(t *testing.T) {
|
|||||||
backoff := podBackoff{
|
backoff := podBackoff{
|
||||||
perPodBackoff: map[string]*backoffEntry{},
|
perPodBackoff: map[string]*backoffEntry{},
|
||||||
clock: &clock,
|
clock: &clock,
|
||||||
|
defaultDuration: 1 * time.Second,
|
||||||
|
maxDuration: 60 * time.Second,
|
||||||
}
|
}
|
||||||
|
|
||||||
tests := []struct {
|
tests := []struct {
|
||||||
|
Loading…
Reference in New Issue
Block a user