You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by nf...@apache.org on 2019/09/23 16:35:21 UTC
[camel-k] 02/02: perf(GC): Only enlist resources that support the
create verb for garbage collecting
This is an automated email from the ASF dual-hosted git repository.
nferraro pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit e3a95a65277e1d9002cdffddc1c9a3cf62ecc477
Author: Antonin Stefanutti <an...@stefanutti.fr>
AuthorDate: Mon Sep 23 14:22:29 2019 +0200
perf(GC): Only enlist resources that support the create verb for garbage collecting
---
pkg/util/kubernetes/util.go | 17 ++++++++---------
1 file changed, 8 insertions(+), 9 deletions(-)
diff --git a/pkg/util/kubernetes/util.go b/pkg/util/kubernetes/util.go
index 3ba6bf7..7ac67e0 100644
--- a/pkg/util/kubernetes/util.go
+++ b/pkg/util/kubernetes/util.go
@@ -238,11 +238,13 @@ func GetDiscoveryTypesWithVerbs(client client.Client, verbs []string) ([]metav1.
// LookUpResources --
func LookUpResources(ctx context.Context, client client.Client, namespace string, selectors []string) ([]unstructured.Unstructured, error) {
- // We only take types that support the "list" verb as they are going
- // to be iterated and a list query with labels selector is performed
- // for each of them. That prevents from performing queries that we know
- // are going to return "MethodNotAllowed".
- types, err := GetDiscoveryTypesWithVerbs(client, []string{"list"})
+ // We only take types that support the "create" and "list" verbs as:
+ // - they have to be created to be deleted :) so that excludes read-only
+ // resources, e.g., aggregated APIs
+ // - they are going to be iterated and a list query with labels selector
+ // is performed for each of them. That prevents from performing queries
+ // that we know are going to return "MethodNotAllowed".
+ types, err := GetDiscoveryTypesWithVerbs(client, []string{"create", "list"})
if err != nil {
return nil, err
}
@@ -269,10 +271,7 @@ func LookUpResources(ctx context.Context, client client.Client, namespace string
},
}
if err := client.List(ctx, &options, &list); err != nil {
- if k8serrors.IsNotFound(err) ||
- k8serrors.IsForbidden(err) ||
- k8serrors.IsMethodNotSupported(err) ||
- k8serrors.IsServiceUnavailable(err) {
+ if k8serrors.IsNotFound(err) || k8serrors.IsForbidden(err) {
continue
}
return nil, err