Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automated cherry pick of #120334: scheduler: start scheduling attempt with clean #120557

Commits on Sep 11, 2023

  1. scheduler: start scheduling attempt with clean UnschedulablePlugins

    When some plugin was registered as "unschedulable" in some previous scheduling
    attempt, it kept that attribute for a pod forever. When that plugin then later
    failed with an error that requires backoff, the pod was incorrectly moved to the
    "unschedulable" queue where it got stuck until the periodic flushing because
    there was no event that the plugin was waiting for.
    
    Here's an example where that happened:
    
         framework.go:1280: E0831 20:03:47.184243] Reserve/DynamicResources: Plugin failed err="Operation cannot be fulfilled on podschedulingcontexts.resource.k8s.io \"test-dragxd5c\": the object has been modified; please apply your changes to the latest version and try again" node="scheduler-perf-dra-7l2v2" plugin="DynamicResources" pod="test/test-dragxd5c"
        schedule_one.go:1001: E0831 20:03:47.184345] Error scheduling pod; retrying err="running Reserve plugin \"DynamicResources\": Operation cannot be fulfilled on podschedulingcontexts.resource.k8s.io \"test-dragxd5c\": the object has been modified; please apply your changes to the latest version and try again" pod="test/test-dragxd5c"
        ...
        scheduling_queue.go:745: I0831 20:03:47.198968] Pod moved to an internal scheduling queue pod="test/test-dragxd5c" event="ScheduleAttemptFailure" queue="Unschedulable" schedulingCycle=9576 hint="QueueSkip"
    
    Pop still needs the information about unschedulable plugins to update the
    UnschedulableReason metric. It can reset that information before returning the
    PodInfo for the next scheduling attempt.
    pohly committed Sep 11, 2023
    Configuration menu
    Copy the full SHA
    ad177b6 View commit details
    Browse the repository at this point in the history