init
Legal Boilerplate
Look, I get it. The entity doing business as "Sentry" was incorporated in the State of Delaware in 2015 as Functional Software, Inc. and is gonna need some rights from me in order to utilize my contributions in this here PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Sentry can use, modify, copy, and redistribute my contributions, under Sentry's choice of terms.
This PR has a migration; here is the generated SQL for ./snuba/migrations/groups.py
:x: 1 Tests Failed:
| Tests completed | Failed | Passed | Skipped |
|---|---|---|---|
| 2845 | 1 | 2844 | 12 |
View the top 1 failed test(s) by shortest run time
tests.web.rpc.v1.test_endpoint_trace_item_table.test_endpoint_trace_item_table_uptime_checks.TestTraceItemTable::test_with_dataStack Traces | 0.462s run time
Traceback (most recent call last): File ".../local/lib/python3.11........./site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ^^^^^^ File ".../local/lib/python3.11........./site-packages/_pytest/runner.py", line 242, in <lambda> lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File ".../local/lib/python3.11....../site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File ".../local/lib/python3.11....../site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File ".../local/lib/python3.11.........................../site-packages/pluggy/_callers.py", line 182, in _multicall return outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File ".../local/lib/python3.11.../site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File ".../local/lib/python3.11.........................../site-packages/pluggy/_callers.py", line 167, in _multicall teardown.throw(outcome._exception) File ".../local/lib/python3.11....../site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File ".../local/lib/python3.11....../site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File ".../local/lib/python3.11.........................../site-packages/pluggy/_callers.py", line 167, in _multicall teardown.throw(outcome._exception) File ".../local/lib/python3.11....../site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File ".../local/lib/python3.11....../site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File ".../local/lib/python3.11.........................../site-packages/pluggy/_callers.py", line 167, in _multicall teardown.throw(outcome._exception) File ".../local/lib/python3.11....../site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File ".../local/lib/python3.11....../site-packages/_pytest/logging.py", line 829, in _runtest_for yield File ".../local/lib/python3.11.........................../site-packages/pluggy/_callers.py", line 167, in _multicall teardown.throw(outcome._exception) File ".../local/lib/python3.11.../site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File ".../local/lib/python3.11.........................../site-packages/pluggy/_callers.py", line 167, in _multicall teardown.throw(outcome._exception) File ".../local/lib/python3.11.../site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File ".../local/lib/python3.11.........................../site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File ".../local/lib/python3.11........./site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() File ".../local/lib/python3.11....../site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File ".../local/lib/python3.11....../site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File ".../local/lib/python3.11....../site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File ".../local/lib/python3.11.........................../site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File ".../local/lib/python3.11.........................../site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File ".../local/lib/python3.11....../site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) ^^^^^^^^^^^^^^^^^^^^^^^^ File ".../v1/test_endpoint_trace_item_table/test_endpoint_trace_item_table_uptime_checks.py", line 185, in test_with_data assert MessageToDict(response) == MessageToDict(expected_response) AssertionError: assert {'columnValues': [{'attributeName': 'region', 'results': [{'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}]}, {'attributeName': 'trace_id', 'results': [{'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}]}, {'attributeName': 'scheduled_check_time', 'results': [{'valInt': '1749750060'}, {'valInt': '1749750120'}, {'valInt': '1749750180'}, {'valInt': '1749750240'}, {'valInt': '1749750300'}, {'valInt': '1749750360'}, {'valInt': '1749750420'}, {'valInt': '1749750480'}, {'valInt': '1749750540'}, {'valInt': '1749750600'}]}], 'pageToken': {'offset': '10'}, 'meta': {'requestId': 'be3123b3-2e5d-4eb9-bb48-f38eaa9e8480'}} == {'columnValues': [{'attributeName': 'region', 'results': [{'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}]}, {'attributeName': 'trace_id', 'results': [{'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}]}, {'attributeName': 'scheduled_check_time', 'results': [{'valInt': '1749750060'}, {'valInt': '1749750120'}, {'valInt': '1749750180'}, {'valInt': '1749750240'}, {'valInt': '1749750300'}, {'valInt': '1749750360'}, {'valInt': '1749750420'}, {'valInt': '1749750480'}, {'valInt': '1749750540'}, {'valInt': '1749750600'}]}], 'pageToken': {'offset': '10'}, 'meta': {'requestId': 'be3123b3-2e5d-4eb9-bb48-f38eaa9e8480', 'downsampledStorageMeta': {}}} Common items: {'columnValues': [{'attributeName': 'region', 'results': [{'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}, {'valStr': 'global'}]}, {'attributeName': 'trace_id', 'results': [{'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}, {'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104'}]}, {'attributeName': 'scheduled_check_time', 'results': [{'valInt': '1749750060'}, {'valInt': '1749750120'}, {'valInt': '1749750180'}, {'valInt': '1749750240'}, {'valInt': '1749750300'}, {'valInt': '1749750360'}, {'valInt': '1749750420'}, {'valInt': '1749750480'}, {'valInt': '1749750540'}, {'valInt': '1749750600'}]}], 'pageToken': {'offset': '10'}} Differing items: {'meta': {'requestId': 'be3123b3-2e5d-4eb9-bb48-f38eaa9e8480'}} != {'meta': {'downsampledStorageMeta': {}, 'requestId': 'be3123b3-2e5d-4eb9-bb48-f38eaa9e8480'}} Full diff: { 'columnValues': [ { 'attributeName': 'region', 'results': [ { 'valStr': 'global', }, { 'valStr': 'global', }, { 'valStr': 'global', }, { 'valStr': 'global', }, { 'valStr': 'global', }, { 'valStr': 'global', }, { 'valStr': 'global', }, { 'valStr': 'global', }, { 'valStr': 'global', }, { 'valStr': 'global', }, ], }, { 'attributeName': 'trace_id', 'results': [ { 'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104', }, { 'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104', }, { 'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104', }, { 'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104', }, { 'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104', }, { 'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104', }, { 'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104', }, { 'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104', }, { 'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104', }, { 'valStr': 'ae8398b2ad6a4ddc8d00a425da0ff104', }, ], }, { 'attributeName': 'scheduled_check_time', 'results': [ { 'valInt': '1749750060', }, { 'valInt': '1749750120', }, { 'valInt': '1749750180', }, { 'valInt': '1749750240', }, { 'valInt': '1749750300', }, { 'valInt': '1749750360', }, { 'valInt': '1749750420', }, { 'valInt': '1749750480', }, { 'valInt': '1749750540', }, { 'valInt': '1749750600', }, ], }, ], 'meta': { - 'downsampledStorageMeta': {}, 'requestId': 'be3123b3-2e5d-4eb9-bb48-f38eaa9e8480', }, 'pageToken': { 'offset': '10', }, }
To view more test analytics, go to the Test Analytics Dashboard 📋 Got 3 mins? Take this short survey to help us improve Test Analytics.