Skip to content
This repository was archived by the owner on May 25, 2023. It is now read-only.

Commit ab7e52e

Browse files
committed
Fix wrong caculation for deserved in proportion plugin
1 parent 38ad28b commit ab7e52e

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

pkg/scheduler/plugins/proportion/proportion.go

+5-2
Original file line numberDiff line numberDiff line change
@@ -124,17 +124,20 @@ func (pp *proportionPlugin) OnSessionOpen(ssn *framework.Session) {
124124
continue
125125
}
126126

127-
attr.deserved.Add(remaining.Clone().Multi(float64(attr.weight) / float64(totalWeight)))
127+
increasedDeserved := remaining.Clone().Multi(float64(attr.weight) / float64(totalWeight))
128+
oldDeserved := attr.deserved.Clone()
129+
attr.deserved.Add(increasedDeserved)
128130
if !attr.deserved.LessEqual(attr.request) {
129131
attr.deserved = helpers.Min(attr.deserved, attr.request)
130132
meet[attr.queueID] = struct{}{}
133+
increasedDeserved = attr.deserved.Clone().Sub(oldDeserved)
131134
}
132135
pp.updateShare(attr)
133136

134137
glog.V(4).Infof("The attributes of queue <%s> in proportion: deserved <%v>, allocate <%v>, request <%v>, share <%0.2f>",
135138
attr.name, attr.deserved, attr.allocated, attr.request, attr.share)
136139

137-
deserved.Add(attr.deserved)
140+
deserved.Add(increasedDeserved)
138141
}
139142

140143
remaining.Sub(deserved)

0 commit comments

Comments
 (0)