snuba
snuba copied to clipboard
[wip, do not merge] delete eap_spans and remove all references
This should be split into smaller PRs, but wanted to have a branch that had everything removed. Snuba tests are passing
Dependencies:
- we will need a manual job that rewrites subscriptions to come from eap_items instead of eap_spans before we can fully delete the EAP_SPANS entity key.
- @wmak has a PR to remove some dependent Sentry tests: https://github.com/getsentry/sentry/pull/89422
:x: 1 Tests Failed:
| Tests completed | Failed | Passed | Skipped |
|---|---|---|---|
| 2749 | 1 | 2748 | 11 |
View the top 1 failed test(s) by shortest run time
tests.web.rpc.v1.test_endpoint_get_trace.TestGetTrace::test_with_dataStack Traces | 0.581s run time
Traceback (most recent call last): File ".../rpc/v1/test_endpoint_get_trace.py", line 277, in test_with_data assert list( AssertionError: assert [key {\n type: TYPE_STRING\n name: "color"\n}\nvalue {\n val_str: "red"\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "duration_ms"\n}\nvalue {\n val_double: 152\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "eap.measurement"\n}\nvalue {\n val_double: 100\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "end_timestamp"\n}\nvalue {\n val_double: 1744826401\n}\n,\n key {\n type: TYPE_STRING\n name: "environment"\n}\nvalue {\n val_str: "development"\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "exclusive_time_ms"\n}\nvalue {\n val_double: 0.228\n}\n,\n key {\n type: TYPE_STRING\n name: "http.status_code"\n}\nvalue {\n val_str: "200"\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "is_segment"\n}\nvalue {\n val_double: 1\n}\n,\n key {\n type: TYPE_STRING\n name: "location"\n}\nvalue {\n val_str: "mobile"\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.false.bool.field"\n}\nvalue {\n val_double: 0\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.float.field"\n}\nvalue {\n val_double: 101.2\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.int.field"\n}\nvalue {\n val_double: 2000\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.neg.field"\n}\nvalue {\n val_double: -100\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.neg.float.field"\n}\nvalue {\n val_double: -101.2\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.true.bool.field"\n}\nvalue {\n val_double: 1\n}\n,\n key {\n type: TYPE_STRING\n name: "name"\n}\nvalue {\n val_str: "root"\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "num_of_spans"\n}\nvalue {\n val_double: 50\n}\n,\n key {\n type: TYPE_STRING\n name: "parent_span_id"\n}\nvalue {\n val_str: "0000000000000000"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_endpoint_version"\n}\nvalue {\n val_str: "3"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_id"\n}\nvalue {\n val_str: "88888888-4444-4444-8444-cccccccccccc"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_no_cache"\n}\nvalue {\n val_str: "False"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_protocol_version"\n}\nvalue {\n val_str: "3"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_use_post_or_schedule"\n}\nvalue {\n val_str: "True"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_use_post_or_schedule_rejected"\n}\nvalue {\n val_str: "version"\n}\n,\n key {\n type: TYPE_STRING\n name: "release"\n}\nvalue {\n val_str: "[email protected]+c45b49caed1e5fcbf70097ab3f434b487c359b6b"\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "sampling_factor"\n}\nvalue {\n val_double: 1\n}\n,\n key {\n type: TYPE_STRING\n name: "sdk.name"\n}\nvalue {\n val_str: "sentry.python.django"\n}\n,\n key {\n type: TYPE_STRING\n name: "sdk.version"\n}\nvalue {\n val_str: "2.7.0"\n}\n,\n key {\n type: TYPE_STRING\n name: "segment.name"\n}\nvalue {\n val_str: ".../0/relays/projectconfigs/"\n}\n,\n key {\n type: TYPE_STRING\n name: "segment_id"\n}\nvalue {\n val_str: "515f7dfd9f244664"\n}\n,\n key {\n type: TYPE_STRING\n name: "segment_name"\n}\nvalue {\n val_str: ".../0/relays/projectconfigs/"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.category"\n}\nvalue {\n val_str: "http"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.environment"\n}\nvalue {\n val_str: "development"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.op"\n}\nvalue {\n val_str: "http.server"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.platform"\n}\nvalue {\n val_str: "python"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.release"\n}\nvalue {\n val_str: "[email protected]+c45b49caed1e5fcbf70097ab3f434b487c359b6b"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.sdk.name"\n}\nvalue {\n val_str: "sentry.python.django"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.sdk.version"\n}\nvalue {\n val_str: "2.7.0"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.status"\n}\nvalue {\n val_str: "ok"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.status_code"\n}\nvalue {\n val_str: "200"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.thread.id"\n}\nvalue {\n val_str: "8522009600"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.thread.name"\n}\nvalue {\n val_str: "uWSGIWorker1Core0"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.trace.status"\n}\nvalue {\n val_str: "ok"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.transaction.method"\n}\nvalue {\n val_str: "POST"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.transaction.op"\n}\nvalue {\n val_str: "http.server"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.user"\n}\nvalue {\n val_str: "ip:127.0.0.1"\n}\n,\n key {\n type: TYPE_STRING\n name: "server_name"\n}\nvalue {\n val_str: "D23CXQ4GK2.local"\n}\n,\n key {\n type: TYPE_STRING\n name: "service"\n}\nvalue {\n val_str: "1"\n}\n,\n key {\n type: TYPE_STRING\n name: "spans_over_limit"\n}\nvalue {\n val_str: "False"\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "start_timestamp"\n}\nvalue {\n val_double: 1744826400\n}\n,\n key {\n type: TYPE_STRING\n name: "thread.id"\n}\nvalue {\n val_str: "8522009600"\n}\n,\n key {\n type: TYPE_STRING\n name: "thread.name"\n}\nvalue {\n val_str: "uWSGIWorker1Core0"\n}\n] == [key {\n type: TYPE_STRING\n name: "color"\n}\nvalue {\n val_str: "red"\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "eap.measurement"\n}\nvalue {\n val_double: 100\n}\n,\n key {\n type: TYPE_STRING\n name: "environment"\n}\nvalue {\n val_str: "development"\n}\n,\n key {\n type: TYPE_STRING\n name: "http.status_code"\n}\nvalue {\n val_str: "200"\n}\n,\n key {\n type: TYPE_STRING\n name: "location"\n}\nvalue {\n val_str: "mobile"\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.false.bool.field"\n}\nvalue {\n val_double: 0\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.float.field"\n}\nvalue {\n val_double: 101.2\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.int.field"\n}\nvalue {\n val_double: 2000\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.neg.field"\n}\nvalue {\n val_double: -100\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.neg.float.field"\n}\nvalue {\n val_double: -101.2\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "my.true.bool.field"\n}\nvalue {\n val_double: 1\n}\n,\n key {\n type: TYPE_DOUBLE\n name: "num_of_spans"\n}\nvalue {\n val_double: 50\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_endpoint_version"\n}\nvalue {\n val_str: "3"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_id"\n}\nvalue {\n val_str: "88888888-4444-4444-8444-cccccccccccc"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_no_cache"\n}\nvalue {\n val_str: "False"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_protocol_version"\n}\nvalue {\n val_str: "3"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_use_post_or_schedule"\n}\nvalue {\n val_str: "True"\n}\n,\n key {\n type: TYPE_STRING\n name: "relay_use_post_or_schedule_rejected"\n}\nvalue {\n val_str: "version"\n}\n,\n key {\n type: TYPE_STRING\n name: "release"\n}\nvalue {\n val_str: "[email protected]+c45b49caed1e5fcbf70097ab3f434b487c359b6b"\n}\n,\n key {\n type: TYPE_STRING\n name: "sdk.name"\n}\nvalue {\n val_str: "sentry.python.django"\n}\n,\n key {\n type: TYPE_STRING\n name: "sdk.version"\n}\nvalue {\n val_str: "2.7.0"\n}\n,\n key {\n type: TYPE_STRING\n name: "segment.name"\n}\nvalue {\n val_str: ".../0/relays/projectconfigs/"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.category"\n}\nvalue {\n val_str: "http"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.environment"\n}\nvalue {\n val_str: "development"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.op"\n}\nvalue {\n val_str: "http.server"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.platform"\n}\nvalue {\n val_str: "python"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.release"\n}\nvalue {\n val_str: "[email protected]+c45b49caed1e5fcbf70097ab3f434b487c359b6b"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.sdk.name"\n}\nvalue {\n val_str: "sentry.python.django"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.sdk.version"\n}\nvalue {\n val_str: "2.7.0"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.status"\n}\nvalue {\n val_str: "ok"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.status_code"\n}\nvalue {\n val_str: "200"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.thread.id"\n}\nvalue {\n val_str: "8522009600"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.thread.name"\n}\nvalue {\n val_str: "uWSGIWorker1Core0"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.trace.status"\n}\nvalue {\n val_str: "ok"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.transaction.method"\n}\nvalue {\n val_str: "POST"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.transaction.op"\n}\nvalue {\n val_str: "http.server"\n}\n,\n key {\n type: TYPE_STRING\n name: "sentry.user"\n}\nvalue {\n val_str: "ip:127.0.0.1"\n}\n,\n key {\n type: TYPE_STRING\n name: "server_name"\n}\nvalue {\n val_str: "D23CXQ4GK2.local"\n}\n,\n key {\n type: TYPE_STRING\n name: "spans_over_limit"\n}\nvalue {\n val_str: "False"\n}\n,\n key {\n type: TYPE_STRING\n name: "thread.id"\n}\nvalue {\n val_str: "8522009600"\n}\n,\n key {\n type: TYPE_STRING\n name: "thread.name"\n}\nvalue {\n val_str: "uWSGIWorker1Core0"\n}\n] At index 1 diff: key {\n type: TYPE_DOUBLE\n name: "duration_ms"\n}\nvalue {\n val_double: 152\n}\n != key {\n type: TYPE_DOUBLE\n name: "eap.measurement"\n}\nvalue {\n val_double: 100\n}\n Left contains 11 more items, first extra item: key {\n type: TYPE_STRING\n name: "sentry.thread.name"\n}\nvalue {\n val_str: "uWSGIWorker1Core0"\n}\n Full diff: [ key { type: TYPE_STRING name: "color" } value { val_str: "red" } , key { type: TYPE_DOUBLE + name: "duration_ms" + } + value { + val_double: 152 + } + , + key { + type: TYPE_DOUBLE name: "eap.measurement" } value { val_double: 100 } , key { + type: TYPE_DOUBLE + name: "end_timestamp" + } + value { + val_double: 1744826401 + } + , + key { type: TYPE_STRING name: "environment" } value { val_str: "development" } , key { + type: TYPE_DOUBLE + name: "exclusive_time_ms" + } + value { + val_double: 0.228 + } + , + key { type: TYPE_STRING name: "http.status_code" } value { val_str: "200" } , key { + type: TYPE_DOUBLE + name: "is_segment" + } + value { + val_double: 1 + } + , + key { type: TYPE_STRING name: "location" } value { val_str: "mobile" } , key { type: TYPE_DOUBLE name: "my.false.bool.field" } value { val_double: 0 } , key { type: TYPE_DOUBLE name: "my.float.field" } value { val_double: 101.2 } , key { type: TYPE_DOUBLE name: "my.int.field" } value { val_double: 2000 } , key { type: TYPE_DOUBLE name: "my.neg.field" } value { val_double: -100 } , key { type: TYPE_DOUBLE name: "my.neg.float.field" } value { val_double: -101.2 } , key { type: TYPE_DOUBLE name: "my.true.bool.field" } value { val_double: 1 } , key { + type: TYPE_STRING + name: "name" + } + value { + val_str: "root" + } + , + key { type: TYPE_DOUBLE name: "num_of_spans" } value { val_double: 50 } , key { type: TYPE_STRING + name: "parent_span_id" + } + value { + val_str: "0000000000000000" + } + , + key { + type: TYPE_STRING name: "relay_endpoint_version" } value { val_str: "3" } , key { type: TYPE_STRING name: "relay_id" } value { val_str: "88888888-4444-4444-8444-cccccccccccc" } , key { type: TYPE_STRING name: "relay_no_cache" } value { val_str: "False" } , key { type: TYPE_STRING name: "relay_protocol_version" } value { val_str: "3" } , key { type: TYPE_STRING name: "relay_use_post_or_schedule" } value { val_str: "True" } , key { type: TYPE_STRING name: "relay_use_post_or_schedule_rejected" } value { val_str: "version" } , key { type: TYPE_STRING name: "release" } value { val_str: "[email protected]+c45b49caed1e5fcbf70097ab3f434b487c359b6b" } , key { + type: TYPE_DOUBLE + name: "sampling_factor" + } + value { + val_double: 1 + } + , + key { type: TYPE_STRING name: "sdk.name" } value { val_str: "sentry.python.django" } , key { type: TYPE_STRING name: "sdk.version" } value { val_str: "2.7.0" } , key { type: TYPE_STRING name: "segment.name" } value { val_str: ".../0/relays/projectconfigs/" } , key { type: TYPE_STRING + name: "segment_id" + } + value { + val_str: "515f7dfd9f244664" + } + , + key { + type: TYPE_STRING + name: "segment_name" + } + value { + val_str: ".../0/relays/projectconfigs/" + } + , + key { + type: TYPE_STRING name: "sentry.category" } value { val_str: "http" } , key { type: TYPE_STRING name: "sentry.environment" } value { val_str: "development" } , key { type: TYPE_STRING name: "sentry.op" } value { val_str: "http.server" } , key { type: TYPE_STRING name: "sentry.platform" } value { val_str: "python" } , key { type: TYPE_STRING name: "sentry.release" } value { val_str: "[email protected]+c45b49caed1e5fcbf70097ab3f434b487c359b6b" } , key { type: TYPE_STRING name: "sentry.sdk.name" } value { val_str: "sentry.python.django" } , key { type: TYPE_STRING name: "sentry.sdk.version" } value { val_str: "2.7.0" } , key { type: TYPE_STRING name: "sentry.status" } value { val_str: "ok" } , key { type: TYPE_STRING name: "sentry.status_code" } value { val_str: "200" } , key { type: TYPE_STRING name: "sentry.thread.id" } value { val_str: "8522009600" } , key { type: TYPE_STRING name: "sentry.thread.name" } value { val_str: "uWSGIWorker1Core0" } , key { type: TYPE_STRING name: "sentry.trace.status" } value { val_str: "ok" } , key { type: TYPE_STRING name: "sentry.transaction.method" } value { val_str: "POST" } , key { type: TYPE_STRING name: "sentry.transaction.op" } value { val_str: "http.server" } , key { type: TYPE_STRING name: "sentry.user" } value { val_str: "ip:127.0.0.1" } , key { type: TYPE_STRING name: "server_name" } value { val_str: "D23CXQ4GK2.local" } , key { type: TYPE_STRING + name: "service" + } + value { + val_str: "1" + } + , + key { + type: TYPE_STRING name: "spans_over_limit" } value { val_str: "False" } , key { + type: TYPE_DOUBLE + name: "start_timestamp" + } + value { + val_double: 1744826400 + } + , + key { type: TYPE_STRING name: "thread.id" } value { val_str: "8522009600" } , key { type: TYPE_STRING name: "thread.name" } value { val_str: "uWSGIWorker1Core0" } , ]
To view more test analytics, go to the Test Analytics Dashboard 📋 Got 3 mins? Take this short survey to help us improve Test Analytics.
This was handled in another PR.