From e7962ffae262d9b96724afd7942943e1e907b18e Mon Sep 17 00:00:00 2001 From: Tony Xiao Date: Wed, 5 Nov 2025 17:39:39 -0500 Subject: [PATCH] fix(tracemetrics): Properly fall back to high accuracy This would return 1 row with some null data so make sure to check the count is 0. --- .../explore/metrics/hooks/useMetricAggregatesTable.tsx | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/static/app/views/explore/metrics/hooks/useMetricAggregatesTable.tsx b/static/app/views/explore/metrics/hooks/useMetricAggregatesTable.tsx index 03aca0b2da63e1..a831312529d1a0 100644 --- a/static/app/views/explore/metrics/hooks/useMetricAggregatesTable.tsx +++ b/static/app/views/explore/metrics/hooks/useMetricAggregatesTable.tsx @@ -12,6 +12,7 @@ import { } from 'sentry/views/explore/hooks/useProgressiveQuery'; import type {TraceMetric} from 'sentry/views/explore/metrics/metricQuery'; import {useMetricVisualize} from 'sentry/views/explore/metrics/metricsQueryParams'; +import {TraceMetricKnownFieldKey} from 'sentry/views/explore/metrics/types'; import { useQueryParamsAggregateSortBys, useQueryParamsGroupBys, @@ -32,6 +33,8 @@ interface MetricAggregatesTableResult { result: ReturnType>; } +const COUNT_AGGREGATE = `count(${TraceMetricKnownFieldKey.METRIC_NAME})`; + export function useMetricAggregatesTable({ enabled, limit, @@ -41,7 +44,10 @@ export function useMetricAggregatesTable({ const canTriggerHighAccuracy = useCallback( (result: ReturnType['result']) => { const canGoToHigherAccuracyTier = result.meta?.dataScanned === 'partial'; - const hasData = defined(result.data) && result.data.length > 0; + const hasData = + defined(result.data) && + (result.data.length > 1 || + (result.data.length === 1 && Boolean(result.data[0][COUNT_AGGREGATE]))); return !hasData && canGoToHigherAccuracyTier; }, [] @@ -97,7 +103,7 @@ function useMetricAggregatesTableImp({ const discoverQuery: NewQuery = { id: undefined, name: 'Explore - Metric Aggregates', - fields, + fields: [...fields, COUNT_AGGREGATE], orderby: sortBys.map(formatSort), query, version: 2,