Conversation
| "description": "Unix timestamp of the earliest weekly date bucket the v2 co-occurring-attributes tables hold data for; TraceItemAttributeNames only reads v2 for requests whose range starts at or after it, and reads v1 otherwise. Defaults to 2026-07-27 00:00 UTC, the Monday of the week the v2 tables and their materialized view were created. Must be a Monday: the date column is bucketed weekly with toMonday() and the query rounds its lower bound down to the previous Monday, so a mid-week value would let a request read a bucket v2 never populated. Lower it only to a bucket v2 has been backfilled to." | ||
| }, | ||
| "eap_items_use_indexed_name_organization_ids": { | ||
| "type": "array", |
There was a problem hiding this comment.
this isn't actually used in the options-automator. should be safe to remove I think.
| limit: int, | ||
| page_token: ExportTraceItemsPageToken | None = None, | ||
| query_meta: RequestMeta | None = None, | ||
| sampling_tier: Tier = Tier.TIER_1, |
There was a problem hiding this comment.
I'd rather not have yet another default/fallback for the tier. Can we wire it from the routing context?
There was a problem hiding this comment.
Removed the default. _build_query now requires sampling_tier (kw-only) and _build_snuba_request passes routing_decision.tier.
| request.meta.trace_item_type, | ||
| request.filter, | ||
| _get_attribute_key_to_expression_function(request.meta), | ||
| use_indexed_name=use_indexed_name_for_request(sampling_tier or Tier.TIER_1), |
There was a problem hiding this comment.
Dropped the or TIER_1. use_indexed_name_for_request is now tier == TIER_1, so None does not rewrite.
ElioDiNino
left a comment
There was a problem hiding this comment.
Just one comment, looks good otherwise
dc6013e to
79f35e7
Compare
MeredithAnya
left a comment
There was a problem hiding this comment.
Tier 1 can have different retention so unless we have been writing data for longer than the maximum allowed retention e.g. 90 days, then this could return incomplete data - so the sentry option may have to remain for a while longer
|
We also were not indexing the right field. So this would be bad even for 30 days retention customers. I'm closing this PR. |
Fixes EAP-775
What
Replace
eap_items_use_indexed_name_organization_idswith a sampling-tier gate: rewritesentry.op/sentry.metric.namefilters ontoindexed_nameonly onTIER_1(full accuracy).Downsampled tiers keep the attribute-map path since the indexed columns don't contain backfilled data, and therefore don't have data on those columns.
The org allowlist was a rollout switch. However we have no need for it anymore since we've been backfilling data for 40ish days.
Test plan
pytest tests/web/rpc/test_common.py::TestIndexedNameRedirect