mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-11 04:52:08 +00:00
Trim managedFields in pod informer
Signed-off-by: Eric Lin <exlin@google.com>
This commit is contained in:
parent
5b2167482d
commit
f93bd699aa
@ -23,6 +23,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
v1 "k8s.io/api/core/v1"
|
v1 "k8s.io/api/core/v1"
|
||||||
|
"k8s.io/apimachinery/pkg/api/meta"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/util/wait"
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||||
@ -498,5 +499,16 @@ func newPodInformer(cs clientset.Interface, resyncPeriod time.Duration) cache.Sh
|
|||||||
tweakListOptions := func(options *metav1.ListOptions) {
|
tweakListOptions := func(options *metav1.ListOptions) {
|
||||||
options.FieldSelector = selector
|
options.FieldSelector = selector
|
||||||
}
|
}
|
||||||
return coreinformers.NewFilteredPodInformer(cs, metav1.NamespaceAll, resyncPeriod, cache.Indexers{}, tweakListOptions)
|
informer := coreinformers.NewFilteredPodInformer(cs, metav1.NamespaceAll, resyncPeriod, cache.Indexers{}, tweakListOptions)
|
||||||
|
|
||||||
|
// Dropping `.metadata.managedFields` to improve memory usage.
|
||||||
|
// The Extract workflow (i.e. `ExtractPod`) should be unused.
|
||||||
|
trim := func(obj interface{}) (interface{}, error) {
|
||||||
|
if accessor, err := meta.Accessor(obj); err == nil {
|
||||||
|
accessor.SetManagedFields(nil)
|
||||||
|
}
|
||||||
|
return obj, nil
|
||||||
|
}
|
||||||
|
informer.SetTransform(trim)
|
||||||
|
return informer
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user