k3s/pkg
Jonathan Basseri f5ab6d5ad4 [PATCH] Fix equiv. cache invalidation of Node condition.
Equivalence cache for CheckNodeConditionPred becomes invalid when
Node.Spec.Unschedulable changes. This can happen even if
Node.Status.Conditions does not change, so move the logic around.

This logic is covered by integration test
"test/integration/scheduler".TestUnschedulableNodes but equivalence
cache is currently skipped when test pods have no OwnerReference.

Add benchmark for equivalence hashing.

Change equivalence hash function.

This changes the equivalence class hashing function to use as inputs all
the Pod fields which are read by FitPredicates. Before we used a
combination of OwnerReference and PersistentVolumeClaim info, which was
a close approximation. The new method ensures that hashing remains
correct regardless of controller behavior.

The PVCSet field can be removed from equivalencePod because it is
implicitly included in the Volume list.

Tests are now broken.

Move equivalence class hash code.

This moves the equivalence hashing code from
algorithm/predicates/utils.go to core/equivalence_cache.go.

In the process, making the hashing function and hashing function factory
both injectable dependencies is removed.

Fix equivalence cache hash tests.

Co-authored-by: Jonathan Basseri <misterikkit@google.com>
Co-authored-by: Harry Zhang <resouer@gmail.com>
2018-03-04 13:02:28 -08:00
..
api API Changes for RunAsGroup and Implementation and e2e 2018-02-28 22:09:56 -08:00
apis Bugfix: Fix ordering of ValidateObjectMetaUpdate method arguments for PodTemplate validation 2018-03-02 14:36:20 +11:00
auth Autogenerated: hack/update-bazel.sh 2018-02-16 13:43:01 -08:00
capabilities Autogenerated: hack/update-bazel.sh 2018-02-16 13:43:01 -08:00
client Run hack/update-all.sh 2018-02-26 17:16:14 -08:00
cloudprovider Set default vmtype to standard if not set 2018-03-01 13:48:54 +08:00
controller Merge pull request #60648 from bskiba/hpa-unready 2018-03-02 14:25:54 -08:00
credentialprovider Autogenerated: hack/update-bazel.sh 2018-02-16 13:43:01 -08:00
features Merge pull request #60159 from jingxu97/Feb/localephemeralBeta 2018-03-02 18:35:49 -08:00
fieldpath Autogenerated: hack/update-bazel.sh 2018-02-16 13:43:01 -08:00
generated generated 2018-02-27 21:21:14 -08:00
kubeapiserver Merge pull request #55856 from miaoyq/replace-for-with-sets 2018-02-28 00:00:32 -08:00
kubectl Merge pull request #60572 from charrywanganthony/show-all_descr 2018-03-01 07:42:54 -08:00
kubelet Merge pull request #60159 from jingxu97/Feb/localephemeralBeta 2018-03-02 18:35:49 -08:00
kubemark add nodeport-addresses flag for kube-proxy 2018-02-26 23:48:46 +08:00
master implement token authenticator for new id tokens 2018-02-27 17:20:46 -08:00
printers Add missing table converters for server side printing 2018-02-28 17:27:45 +01:00
probe Autogenerated: hack/update-bazel.sh 2018-02-16 13:43:01 -08:00
proxy Merge pull request #56880 from MrHohn/kube-proxy-ipv6-fix 2018-02-28 00:00:29 -08:00
quota Merge pull request #57375 from tianshapjq/cleanup-useless-func-core/services.go 2018-02-28 01:12:29 -08:00
registry Merge pull request #60362 from lcfang/test0224 2018-03-01 07:42:48 -08:00
routes Remove /ui/ redirect 2018-02-12 10:54:33 -05:00
scheduler [PATCH] Fix equiv. cache invalidation of Node condition. 2018-03-04 13:02:28 -08:00
security Autogenerated: hack/update-bazel.sh 2018-02-16 13:43:01 -08:00
securitycontext API Changes for RunAsGroup and Implementation and e2e 2018-02-28 22:09:56 -08:00
serviceaccount implement token authenticator for new id tokens 2018-02-27 17:20:46 -08:00
ssh Autogenerated: hack/update-bazel.sh 2018-02-16 13:43:01 -08:00
util Merge pull request #56880 from MrHohn/kube-proxy-ipv6-fix 2018-02-28 00:00:29 -08:00
version Require boilerplate on Bazel Skylark source files 2018-02-16 13:44:04 -08:00
volume add remount logic for azure file plugin 2018-03-01 07:46:07 +00:00
watch/json
.import-restrictions
BUILD Remove pkg/client/unversioned 2018-02-21 13:08:11 +01:00
OWNERS