Skip to content

Commit 44c1a0e

Browse files
authored
Merge pull request kubernetes#124667 from linxiulei/trim
controlplane/apiserver: Trim managedFields off self-requested informers
2 parents 66126bb + 3730f26 commit 44c1a0e

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

pkg/controlplane/apiserver/config.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import (
2525

2626
noopoteltrace "go.opentelemetry.io/otel/trace/noop"
2727

28+
"k8s.io/apimachinery/pkg/api/meta"
2829
"k8s.io/apimachinery/pkg/runtime"
2930
utilnet "k8s.io/apimachinery/pkg/util/net"
3031
"k8s.io/apimachinery/pkg/util/sets"
@@ -142,7 +143,13 @@ func BuildGenericConfig(
142143
lastErr = fmt.Errorf("failed to create real external clientset: %w", err)
143144
return
144145
}
145-
versionedInformers = clientgoinformers.NewSharedInformerFactory(clientgoExternalClient, 10*time.Minute)
146+
trim := func(obj interface{}) (interface{}, error) {
147+
if accessor, err := meta.Accessor(obj); err == nil && accessor.GetManagedFields() != nil {
148+
accessor.SetManagedFields(nil)
149+
}
150+
return obj, nil
151+
}
152+
versionedInformers = clientgoinformers.NewSharedInformerFactoryWithOptions(clientgoExternalClient, 10*time.Minute, clientgoinformers.WithTransform(trim))
146153

147154
if lastErr = s.Features.ApplyTo(genericConfig, clientgoExternalClient, versionedInformers); lastErr != nil {
148155
return

0 commit comments

Comments
 (0)