Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion src/sentry/features/temporary.py
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,6 @@ def register_temporary_features(manager: FeatureManager) -> None:
manager.add("organizations:invite-members", OrganizationFeature, FeatureHandlerStrategy.INTERNAL, default=True, api_expose=True)
# Enable rate limits for inviting members.
manager.add("organizations:invite-members-rate-limits", OrganizationFeature, FeatureHandlerStrategy.INTERNAL, default=True, api_expose=False)
manager.add("organizations:mep-use-default-tags", OrganizationFeature, FeatureHandlerStrategy.FLAGPOLE, api_expose=False)
# Enable flamegraph visualization for MetricKit hang diagnostic stack traces
manager.add("organizations:metrickit-flamegraph", OrganizationFeature, FeatureHandlerStrategy.FLAGPOLE, api_expose=True)
# Enable Session Stats down to a minute resolution
Expand Down
11 changes: 1 addition & 10 deletions src/sentry/search/events/builder/metrics.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@
Request,
)

from sentry import features
from sentry.api.event_search import SearchFilter
from sentry.exceptions import IncompatibleMetricsQuery, InvalidSearchQuery
from sentry.models.dashboard_widget import DashboardWidgetQueryOnDemand
Expand Down Expand Up @@ -119,7 +118,6 @@ def __init__(
self.percentiles: list[CurriedFunction] = []
self.metric_ids: set[int] = set()
self._indexer_cache: dict[str, int | None] = {}
self._use_default_tags: bool | None = None
self._has_nullable: bool = False
self._is_spans_metrics_query_cache: bool | None = None
# always true if this is being called
Expand Down Expand Up @@ -158,14 +156,7 @@ def load_config(self) -> DatasetConfig:
def use_default_tags(self) -> bool:
if self.is_spans_metrics_query:
return False
if self._use_default_tags is None:
if self.params.organization is not None:
self._use_default_tags = features.has(
"organizations:mep-use-default-tags", self.params.organization, actor=None
)
else:
self._use_default_tags = False
return self._use_default_tags
return True
Comment thread
wedamija marked this conversation as resolved.

def are_columns_resolved(self) -> bool:
# If we have an on demand spec, we want to mark the columns as resolved, since we are not running the
Expand Down
27 changes: 13 additions & 14 deletions tests/sentry/search/events/builder/test_metrics.py
Original file line number Diff line number Diff line change
Expand Up @@ -2600,20 +2600,19 @@ def test_run_top_timeseries_query_with_on_demand_columns(self) -> None:
assert spec_map[field]
assert spec_map[field_two]

mep_query = TopMetricsQueryBuilder(
Dataset.PerformanceMetrics,
self.params,
3600 * 24,
[{"customtag1": "div > text"}, {"customtag2": "red"}],
query="",
selected_columns=groupbys,
timeseries_columns=[field, field_two],
config=QueryBuilderConfig(
on_demand_metrics_enabled=False,
),
)

assert not mep_query._on_demand_metric_spec_map
with pytest.raises(IncompatibleMetricsQuery):
TopMetricsQueryBuilder(
Dataset.PerformanceMetrics,
self.params,
3600 * 24,
[{"customtag1": "div > text"}, {"customtag2": "red"}],
query="",
selected_columns=groupbys,
timeseries_columns=[field, field_two],
config=QueryBuilderConfig(
on_demand_metrics_enabled=False,
),
)
result = query.run_query("test_query")

assert result["data"]
Expand Down
23 changes: 11 additions & 12 deletions tests/snuba/api/endpoints/test_organization_events_mep.py
Original file line number Diff line number Diff line change
Expand Up @@ -3340,18 +3340,17 @@ def test_on_demand_with_mep(self) -> None:
transaction_data["tags"].append(("faketag", "foo"))
self.store_event(transaction_data, self.project.id)

with self.feature({"organizations:mep-use-default-tags": True}):
response = self.do_request(
{
"field": [
"faketag",
"count()",
],
"query": "event.type:transaction",
"dataset": "metricsEnhanced",
"per_page": 50,
}
)
response = self.do_request(
{
"field": [
"faketag",
"count()",
],
"query": "event.type:transaction",
"dataset": "metricsEnhanced",
"per_page": 50,
}
)
assert response.status_code == 200, response.content
assert len(response.data["data"]) == 1
data = response.data["data"]
Expand Down
Loading