From 74a241b702a595b86cabc5350bb5bf7c52d8e27b Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Fri, 22 May 2026 09:14:45 +0300 Subject: yb reject aggregate rows for pid tid filters --- internal/eventloop_aggregate_test.go | 40 ++++++++++++++++++++++-------------- 1 file changed, 25 insertions(+), 15 deletions(-) (limited to 'internal/eventloop_aggregate_test.go') diff --git a/internal/eventloop_aggregate_test.go b/internal/eventloop_aggregate_test.go index cfa9bb9..582b598 100644 --- a/internal/eventloop_aggregate_test.go +++ b/internal/eventloop_aggregate_test.go @@ -81,23 +81,33 @@ func TestFilterAggregateRowsForIngestGatesWhenUnsupportedFilterActive(t *testing } } -func TestFilterAggregateRowsForIngestAllowsKernelEqPIDFilter(t *testing.T) { - el := &eventLoop{ - cfg: eventLoopConfig{ - aggregateOnlyTraceIDs: map[types.TraceId]struct{}{ - types.SYS_ENTER_FUTEX: {}, - }, - }, +func TestFilterAggregateRowsForIngestRejectsPIDAndTIDFilters(t *testing.T) { + tests := []struct { + name string + filter globalfilter.Filter + }{ + {name: "pid", filter: globalfilter.Filter{PID: globalfilter.NewEqFilter(42)}}, + {name: "tid", filter: globalfilter.Filter{TID: globalfilter.NewEqFilter(43)}}, } - el.SetFilter(globalfilter.Filter{ - PID: globalfilter.NewEqFilter(42), - }) - got := el.filterAggregateRowsForIngest([]statsengine.SyscallAggregate{ - {TraceID: types.SYS_ENTER_FUTEX, Count: 2}, - }) - if len(got) != 1 { - t.Fatalf("expected row with PID eq filter, got %+v", got) + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + el := &eventLoop{ + cfg: eventLoopConfig{ + aggregateOnlyTraceIDs: map[types.TraceId]struct{}{ + types.SYS_ENTER_FUTEX: {}, + }, + }, + } + el.SetFilter(tt.filter) + + got := el.filterAggregateRowsForIngest([]statsengine.SyscallAggregate{ + {TraceID: types.SYS_ENTER_FUTEX, Count: 2}, + }) + if len(got) != 0 { + t.Fatalf("expected no aggregate rows with %s filter, got %+v", tt.name, got) + } + }) } } -- cgit v1.2.3