diff --git a/staging/src/k8s.io/endpointslice/util/controller_utils.go b/staging/src/k8s.io/endpointslice/util/controller_utils.go index 8b2bfb0bf38..99525fc5716 100644 --- a/staging/src/k8s.io/endpointslice/util/controller_utils.go +++ b/staging/src/k8s.io/endpointslice/util/controller_utils.go @@ -61,11 +61,12 @@ func GetPodServiceMemberships(serviceLister v1listers.ServiceLister, pod *v1.Pod // if the service has a nil selector this means selectors match nothing, not everything. continue } - key, err := cache.DeletionHandlingMetaNamespaceKeyFunc(service) - if err != nil { - return nil, err - } + if labels.ValidatedSetSelector(service.Spec.Selector).Matches(labels.Set(pod.Labels)) { + key, err := cache.DeletionHandlingMetaNamespaceKeyFunc(service) + if err != nil { + return nil, err + } set.Insert(key) } }