-
-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Description
Environment
self-hosted (https://develop.sentry.dev/self-hosted/)
Steps to Reproduce
Summary
When calling the Organization Events API with dataset=spans and requesting the field:
failure_rate_if(is_transaction,equals,true)
(or implicitly: failure_rate())
the Sentry backend returns HTTP 500 Internal Server Error, and Snuba RPC logs show a corresponding 500 on EndpointTraceItemTable/v1.
Removing this single field makes the same query succeed (HTTP 200).
This affects the Insights Frontend and Insights Backend landing tables, breaking UI functionality.
This occurs on a fresh Sentry Self-Hosted 25.11.0 installation and also reproducible on production running the same version.
Impact
- Insights → Frontend "Landing Table" fails to load
- Insights → Backend "Landing Table" fails to load
All queries including failure_rate_if(...) on dataset=spans reliably return 500
All other fields (tpm(), p50_if, performance_score, etc.) work normally
Removing only the failure-rate field makes the API return HTTP 200
Steps to Reproduce
Expected Result
✅ Working request (200)
GET /api/0/organizations/<org>/events/
?dataset=spans
&field=is_starred_transaction
&field=transaction
&field=project
&field=tpm()
&field=p50_if(span.duration,is_transaction,equals,true)
&field=p75_if(span.duration,is_transaction,equals,true)
&field=p95_if(span.duration,is_transaction,equals,true)
&field=failure_rate_if(is_transaction,equals,true)
&field=performance_score(measurements.score.total)
&field=count_unique(user)
&field=sum_if(span.duration,is_transaction,equals,true)
&query=(span.op:[ui.render,...] OR project.id:[2]) !span.op:http.server
&statsPeriod=24h
&sort=-sum_if(span.duration,is_transaction,equals,true)
&referrer=api.insights.frontend.landing-table
Same request with only this field removed:
&field=failure_rate_if(is_transaction,equals,true)
returns 200
Actual Result
❌ Failing request (500)
GET /api/0/organizations/<org>/events/
?dataset=spans
&field=is_starred_transaction
&field=transaction
&field=project
&field=tpm()
&field=p50_if(span.duration,is_transaction,equals,true)
&field=p75_if(span.duration,is_transaction,equals,true)
&field=p95_if(span.duration,is_transaction,equals,true)
&field=failure_rate_if(is_transaction,equals,true)
&field=performance_score(measurements.score.total)
&field=count_unique(user)
&field=sum_if(span.duration,is_transaction,equals,true)
&query=(span.op:[ui.render,...] OR project.id:[2]) !span.op:http.server
&statsPeriod=24h
&sort=-sum_if(span.duration,is_transaction,equals,true)
&referrer=api.insights.frontend.landing-table
Returns:
500 Internal Server Error (Sentry backend)
and Snuba logs:
POST /rpc/EndpointTraceItemTable/v1 ... 500 ... referrer=api.insights.frontend.landing-table
Product Area
Insights
Link
No response
DSN
No response
Version
25.11.0
Metadata
Metadata
Assignees
Projects
Status