From 5b2ef1fff3100f84995fc105b5054bd487277d68 Mon Sep 17 00:00:00 2001 From: Calum Murray Date: Wed, 27 Sep 2023 15:58:29 -0400 Subject: [PATCH] Improved suffix benchmark performance Signed-off-by: Calum Murray --- pkg/eventfilter/subscriptionsapi/suffix_filter.go | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/pkg/eventfilter/subscriptionsapi/suffix_filter.go b/pkg/eventfilter/subscriptionsapi/suffix_filter.go index 2eac97e7418..fe41bf6c1f8 100644 --- a/pkg/eventfilter/subscriptionsapi/suffix_filter.go +++ b/pkg/eventfilter/subscriptionsapi/suffix_filter.go @@ -50,11 +50,6 @@ func (filter *suffixFilter) Filter(ctx context.Context, event cloudevents.Event) if filter == nil { return eventfilter.NoFilter } - for attribute, value := range filter.filters { - if attribute == "" || value == "" { - return eventfilter.NoFilter - } - } logger := logging.FromContext(ctx) logger.Debugw("Performing a suffix match ", zap.Any("filters", filter.filters), zap.Any("event", event)) for k, v := range filter.filters { @@ -64,7 +59,11 @@ func (filter *suffixFilter) Filter(ctx context.Context, event cloudevents.Event) zap.Any("event", event)) return eventfilter.FailFilter } - if !strings.HasSuffix(fmt.Sprintf("%v", value), v) { + var s string + if s, ok = value.(string); !ok { + s = fmt.Sprintf("%v", value) + } + if !strings.HasSuffix(s, v) { return eventfilter.FailFilter } }