• Kubernetes Submit Queue's avatar
    Merge pull request #46223 from smarterclayton/scheduler_max · 8e07e61a
    Kubernetes Submit Queue authored
    Automatic merge from submit-queue (batch tested with PRs 45766, 46223)
    
    Scheduler should use a shared informer, and fix broken watch behavior for cached watches
    
    Can be used either from a true shared informer or a local shared
    informer created just for the scheduler.
    
    Fixes a bug in the cache watcher where we were returning the "current" object from a watch event, not the historic event.  This means that we broke behavior when introducing the watch cache.  This may have API implications for filtering watch consumers - but on the other hand, it prevents clients filtering from seeing objects outside of their watch correctly, which can lead to other subtle bugs.
    
    ```release-note
    The behavior of some watch calls to the server when filtering on fields was incorrect.  If watching objects with a filter, when an update was made that no longer matched the filter a DELETE event was correctly sent.  However, the object that was returned by that delete was not the (correct) version before the update, but instead, the newer version.  That meant the new object was not matched by the filter.  This was a regression from behavior between cached watches on the server side and uncached watches, and thus broke downstream API clients.
    ```
    8e07e61a
Name
Last commit
Last update
..
apiserver Loading commit data...
auth Loading commit data...
client Loading commit data...
configmap Loading commit data...
defaulttolerationseconds Loading commit data...
deployment Loading commit data...
etcd Loading commit data...
evictions Loading commit data...
examples Loading commit data...
federation Loading commit data...
framework Loading commit data...
garbagecollector Loading commit data...
kubectl Loading commit data...
master Loading commit data...
metrics Loading commit data...
objectmeta Loading commit data...
openshift Loading commit data...
pods Loading commit data...
quota Loading commit data...
replicaset Loading commit data...
replicationcontroller Loading commit data...
scheduler Loading commit data...
scheduler_perf Loading commit data...
secrets Loading commit data...
serviceaccount Loading commit data...
storageclasses Loading commit data...
thirdparty Loading commit data...
ttlcontroller Loading commit data...
volume Loading commit data...
BUILD Loading commit data...
benchmark-controller.json Loading commit data...
doc.go Loading commit data...
utils.go Loading commit data...