Merge pull request #130316 from googs1025/flake/TestSchedulerGuaranteeNonNilNodeInSchedulingCycle

flake(scheduler): fix allWaitSchedulingPods data race failed
This commit is contained in:
Kubernetes Prow Robot 2025-02-20 21:04:26 -08:00 committed by GitHub
commit de7708f06e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -638,17 +638,22 @@ func TestSchedulerGuaranteeNonNilNodeInSchedulingCycle(t *testing.T) {
for i := 0; i < waitSchedulingPodNumber; i++ {
allWaitSchedulingPods.Insert(fmt.Sprintf("pod%d", i))
}
var wg sync.WaitGroup
var (
wg sync.WaitGroup
mu sync.Mutex
)
wg.Add(waitSchedulingPodNumber)
stopFn, err := broadcaster.StartEventWatcher(func(obj runtime.Object) {
e, ok := obj.(*eventsv1.Event)
if !ok || (e.Reason != "Scheduled" && e.Reason != "FailedScheduling") {
return
}
mu.Lock()
if allWaitSchedulingPods.Has(e.Regarding.Name) {
wg.Done()
allWaitSchedulingPods.Delete(e.Regarding.Name)
}
mu.Unlock()
})
if err != nil {
t.Fatal(err)