Repository navigation
fix: explore filters break when the explore's metrics_view differs in case from the resource name - #9955
Merged
Conversation
…in case from the resource name Resource names are case-insensitive in the runtime, so an explore whose `metrics_view` is written in a different case than the metrics view file still reconciles. On the frontend, `MetricsViewsProvider` looked the metrics view up with a case-sensitive comparison and came up empty, so the filter bar had nothing to offer and click-to-filter no-oped. `ExploreDashboardConfigProvider` also named the metrics view by the explore's reference while the explore routes use the resource name, so the filter expression was keyed under a name the dashboard never read and queries ran unfiltered. - Resolve the metrics view case-insensitively in `MetricsViewsProvider`. - Name the metrics view by its resource name in `ExploreDashboardConfigProvider`. - Let the explore fetch mock carry a metrics view resource name that differs from the explore's reference.
AdityaHegde
approved these changes
Sep 25, 2026
nishantmonu51
added a commit
that referenced
this pull request
Sep 25, 2026
…in case from the resource name (#9955) Resource names are case-insensitive in the runtime, so an explore whose `metrics_view` is written in a different case than the metrics view file still reconciles. On the frontend, `MetricsViewsProvider` looked the metrics view up with a case-sensitive comparison and came up empty, so the filter bar had nothing to offer and click-to-filter no-oped. `ExploreDashboardConfigProvider` also named the metrics view by the explore's reference while the explore routes use the resource name, so the filter expression was keyed under a name the dashboard never read and queries ran unfiltered. - Resolve the metrics view case-insensitively in `MetricsViewsProvider`. - Name the metrics view by its resource name in `ExploreDashboardConfigProvider`. - Let the explore fetch mock carry a metrics view resource name that differs from the explore's reference.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Explore dashboards lose all filtering when the explore's
metrics_viewvalue is written in a different case than the metrics view resource name. Resource names are case-insensitive in the runtime, so the explore reconciles and renders, but on the frontend clicking a leaderboard value does nothing and the+filter menu shows "No results found". Introduced by the unified expression filter refactor in #9746 (shipped in v0.90.0).MetricsViewsProvidermatched the metrics view against the resource list with a case-sensitive comparison, so the provider exposed no dimensions or measures. It now resolves the name case-insensitively while keeping its maps keyed by the requested name.ExploreDashboardConfigProvidernamed the metrics view by the explore's reference, while the explore routes andDashboard.svelteuse the resource's own name from theGetExploreresponse. The filter expression ended up keyed under a name the dashboard never read, so once the chip appeared the queries still ran unfiltered. The provider now uses the resource name.DashboardFetchMocks.mockMetricsExploretakes an optional metrics view resource name so tests can model the mismatch the way the runtime returns it.Steps to reproduce
AUction_metrics.yaml.metrics_view: auction_metrics.+filter menu. Before this fix nothing gets filtered and the menu is empty.Checklist: