Skip to content

Conversation

DominikB2014
Copy link
Contributor

@DominikB2014 DominikB2014 commented Oct 7, 2025

Adds another model that will link a dashboard widget query field to another dashboard. It's possible for a dashboard widget query to belong to a non-table, however we'll do some validation on the backend to ensure we don't somehow create dashboard links that originate from non-tables.

Alternatively i was thinking of adding a links field to the dashboard widget query model, however we can't do an array of foreign keys as the type, therefore we don't be able to cascade deletions.

@DominikB2014 DominikB2014 requested a review from a team October 7, 2025 19:29
@DominikB2014 DominikB2014 requested review from a team as code owners October 7, 2025 19:29
Copy link

linear bot commented Oct 7, 2025

@github-actions github-actions bot added the Scope: Backend Automatically applied to PRs that change backend components label Oct 7, 2025
cursor[bot]

This comment was marked as outdated.

Copy link
Contributor

github-actions bot commented Oct 7, 2025

This PR has a migration; here is the generated SQL for src/sentry/migrations/0996_add_dashboard_field_link_model.py

for 0996_add_dashboard_field_link_model in sentry

--
-- Create model DashboardFieldLink
--
CREATE TABLE "sentry_dashboardfieldlink" ("id" bigint NOT NULL PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY, "field" text NOT NULL, "date_modified" timestamp with time zone NOT NULL, "dashboard_id" bigint NOT NULL, "dashboard_widget_query_id" bigint NOT NULL);
CREATE UNIQUE INDEX CONCURRENTLY "sentry_dashboardfieldlin_dashboard_widget_query_i_f5747538_uniq" ON "sentry_dashboardfieldlink" ("dashboard_widget_query_id", "field");
ALTER TABLE "sentry_dashboardfieldlink" ADD CONSTRAINT "sentry_dashboardfieldlin_dashboard_widget_query_i_f5747538_uniq" UNIQUE USING INDEX "sentry_dashboardfieldlin_dashboard_widget_query_i_f5747538_uniq";
ALTER TABLE "sentry_dashboardfieldlink" ADD CONSTRAINT "sentry_dashboardfiel_dashboard_id_cb8a2e28_fk_sentry_da" FOREIGN KEY ("dashboard_id") REFERENCES "sentry_dashboard" ("id") DEFERRABLE INITIALLY DEFERRED NOT VALID;
ALTER TABLE "sentry_dashboardfieldlink" VALIDATE CONSTRAINT "sentry_dashboardfiel_dashboard_id_cb8a2e28_fk_sentry_da";
ALTER TABLE "sentry_dashboardfieldlink" ADD CONSTRAINT "sentry_dashboardfiel_dashboard_widget_que_121a4274_fk_sentry_da" FOREIGN KEY ("dashboard_widget_query_id") REFERENCES "sentry_dashboardwidgetquery" ("id") DEFERRABLE INITIALLY DEFERRED NOT VALID;
ALTER TABLE "sentry_dashboardfieldlink" VALIDATE CONSTRAINT "sentry_dashboardfiel_dashboard_widget_que_121a4274_fk_sentry_da";
CREATE INDEX CONCURRENTLY "sentry_dashboardfieldlink_dashboard_id_cb8a2e28" ON "sentry_dashboardfieldlink" ("dashboard_id");
CREATE INDEX CONCURRENTLY "sentry_dashboardfieldlink_dashboard_widget_query_id_121a4274" ON "sentry_dashboardfieldlink" ("dashboard_widget_query_id");

Copy link

codecov bot commented Oct 7, 2025

❌ 34 Tests Failed:

Tests completed Failed Passed Skipped
28703 34 28669 239
View the top 3 failed test(s) by shortest run time
tests.sentry.backup.test_imports.DatabaseResetTests::test_clears_existing_models_in_global_scope
Stack Traces | 12.4s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:866: in test_clears_existing_models_in_global_scope
    create_default_projects()
#x1B[1m#x1B[.../sentry/receivers/core.py#x1B[0m:35: in create_default_projects
    create_default_project(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/receivers/core.py#x1B[0m:59: in create_default_project
    with transaction.atomic(conn_name):
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:225: in new_atomic_exit
    _old_atomic_exit(self, exc_type, *args, **kwds)
#x1B[1m#x1B[.../sentry/utils/db.py#x1B[0m:67: in _exit
    rv = original_exit(self, exc_type, exc_value, traceback)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:307: in __exit__
    connection.set_autocommit(True)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:491: in set_autocommit
    self.run_and_clear_commit_hooks()
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:130: in run_and_clear_commit_hooks
    return old_run_and_clear_commit_hooks(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:769: in run_and_clear_commit_hooks
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.CustomImportBehaviorTests::test_project_ids_retained_in_global_scope
Stack Traces | 13.4s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:2304: in test_project_ids_retained_in_global_scope
    proj1 = self.create_project(organization=org, teams=[team], name="Project Foo")
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:210: in create_project
    return Factories.create_project(**kwargs)
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../sentry/testutils/factories.py#x1B[0m:551: in create_project
    with transaction.atomic(router.db_for_write(Project)):
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:225: in new_atomic_exit
    _old_atomic_exit(self, exc_type, *args, **kwds)
#x1B[1m#x1B[.../sentry/utils/db.py#x1B[0m:67: in _exit
    rv = original_exit(self, exc_type, exc_value, traceback)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:307: in __exit__
    connection.set_autocommit(True)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:491: in set_autocommit
    self.run_and_clear_commit_hooks()
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:130: in run_and_clear_commit_hooks
    return old_run_and_clear_commit_hooks(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:769: in run_and_clear_commit_hooks
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.CustomImportBehaviorTests::test_project_ids_reassigned_in_organization_scope
Stack Traces | 13.5s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:2337: in test_project_ids_reassigned_in_organization_scope
    proj1 = self.create_project(organization=org, teams=[team], name="Project Foo")
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:210: in create_project
    return Factories.create_project(**kwargs)
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../sentry/testutils/factories.py#x1B[0m:551: in create_project
    with transaction.atomic(router.db_for_write(Project)):
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:225: in new_atomic_exit
    _old_atomic_exit(self, exc_type, *args, **kwds)
#x1B[1m#x1B[.../sentry/utils/db.py#x1B[0m:67: in _exit
    rv = original_exit(self, exc_type, exc_value, traceback)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:307: in __exit__
    connection.set_autocommit(True)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:491: in set_autocommit
    self.run_and_clear_commit_hooks()
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:130: in run_and_clear_commit_hooks
    return old_run_and_clear_commit_hooks(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:769: in run_and_clear_commit_hooks
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.CustomImportBehaviorTests::test_hide_organizations_import_flag
Stack Traces | 13.9s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:2203: in test_hide_organizations_import_flag
    self.create_exhaustive_organization(
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.DatabaseResetTests::test_persist_existing_models_in_organization_scope
Stack Traces | 13.9s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:921: in test_persist_existing_models_in_organization_scope
    self.create_exhaustive_organization("neworg", owner, user, None)
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.DatabaseResetTests::test_persist_existing_models_in_config_scope
Stack Traces | 14s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:909: in test_persist_existing_models_in_config_scope
    self.create_exhaustive_organization("neworg", owner, user, None)
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.DatabaseResetTests::test_persist_existing_models_in_user_scope
Stack Traces | 14s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:897: in test_persist_existing_models_in_user_scope
    self.create_exhaustive_organization("neworg", owner, user, None)
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.CollisionTests::test_colliding_monitor
Stack Traces | 14.5s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:1436: in test_colliding_monitor
    self.create_exhaustive_organization("some-org", owner, invited)
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.CollisionTests::test_colliding_project_key
Stack Traces | 14.6s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:1519: in test_colliding_project_key
    self.create_exhaustive_organization("some-org", owner, invited, [member])
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.CollisionTests::test_colliding_org_auth_token
Stack Traces | 14.7s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:1468: in test_colliding_org_auth_token
    self.create_exhaustive_organization("some-org", owner, invited, [member])
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.CustomImportBehaviorTests::test_organization_member_inviter_id
Stack Traces | 15.1s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:2232: in test_organization_member_inviter_id
    org = self.create_exhaustive_organization(
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.DecryptionTests::test_organization_import_decryption
Stack Traces | 15.8s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:1012: in test_organization_import_decryption
    import_in_organization_scope(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:550: in import_in_organization_scope
    return _import(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:476: in _import
    with unguarded_write(using="default"), transaction.atomic(using="default"):
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:225: in new_atomic_exit
    _old_atomic_exit(self, exc_type, *args, **kwds)
#x1B[1m#x1B[.../sentry/utils/db.py#x1B[0m:67: in _exit
    rv = original_exit(self, exc_type, exc_value, traceback)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:307: in __exit__
    connection.set_autocommit(True)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:491: in set_autocommit
    self.run_and_clear_commit_hooks()
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:130: in run_and_clear_commit_hooks
    return old_run_and_clear_commit_hooks(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:769: in run_and_clear_commit_hooks
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.FilterTests::test_import_filter_orgs_single
Stack Traces | 16s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:1175: in test_import_filter_orgs_single
    self.create_exhaustive_organization("org-a", a, a_b, [a_b_c])
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.FilterTests::test_import_filter_orgs_multiple
Stack Traces | 16s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:1217: in test_import_filter_orgs_multiple
    self.create_exhaustive_organization("org-a", a, a_b, [a_b_c])
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.FilterTests::test_import_filter_orgs_empty
Stack Traces | 16.4s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:1267: in test_import_filter_orgs_empty
    self.create_exhaustive_organization("org-a", a, a_b, [a_b_c])
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.runner.commands.test_backup.GoodImportExportCommandTests::test_organization_scope
Stack Traces | 17.5s run time
#x1B[1m#x1B[.../runner/commands/test_backup.py#x1B[0m:549: in test_organization_scope
    cli_import_then_export("organizations")
#x1B[1m#x1B[.../runner/commands/test_backup.py#x1B[0m:489: in cli_import_then_export
    rv = CliRunner().invoke(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/click/testing.py#x1B[0m:494: in invoke
    return_value = cli.main(args=args or (), prog_name=prog_name, **extra)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1363: in main
    rv = self.invoke(ctx)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1830: in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1226: in invoke
    return ctx.invoke(self.callback, **ctx.params)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:794: in invoke
    return callback(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/click/decorators.py#x1B[0m:34: in new_func
    return f(get_current_context(), *args, **kwargs)
#x1B[1m#x1B[.../sentry/runner/decorators.py#x1B[0m:34: in inner
    return ctx.invoke(f, *args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:794: in invoke
    return callback(*args, **kwargs)
#x1B[1m#x1B[.../runner/commands/backup.py#x1B[0m:762: in import_organizations
    import_in_organization_scope(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:550: in import_in_organization_scope
    return _import(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:476: in _import
    with unguarded_write(using="default"), transaction.atomic(using="default"):
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:225: in new_atomic_exit
    _old_atomic_exit(self, exc_type, *args, **kwds)
#x1B[1m#x1B[.../sentry/utils/db.py#x1B[0m:67: in _exit
    rv = original_exit(self, exc_type, exc_value, traceback)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:307: in __exit__
    connection.set_autocommit(True)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:491: in set_autocommit
    self.run_and_clear_commit_hooks()
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:130: in run_and_clear_commit_hooks
    return old_run_and_clear_commit_hooks(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:769: in run_and_clear_commit_hooks
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.ScopingTests::test_user_import_scoping
Stack Traces | 17.7s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:773: in test_user_import_scoping
    self.create_exhaustive_instance(is_superadmin=True)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:885: in create_exhaustive_instance
    org = self.create_exhaustive_organization(
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.DecryptionTests::test_global_import_decryption
Stack Traces | 19.1s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:1052: in test_global_import_decryption
    import_in_global_scope(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:607: in import_in_global_scope
    return _import(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:476: in _import
    with unguarded_write(using="default"), transaction.atomic(using="default"):
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:225: in new_atomic_exit
    _old_atomic_exit(self, exc_type, *args, **kwds)
#x1B[1m#x1B[.../sentry/utils/db.py#x1B[0m:67: in _exit
    rv = original_exit(self, exc_type, exc_value, traceback)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:307: in __exit__
    connection.set_autocommit(True)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:491: in set_autocommit
    self.run_and_clear_commit_hooks()
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:130: in run_and_clear_commit_hooks
    return old_run_and_clear_commit_hooks(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:769: in run_and_clear_commit_hooks
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.runner.commands.test_backup.GoodGlobalImportConfirmDialogTests::test_confirm_yes
Stack Traces | 22.5s run time
#x1B[1m#x1B[.../runner/commands/test_backup.py#x1B[0m:762: in test_confirm_yes
    output = self.cli_import_with_confirmation_input("y\n")
#x1B[1m#x1B[.../runner/commands/test_backup.py#x1B[0m:746: in cli_import_with_confirmation_input
    rv = CliRunner().invoke(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/click/testing.py#x1B[0m:494: in invoke
    return_value = cli.main(args=args or (), prog_name=prog_name, **extra)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1363: in main
    rv = self.invoke(ctx)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1830: in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1226: in invoke
    return ctx.invoke(self.callback, **ctx.params)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:794: in invoke
    return callback(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/click/decorators.py#x1B[0m:34: in new_func
    return f(get_current_context(), *args, **kwargs)
#x1B[1m#x1B[.../sentry/runner/decorators.py#x1B[0m:34: in inner
    return ctx.invoke(f, *args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:794: in invoke
    return callback(*args, **kwargs)
#x1B[1m#x1B[.../runner/commands/backup.py#x1B[0m:896: in import_global
    import_in_global_scope(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:607: in import_in_global_scope
    return _import(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:476: in _import
    with unguarded_write(using="default"), transaction.atomic(using="default"):
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:225: in new_atomic_exit
    _old_atomic_exit(self, exc_type, *args, **kwds)
#x1B[1m#x1B[.../sentry/utils/db.py#x1B[0m:67: in _exit
    rv = original_exit(self, exc_type, exc_value, traceback)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:307: in __exit__
    connection.set_autocommit(True)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:491: in set_autocommit
    self.run_and_clear_commit_hooks()
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:130: in run_and_clear_commit_hooks
    return old_run_and_clear_commit_hooks(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:769: in run_and_clear_commit_hooks
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.runner.commands.test_backup.GoodImportExportCommandEncryptionTests::test_encryption_with_local_decryption
Stack Traces | 23s run time
#x1B[1m#x1B[.../runner/commands/test_backup.py#x1B[0m:720: in test_encryption_with_local_decryption
    self.cli_encrypted_import_then_export_use_local("global")
#x1B[1m#x1B[.../runner/commands/test_backup.py#x1B[0m:626: in cli_encrypted_import_then_export_use_local
    rv = CliRunner().invoke(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/click/testing.py#x1B[0m:494: in invoke
    return_value = cli.main(args=args or (), prog_name=prog_name, **extra)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1363: in main
    rv = self.invoke(ctx)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1830: in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1226: in invoke
    return ctx.invoke(self.callback, **ctx.params)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:794: in invoke
    return callback(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/click/decorators.py#x1B[0m:34: in new_func
    return f(get_current_context(), *args, **kwargs)
#x1B[1m#x1B[.../sentry/runner/decorators.py#x1B[0m:34: in inner
    return ctx.invoke(f, *args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:794: in invoke
    return callback(*args, **kwargs)
#x1B[1m#x1B[.../runner/commands/backup.py#x1B[0m:896: in import_global
    import_in_global_scope(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:607: in import_in_global_scope
    return _import(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:476: in _import
    with unguarded_write(using="default"), transaction.atomic(using="default"):
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:225: in new_atomic_exit
    _old_atomic_exit(self, exc_type, *args, **kwds)
#x1B[1m#x1B[.../sentry/utils/db.py#x1B[0m:67: in _exit
    rv = original_exit(self, exc_type, exc_value, traceback)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:307: in __exit__
    connection.set_autocommit(True)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:491: in set_autocommit
    self.run_and_clear_commit_hooks()
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:130: in run_and_clear_commit_hooks
    return old_run_and_clear_commit_hooks(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:769: in run_and_clear_commit_hooks
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.runner.commands.test_backup.GoodImportExportCommandEncryptionTests::test_encryption_with_gcp_kms_decryption
Stack Traces | 23.5s run time
#x1B[1m#x1B[.../runner/commands/test_backup.py#x1B[0m:727: in test_encryption_with_gcp_kms_decryption
    self.cli_encrypted_import_then_export_use_gcp_kms("global", fake_kms_client)
#x1B[1m#x1B[.../runner/commands/test_backup.py#x1B[0m:691: in cli_encrypted_import_then_export_use_gcp_kms
    rv = CliRunner().invoke(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/click/testing.py#x1B[0m:494: in invoke
    return_value = cli.main(args=args or (), prog_name=prog_name, **extra)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1363: in main
    rv = self.invoke(ctx)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1830: in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1226: in invoke
    return ctx.invoke(self.callback, **ctx.params)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:794: in invoke
    return callback(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/click/decorators.py#x1B[0m:34: in new_func
    return f(get_current_context(), *args, **kwargs)
#x1B[1m#x1B[.../sentry/runner/decorators.py#x1B[0m:34: in inner
    return ctx.invoke(f, *args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:794: in invoke
    return callback(*args, **kwargs)
#x1B[1m#x1B[.../runner/commands/backup.py#x1B[0m:896: in import_global
    import_in_global_scope(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:607: in import_in_global_scope
    return _import(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:476: in _import
    with unguarded_write(using="default"), transaction.atomic(using="default"):
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:225: in new_atomic_exit
    _old_atomic_exit(self, exc_type, *args, **kwds)
#x1B[1m#x1B[.../sentry/utils/db.py#x1B[0m:67: in _exit
    rv = original_exit(self, exc_type, exc_value, traceback)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:307: in __exit__
    connection.set_autocommit(True)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:491: in set_autocommit
    self.run_and_clear_commit_hooks()
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:130: in run_and_clear_commit_hooks
    return old_run_and_clear_commit_hooks(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:769: in run_and_clear_commit_hooks
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_exports.ScopingTests::test_organization_export_scoping
Stack Traces | 24.1s run time
#x1B[1m#x1B[.../sentry/backup/test_exports.py#x1B[0m:263: in test_organization_export_scoping
    self.verify_model_inclusion(unencrypted, ExportScope.Organization)
#x1B[1m#x1B[.../sentry/backup/test_exports.py#x1B[0m:182: in verify_model_inclusion
    raise AssertionError(
#x1B[1m#x1B[31mE   AssertionError: The following models were not included in the export: ${<class 'sentry.models.dashboard_widget.DashboardFieldLink'>}; this is despite it being included in at least one of the following relocation scopes: {<RelocationScope.User: 2>, <RelocationScope.Organization: 3>}#x1B[0m
tests.sentry.backup.test_exports.ScopingTests::test_global_export_scoping
Stack Traces | 24.2s run time
#x1B[1m#x1B[.../sentry/backup/test_exports.py#x1B[0m:399: in test_global_export_scoping
    self.verify_model_inclusion(unencrypted, ExportScope.Global)
#x1B[1m#x1B[.../sentry/backup/test_exports.py#x1B[0m:182: in verify_model_inclusion
    raise AssertionError(
#x1B[1m#x1B[31mE   AssertionError: The following models were not included in the export: ${<class 'sentry.models.dashboard_widget.DashboardFieldLink'>}; this is despite it being included in at least one of the following relocation scopes: {<RelocationScope.Config: 4>, <RelocationScope.User: 2>, <RelocationScope.Organization: 3>, <RelocationScope.Global: 5>}#x1B[0m
tests.sentry.backup.test_exports.ScopingTests::test_global_export_scoping
Stack Traces | 24.5s run time
#x1B[1m#x1B[.../sentry/backup/test_exports.py#x1B[0m:399: in test_global_export_scoping
    self.verify_model_inclusion(unencrypted, ExportScope.Global)
#x1B[1m#x1B[.../sentry/backup/test_exports.py#x1B[0m:182: in verify_model_inclusion
    raise AssertionError(
#x1B[1m#x1B[31mE   AssertionError: The following models were not included in the export: ${<class 'sentry.models.dashboard_widget.DashboardFieldLink'>}; this is despite it being included in at least one of the following relocation scopes: {<RelocationScope.Config: 4>, <RelocationScope.Organization: 3>, <RelocationScope.Global: 5>, <RelocationScope.User: 2>}#x1B[0m
tests.sentry.backup.test_exports.ScopingTests::test_organization_export_scoping
Stack Traces | 26.5s run time
#x1B[1m#x1B[.../sentry/backup/test_exports.py#x1B[0m:263: in test_organization_export_scoping
    self.verify_model_inclusion(unencrypted, ExportScope.Organization)
#x1B[1m#x1B[.../sentry/backup/test_exports.py#x1B[0m:182: in verify_model_inclusion
    raise AssertionError(
#x1B[1m#x1B[31mE   AssertionError: The following models were not included in the export: ${<class 'sentry.models.dashboard_widget.DashboardFieldLink'>}; this is despite it being included in at least one of the following relocation scopes: {<RelocationScope.User: 2>, <RelocationScope.Organization: 3>}#x1B[0m
tests.sentry.runner.commands.test_backup.GoodImportExportCommandTests::test_global_scope
Stack Traces | 27.6s run time
#x1B[1m#x1B[.../runner/commands/test_backup.py#x1B[0m:539: in test_global_scope
    cli_import_then_export("global")
#x1B[1m#x1B[.../runner/commands/test_backup.py#x1B[0m:489: in cli_import_then_export
    rv = CliRunner().invoke(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/click/testing.py#x1B[0m:494: in invoke
    return_value = cli.main(args=args or (), prog_name=prog_name, **extra)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1363: in main
    rv = self.invoke(ctx)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1830: in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:1226: in invoke
    return ctx.invoke(self.callback, **ctx.params)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:794: in invoke
    return callback(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/click/decorators.py#x1B[0m:34: in new_func
    return f(get_current_context(), *args, **kwargs)
#x1B[1m#x1B[.../sentry/runner/decorators.py#x1B[0m:34: in inner
    return ctx.invoke(f, *args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.............../site-packages/click/core.py#x1B[0m:794: in invoke
    return callback(*args, **kwargs)
#x1B[1m#x1B[.../runner/commands/backup.py#x1B[0m:896: in import_global
    import_in_global_scope(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:607: in import_in_global_scope
    return _import(
#x1B[1m#x1B[.../sentry/backup/imports.py#x1B[0m:476: in _import
    with unguarded_write(using="default"), transaction.atomic(using="default"):
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:225: in new_atomic_exit
    _old_atomic_exit(self, exc_type, *args, **kwds)
#x1B[1m#x1B[.../sentry/utils/db.py#x1B[0m:67: in _exit
    rv = original_exit(self, exc_type, exc_value, traceback)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:307: in __exit__
    connection.set_autocommit(True)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:491: in set_autocommit
    self.run_and_clear_commit_hooks()
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:130: in run_and_clear_commit_hooks
    return old_run_and_clear_commit_hooks(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:769: in run_and_clear_commit_hooks
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.ScopingTests::test_organization_import_scoping
Stack Traces | 31.3s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:788: in test_organization_import_scoping
    self.create_exhaustive_instance(is_superadmin=True)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:885: in create_exhaustive_instance
    org = self.create_exhaustive_organization(
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13/contextlib.py#x1B[0m:85: in inner
    return func(*args, **kwds)
#x1B[1m#x1B[.../testutils/helpers/backups.py#x1B[0m:467: in create_exhaustive_organization
    OrganizationOption.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/manager.py#x1B[0m:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:663: in create
    obj.save(force_insert=True, using=self.db)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:902: in save
    self.save_base(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1023: in save_base
    post_save.send(
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:101: in send
    return old_send(self, sender, **named)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/dispatch/dispatcher.py#x1B[0m:189: in send
    response = receiver(signal=self, sender=sender, **named)
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:93: in post_save
    self.reload_cache(instance.organization_id, "organizationoption.post_save")
#x1B[1m#x1B[.../models/options/organization_option.py#x1B[0m:82: in reload_cache
    schedule_invalidate_project_config(
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/tracing_utils.py#x1B[0m:867: in sync_wrapper
    result = f(*args, **kwargs)
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:314: in schedule_invalidate_project_config
    transaction.on_commit(
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:232: in new_atomic_on_commit
    _old_transaction_on_commit(func, using)
#x1B[1m#x1B[.../testutils/pytest/stale_database_reads.py#x1B[0m:111: in on_commit
    return old_on_commit(*args, **kwargs)
#x1B[1m#x1B[.../silo/patches/silo_aware_transaction_patch.py#x1B[0m:51: in siloed_on_commit
    return _default_on_commit(func, using)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/transaction.py#x1B[0m:134: in on_commit
    get_connection(using).on_commit(func, robust)
#x1B[1m#x1B[31m.venv/lib/python3.13.../backends/base/base.py#x1B[0m:750: in on_commit
    func()
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:315: in <lambda>
    lambda: _schedule_invalidate_project_config(
#x1B[1m#x1B[.../sentry/tasks/relay.py#x1B[0m:386: in _schedule_invalidate_project_config
    invalidate_project_config.apply_async(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:158: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/taskworker/task.py#x1B[0m:131: in apply_async
    self._namespace.send_task(
#x1B[1m#x1B[.../sentry/taskworker/registry.py#x1B[0m:160: in send_task
    produce_future = self._producer(topic).produce(
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:40: in produce
    self._track_futures(future)
#x1B[1m#x1B[.../sentry/utils/arroyo_producer.py#x1B[0m:58: in _track_futures
    future.result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:449: in result
    return self.__get_result()
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1........./x64/lib/python3.13....../concurrent/futures/_base.py#x1B[0m:401: in __get_result
    raise self._exception
#x1B[1m#x1B[31mE   arroyo.errors.TransportError: KafkaError{code=_MSG_TIMED_OUT,val=-192,str="Local: Message timed out"}#x1B[0m
tests.sentry.backup.test_imports.ScopingTests::test_organization_import_scoping
Stack Traces | 49.5s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:794: in test_organization_import_scoping
    self.verify_model_inclusion(ImportScope.Organization)
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:762: in verify_model_inclusion
    assert model.objects.count() > 0
#x1B[1m#x1B[31mE   AssertionError: assert 0 > 0#x1B[0m
#x1B[1m#x1B[31mE    +  where 0 = <bound method QuerySet.count of <sentry.db.models.manager.base.BaseManager object at 0x7f187a75fa10>>()#x1B[0m
#x1B[1m#x1B[31mE    +    where <bound method QuerySet.count of <sentry.db.models.manager.base.BaseManager object at 0x7f187a75fa10>> = <sentry.db.models.manager.base.BaseManager object at 0x7f187a75fa10>.count#x1B[0m
#x1B[1m#x1B[31mE    +      where <sentry.db.models.manager.base.BaseManager object at 0x7f187a75fa10> = <class 'sentry.models.dashboard_widget.DashboardFieldLink'>.objects#x1B[0m
tests.sentry.backup.test_imports.ScopingTests::test_global_import_scoping
Stack Traces | 50.4s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:834: in test_global_import_scoping
    self.verify_model_inclusion(ImportScope.Global)
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:762: in verify_model_inclusion
    assert model.objects.count() > 0
#x1B[1m#x1B[31mE   AssertionError: assert 0 > 0#x1B[0m
#x1B[1m#x1B[31mE    +  where 0 = <bound method QuerySet.count of <sentry.db.models.manager.base.BaseManager object at 0x7f49d3b6ba10>>()#x1B[0m
#x1B[1m#x1B[31mE    +    where <bound method QuerySet.count of <sentry.db.models.manager.base.BaseManager object at 0x7f49d3b6ba10>> = <sentry.db.models.manager.base.BaseManager object at 0x7f49d3b6ba10>.count#x1B[0m
#x1B[1m#x1B[31mE    +      where <sentry.db.models.manager.base.BaseManager object at 0x7f49d3b6ba10> = <class 'sentry.models.dashboard_widget.DashboardFieldLink'>.objects#x1B[0m
tests.sentry.backup.test_exhaustive.ExhaustiveTests::test_exhaustive_dirty_pks
Stack Traces | 51.2s run time
#x1B[1m#x1B[.../sentry/backup/test_exhaustive.py#x1B[0m:39: in test_exhaustive_dirty_pks
    verify_models_in_output(expected_models, actual)
#x1B[1m#x1B[.../sentry/backup/__init__.py#x1B[0m:39: in verify_models_in_output
    raise AssertionError(
#x1B[1m#x1B[31mE   AssertionError: Some `expected_models` entries were not found: ['sentry.dashboardfieldlink']#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE               If you are seeing this in CI, it means that this test produced an `export.json` backup#x1B[0m
#x1B[1m#x1B[31mE               file that was missing the above models. This check is in place to ensure that ALL models#x1B[0m
#x1B[1m#x1B[31mE               of a certain category are covered by this particular test - by omitting a certain kind#x1B[0m
#x1B[1m#x1B[31mE               of model from the backup output entirely, we end up in a situation where backing up the#x1B[0m
#x1B[1m#x1B[31mE               model in question to JSON is untested.#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE               To fix this, you'll need to modify the body of the test to add at least one of these#x1B[0m
#x1B[1m#x1B[31mE               models to the database before exporting. The process for doing so is test-specific, but#x1B[0m
#x1B[1m#x1B[31mE               if the test body contains a fixture factory like `self.create_exhaustive_...`, that#x1B[0m
#x1B[1m#x1B[31mE               function will be a good place to start. If it does not, you can just write the model to#x1B[0m
#x1B[1m#x1B[31mE               the database at the appropriate point in the test: `MyNewModel.objects.create(...)`.#x1B[0m
tests.sentry.backup.test_imports.ScopingTests::test_global_import_scoping
Stack Traces | 51.3s run time
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:834: in test_global_import_scoping
    self.verify_model_inclusion(ImportScope.Global)
#x1B[1m#x1B[.../sentry/backup/test_imports.py#x1B[0m:762: in verify_model_inclusion
    assert model.objects.count() > 0
#x1B[1m#x1B[31mE   AssertionError: assert 0 > 0#x1B[0m
#x1B[1m#x1B[31mE    +  where 0 = <bound method QuerySet.count of <sentry.db.models.manager.base.BaseManager object at 0x7f5375363a10>>()#x1B[0m
#x1B[1m#x1B[31mE    +    where <bound method QuerySet.count of <sentry.db.models.manager.base.BaseManager object at 0x7f5375363a10>> = <sentry.db.models.manager.base.BaseManager object at 0x7f5375363a10>.count#x1B[0m
#x1B[1m#x1B[31mE    +      where <sentry.db.models.manager.base.BaseManager object at 0x7f5375363a10> = <class 'sentry.models.dashboard_widget.DashboardFieldLink'>.objects#x1B[0m
tests.sentry.backup.test_exhaustive.ExhaustiveTests::test_exhaustive_dirty_pks
Stack Traces | 57.5s run time
#x1B[1m#x1B[.../sentry/backup/test_exhaustive.py#x1B[0m:39: in test_exhaustive_dirty_pks
    verify_models_in_output(expected_models, actual)
#x1B[1m#x1B[.../sentry/backup/__init__.py#x1B[0m:39: in verify_models_in_output
    raise AssertionError(
#x1B[1m#x1B[31mE   AssertionError: Some `expected_models` entries were not found: ['sentry.dashboardfieldlink']#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE               If you are seeing this in CI, it means that this test produced an `export.json` backup#x1B[0m
#x1B[1m#x1B[31mE               file that was missing the above models. This check is in place to ensure that ALL models#x1B[0m
#x1B[1m#x1B[31mE               of a certain category are covered by this particular test - by omitting a certain kind#x1B[0m
#x1B[1m#x1B[31mE               of model from the backup output entirely, we end up in a situation where backing up the#x1B[0m
#x1B[1m#x1B[31mE               model in question to JSON is untested.#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE               To fix this, you'll need to modify the body of the test to add at least one of these#x1B[0m
#x1B[1m#x1B[31mE               models to the database before exporting. The process for doing so is test-specific, but#x1B[0m
#x1B[1m#x1B[31mE               if the test body contains a fixture factory like `self.create_exhaustive_...`, that#x1B[0m
#x1B[1m#x1B[31mE               function will be a good place to start. If it does not, you can just write the model to#x1B[0m
#x1B[1m#x1B[31mE               the database at the appropriate point in the test: `MyNewModel.objects.create(...)`.#x1B[0m
tests.sentry.backup.test_exhaustive.ExhaustiveTests::test_uniqueness
Stack Traces | 69.3s run time
#x1B[1m#x1B[.../sentry/backup/test_exhaustive.py#x1B[0m:63: in test_uniqueness
    verify_models_in_output(expected_models, actual)
#x1B[1m#x1B[.../sentry/backup/__init__.py#x1B[0m:39: in verify_models_in_output
    raise AssertionError(
#x1B[1m#x1B[31mE   AssertionError: Some `expected_models` entries were not found: ['sentry.dashboardfieldlink']#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE               If you are seeing this in CI, it means that this test produced an `export.json` backup#x1B[0m
#x1B[1m#x1B[31mE               file that was missing the above models. This check is in place to ensure that ALL models#x1B[0m
#x1B[1m#x1B[31mE               of a certain category are covered by this particular test - by omitting a certain kind#x1B[0m
#x1B[1m#x1B[31mE               of model from the backup output entirely, we end up in a situation where backing up the#x1B[0m
#x1B[1m#x1B[31mE               model in question to JSON is untested.#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE               To fix this, you'll need to modify the body of the test to add at least one of these#x1B[0m
#x1B[1m#x1B[31mE               models to the database before exporting. The process for doing so is test-specific, but#x1B[0m
#x1B[1m#x1B[31mE               if the test body contains a fixture factory like `self.create_exhaustive_...`, that#x1B[0m
#x1B[1m#x1B[31mE               function will be a good place to start. If it does not, you can just write the model to#x1B[0m
#x1B[1m#x1B[31mE               the database at the appropriate point in the test: `MyNewModel.objects.create(...)`.#x1B[0m
tests.sentry.backup.test_exhaustive.ExhaustiveTests::test_uniqueness
Stack Traces | 74.8s run time
#x1B[1m#x1B[.../sentry/backup/test_exhaustive.py#x1B[0m:63: in test_uniqueness
    verify_models_in_output(expected_models, actual)
#x1B[1m#x1B[.../sentry/backup/__init__.py#x1B[0m:39: in verify_models_in_output
    raise AssertionError(
#x1B[1m#x1B[31mE   AssertionError: Some `expected_models` entries were not found: ['sentry.dashboardfieldlink']#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE               If you are seeing this in CI, it means that this test produced an `export.json` backup#x1B[0m
#x1B[1m#x1B[31mE               file that was missing the above models. This check is in place to ensure that ALL models#x1B[0m
#x1B[1m#x1B[31mE               of a certain category are covered by this particular test - by omitting a certain kind#x1B[0m
#x1B[1m#x1B[31mE               of model from the backup output entirely, we end up in a situation where backing up the#x1B[0m
#x1B[1m#x1B[31mE               model in question to JSON is untested.#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE               To fix this, you'll need to modify the body of the test to add at least one of these#x1B[0m
#x1B[1m#x1B[31mE               models to the database before exporting. The process for doing so is test-specific, but#x1B[0m
#x1B[1m#x1B[31mE               if the test body contains a fixture factory like `self.create_exhaustive_...`, that#x1B[0m
#x1B[1m#x1B[31mE               function will be a good place to start. If it does not, you can just write the model to#x1B[0m
#x1B[1m#x1B[31mE               the database at the appropriate point in the test: `MyNewModel.objects.create(...)`.#x1B[0m

To view more test analytics, go to the Test Analytics Dashboard
📋 Got 3 mins? Take this short survey to help us improve Test Analytics.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Scope: Backend Automatically applied to PRs that change backend components
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant