Skip to content

Conversation

@cathteng
Copy link
Member

No description provided.

@github-actions github-actions bot added the Scope: Backend Automatically applied to PRs that change backend components label Nov 11, 2025
@codecov
Copy link

codecov bot commented Nov 11, 2025

❌ 27 Tests Failed:

Tests completed Failed Passed Skipped
22888 27 22861 189
View the top 3 failed test(s) by shortest run time
tests.sentry.workflow_engine.models.test_json_config_base.TestDetectorConfig::test_detector_empty_schema
Stack Traces | 1.57s run time
#x1B[1m#x1B[.../workflow_engine/models/test_json_config_base.py#x1B[0m:75: in test_detector_empty_schema
    self.create_detector(name="example_detector", type="example", config={})
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:705: in create_detector
    project = self.create_project(organization=self.organization)
#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:554: in create_project
    project = Project.objects.create(organization=organization, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: 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:159: 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:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/models/project.py#x1B[0m:419: in save
    self._save_project(*args, **kwargs)
#x1B[1m#x1B[.../sentry/models/project.py#x1B[0m:394: in _save_project
    save_with_snowflake_id(
#x1B[1m#x1B[.../sentry/utils/snowflake.py#x1B[0m:59: in save_with_snowflake_id
    save_callback()
#x1B[1m#x1B[.../sentry/models/project.py#x1B[0m:397: in <lambda>
    save_callback=lambda: super(Project, self).save(*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:159: 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[.../sentry/receivers/project_detectors.py#x1B[0m:18: in create_project_detectors
    ensure_default_detectors(instance)
#x1B[1m#x1B[.../workflow_engine/processors/detector.py#x1B[0m:100: in ensure_default_detectors
    return _ensure_detector(project, ErrorGroupType.slug), _ensure_detector(
#x1B[1m#x1B[.../workflow_engine/processors/detector.py#x1B[0m:55: in _ensure_detector
    raise ValueError(f"Group type {type} not registered")
#x1B[1m#x1B[31mE   ValueError: Group type error not registered#x1B[0m
tests.sentry.issues.test_ingest.SaveIssueFromOccurrenceTest::test_noise_reduction
Stack Traces | 1.65s run time
#x1B[1m#x1B[.../sentry/issues/test_ingest.py#x1B[0m:578: in test_noise_reduction
    event = self.store_event(data={}, project_id=self.project.id)
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/utils/functional.py#x1B[0m:47: in __get__
    res = instance.__dict__[self.name] = self.func(instance)
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:111: in project
    return self.create_project(
#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:554: in create_project
    project = Project.objects.create(organization=organization, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: 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:159: 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:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/models/project.py#x1B[0m:419: in save
    self._save_project(*args, **kwargs)
#x1B[1m#x1B[.../sentry/models/project.py#x1B[0m:394: in _save_project
    save_with_snowflake_id(
#x1B[1m#x1B[.../sentry/utils/snowflake.py#x1B[0m:59: in save_with_snowflake_id
    save_callback()
#x1B[1m#x1B[.../sentry/models/project.py#x1B[0m:397: in <lambda>
    save_callback=lambda: super(Project, self).save(*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:159: 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[.../sentry/receivers/project_detectors.py#x1B[0m:18: in create_project_detectors
    ensure_default_detectors(instance)
#x1B[1m#x1B[.../workflow_engine/processors/detector.py#x1B[0m:100: in ensure_default_detectors
    return _ensure_detector(project, ErrorGroupType.slug), _ensure_detector(
#x1B[1m#x1B[.../workflow_engine/processors/detector.py#x1B[0m:55: in _ensure_detector
    raise ValueError(f"Group type {type} not registered")
#x1B[1m#x1B[31mE   ValueError: Group type error not registered#x1B[0m
tests.sentry.workflow_engine.models.test_json_config_base.TestDetectorConfig::test_detector_schema
Stack Traces | 1.97s run time
#x1B[1m#x1B[.../workflow_engine/models/test_json_config_base.py#x1B[0m:69: in test_detector_schema
    self.create_detector(name="test_detector", type="test", config=self.correct_config)
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:705: in create_detector
    project = self.create_project(organization=self.organization)
#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:554: in create_project
    project = Project.objects.create(organization=organization, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: 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:159: 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:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../sentry/models/project.py#x1B[0m:419: in save
    self._save_project(*args, **kwargs)
#x1B[1m#x1B[.../sentry/models/project.py#x1B[0m:394: in _save_project
    save_with_snowflake_id(
#x1B[1m#x1B[.../sentry/utils/snowflake.py#x1B[0m:59: in save_with_snowflake_id
    save_callback()
#x1B[1m#x1B[.../sentry/models/project.py#x1B[0m:397: in <lambda>
    save_callback=lambda: super(Project, self).save(*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:159: 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[.../sentry/receivers/project_detectors.py#x1B[0m:18: in create_project_detectors
    ensure_default_detectors(instance)
#x1B[1m#x1B[.../workflow_engine/processors/detector.py#x1B[0m:100: in ensure_default_detectors
    return _ensure_detector(project, ErrorGroupType.slug), _ensure_detector(
#x1B[1m#x1B[.../workflow_engine/processors/detector.py#x1B[0m:55: in _ensure_detector
    raise ValueError(f"Group type {type} not registered")
#x1B[1m#x1B[31mE   ValueError: Group type error not registered#x1B[0m
tests.sentry.incidents.endpoints.validators.test_validators.TestMetricAlertsDetectorValidator::test_enforce_quota_within_limit
Stack Traces | 2.01s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../endpoints/validators/test_validators.py#x1B[0m:488: in test_enforce_quota_within_limit
    self.create_detector(
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "status" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.monitors.endpoints.test_organization_detector_index.OrganizationDetectorIndexGetTest::test_list_monitor_incident_detectors
Stack Traces | 2.59s run time
#x1B[1m#x1B[.../monitors/endpoints/test_organization_detector_index.py#x1B[0m:56: in test_list_monitor_incident_detectors
    assert response.data == [
#x1B[1m#x1B[31mE   TypeError: 'NoneType' object is not subscriptable#x1B[0m
tests.sentry.workflow_engine.models.test_detector.DetectorTest::test_get_error_detector_for_project__not_found
Stack Traces | 2.76s run time
#x1B[1m#x1B[.../workflow_engine/models/test_detector.py#x1B[0m:103: in test_get_error_detector_for_project__not_found
    with pytest.raises(Detector.DoesNotExist):
#x1B[1m#x1B[31mE   Failed: DID NOT RAISE <class 'sentry.workflow_engine.models.detector.Detector.DoesNotExist'>#x1B[0m
tests.sentry.workflow_engine.endpoints.test_organization_workflow_details.OrganizationUpdateWorkflowTest::test_update_detectors_transaction_rollback_on_validation_failure
Stack Traces | 2.92s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/endpoints/test_organization_workflow_details.py#x1B[0m:280: in test_update_detectors_transaction_rollback_on_validation_failure
    existing_detector = self.create_detector(project_id=self.project.id)
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.workflow_engine.endpoints.test_organization_workflow_details.OrganizationUpdateWorkflowTest::test_update_detectors_from_different_organization
Stack Traces | 2.95s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/endpoints/test_organization_workflow_details.py#x1B[0m:262: in test_update_detectors_from_different_organization
    other_detector = self.create_detector(project_id=other_project.id)
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.workflow_engine.endpoints.test_organization_workflow_details.OrganizationUpdateWorkflowTest::test_update_detectors_no_changes
Stack Traces | 3.01s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/endpoints/test_organization_workflow_details.py#x1B[0m:351: in test_update_detectors_no_changes
    detector = self.create_detector(project_id=self.project.id)
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.workflow_engine.endpoints.test_organization_workflow_details.OrganizationUpdateWorkflowTest::test_update_detectors_replace_detectors
Stack Traces | 3.02s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/endpoints/test_organization_workflow_details.py#x1B[0m:156: in test_update_detectors_replace_detectors
    existing_detector = self.create_detector(project_id=self.project.id)
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.workflow_engine.endpoints.test_organization_workflow_details.OrganizationUpdateWorkflowTest::test_update_detectors_add_detector
Stack Traces | 3.06s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/endpoints/test_organization_workflow_details.py#x1B[0m:121: in test_update_detectors_add_detector
    detector1 = self.create_detector(project_id=self.project.id)
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.projects.project_rules.test_updater.TestUpdater::test_update_environment_when_none
Stack Traces | 3.06s run time
#x1B[1m#x1B[.../projects/project_rules/test_updater.py#x1B[0m:65: in test_update_environment_when_none
    self.updater.run()
#x1B[1m#x1B[.../projects/project_rules/updater.py#x1B[0m:46: in run
    workflow = update_migrated_issue_alert(self.rule)
#x1B[1m#x1B[.../workflow_engine/migration_helpers/issue_alert_dual_write.py#x1B[0m:141: in update_migrated_issue_alert
    match=data["filter_match"],
#x1B[1m#x1B[31mE   KeyError: 'filter_match'#x1B[0m
tests.sentry.workflow_engine.models.test_detector.DetectorTest::test_get_error_detector_for_project__success
Stack Traces | 3.13s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/models/test_detector.py#x1B[0m:92: in test_get_error_detector_for_project__success
    error_detector = self.create_detector(
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.projects.project_rules.test_updater.TestUpdater::test_update_owner
Stack Traces | 3.15s run time
#x1B[1m#x1B[.../projects/project_rules/test_updater.py#x1B[0m:39: in test_update_owner
    self.updater.run()
#x1B[1m#x1B[.../projects/project_rules/updater.py#x1B[0m:46: in run
    workflow = update_migrated_issue_alert(self.rule)
#x1B[1m#x1B[.../workflow_engine/migration_helpers/issue_alert_dual_write.py#x1B[0m:141: in update_migrated_issue_alert
    match=data["filter_match"],
#x1B[1m#x1B[31mE   KeyError: 'filter_match'#x1B[0m
tests.sentry.workflow_engine.models.test_detector.DetectorTest::test_get_error_detector_for_project__caching
Stack Traces | 3.15s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/models/test_detector.py#x1B[0m:117: in test_get_error_detector_for_project__caching
    error_detector = self.create_detector(
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.projects.project_rules.test_creator.TestProjectRuleCreator::test_creates_rule
Stack Traces | 3.15s run time
#x1B[1m#x1B[.../projects/project_rules/test_creator.py#x1B[0m:81: in test_creates_rule
    assert not AlertRuleDetector.objects.filter(rule_id=rule.id).exists()
#x1B[1m#x1B[31mE   AssertionError: assert not True#x1B[0m
#x1B[1m#x1B[31mE    +  where True = <bound method QuerySet.exists of <BaseQuerySet [<AlertRuleDetector at 0x7f5bb0249bd0: id=178>]>>()#x1B[0m
#x1B[1m#x1B[31mE    +    where <bound method QuerySet.exists of <BaseQuerySet [<AlertRuleDetector at 0x7f5bb0249bd0: id=178>]>> = <BaseQuerySet [<AlertRuleDetector at 0x7f5bb023c450: id=178>]>.exists#x1B[0m
#x1B[1m#x1B[31mE    +      where <BaseQuerySet [<AlertRuleDetector at 0x7f5bb023c450: id=178>]> = <bound method QuerySet.filter of <sentry.db.models.manager.base.BaseManager object at 0x7f5c47635a90>>(rule_id=194)#x1B[0m
#x1B[1m#x1B[31mE    +        where <bound method QuerySet.filter of <sentry.db.models.manager.base.BaseManager object at 0x7f5c47635a90>> = <sentry.db.models.manager.base.BaseManager object at 0x7f5c47635a90>.filter#x1B[0m
#x1B[1m#x1B[31mE    +          where <sentry.db.models.manager.base.BaseManager object at 0x7f5c47635a90> = AlertRuleDetector.objects#x1B[0m
#x1B[1m#x1B[31mE    +        and   194 = <Rule at 0x7f5bb02b6c90: id=194, project_id=4557092786536451, label='New Cool Rule'>.id#x1B[0m
tests.sentry.workflow_engine.models.test_detector.DetectorTest::test_get_error_detector_for_project__cache_hit
Stack Traces | 3.2s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/models/test_detector.py#x1B[0m:142: in test_get_error_detector_for_project__cache_hit
    error_detector = self.create_detector(
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.workflow_engine.endpoints.test_organization_workflow_details.OrganizationUpdateWorkflowTest::test_update_without_detector_ids
Stack Traces | 3.21s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/endpoints/test_organization_workflow_details.py#x1B[0m:327: in test_update_without_detector_ids
    detector = self.create_detector(project_id=self.project.id)
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.workflow_engine.migrations.test_0085_crons_link_detectors_to_all_workflows.LinkCronDetectorsToAllWorkflowsTest::test_migration
Stack Traces | 3.23s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.UniqueViolation: duplicate key value violates unique constraint "workflow_engine_detector_detector_id_workflow_id_e900662b_uniq"#x1B[0m
#x1B[1m#x1B[31mE   DETAIL:  Key (detector_id, workflow_id)=(20, 17) already exists.#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/migrations/test_0085_crons_link_detectors_to_all_workflows.py#x1B[0m:70: in setup_initial_state
    DetectorWorkflow.objects.create(
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: 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:159: 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:159: 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:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1008: in save_base
    updated = self._save_table(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1169: in _save_table
    results = self._do_insert(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/base.py#x1B[0m:1210: in _do_insert
    return manager._insert(
#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[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1864: in _insert
    return query.get_compiler(using=using).execute_sql(returning_fields)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1882: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.IntegrityError: duplicate key value violates unique constraint "workflow_engine_detector_detector_id_workflow_id_e900662b_uniq"#x1B[0m
#x1B[1m#x1B[31mE   DETAIL:  Key (detector_id, workflow_id)=(20, 17) already exists.#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: INSERT INTO "workflow_engine_detectorworkflow" ("date_updated", "date_added", "detector_id", "workflow_id") VALUES (%s, %s, %s, %s) RETURNING "workflow_engine_detectorworkflow"."id"#x1B[0m
tests.sentry.projects.project_rules.test_creator.TestProjectRuleCreator::test_dual_create_workflow_engine__cant_acquire_lock
Stack Traces | 3.24s run time
#x1B[1m#x1B[.../projects/project_rules/test_creator.py#x1B[0m:173: in test_dual_create_workflow_engine__cant_acquire_lock
    with pytest.raises(UnableToAcquireLockApiError):
#x1B[1m#x1B[31mE   Failed: DID NOT RAISE <class 'sentry.workflow_engine.processors.detector.UnableToAcquireLockApiError'>#x1B[0m
tests.sentry.projects.project_rules.test_updater.TestUpdater::test_update_environment
Stack Traces | 3.27s run time
#x1B[1m#x1B[.../projects/project_rules/test_updater.py#x1B[0m:58: in test_update_environment
    self.updater.run()
#x1B[1m#x1B[.../projects/project_rules/updater.py#x1B[0m:46: in run
    workflow = update_migrated_issue_alert(self.rule)
#x1B[1m#x1B[.../workflow_engine/migration_helpers/issue_alert_dual_write.py#x1B[0m:141: in update_migrated_issue_alert
    match=data["filter_match"],
#x1B[1m#x1B[31mE   KeyError: 'filter_match'#x1B[0m
tests.sentry.projects.project_rules.test_updater.TestUpdater::test_update_action_match
Stack Traces | 3.29s run time
#x1B[1m#x1B[.../projects/project_rules/test_updater.py#x1B[0m:90: in test_update_action_match
    self.updater.run()
#x1B[1m#x1B[.../projects/project_rules/updater.py#x1B[0m:46: in run
    workflow = update_migrated_issue_alert(self.rule)
#x1B[1m#x1B[.../workflow_engine/migration_helpers/issue_alert_dual_write.py#x1B[0m:141: in update_migrated_issue_alert
    match=data["filter_match"],
#x1B[1m#x1B[31mE   KeyError: 'filter_match'#x1B[0m
tests.sentry.projects.project_rules.test_updater.TestUpdater::test_update_frequency
Stack Traces | 3.39s run time
#x1B[1m#x1B[.../projects/project_rules/test_updater.py#x1B[0m:119: in test_update_frequency
    self.updater.run()
#x1B[1m#x1B[.../projects/project_rules/updater.py#x1B[0m:46: in run
    workflow = update_migrated_issue_alert(self.rule)
#x1B[1m#x1B[.../workflow_engine/migration_helpers/issue_alert_dual_write.py#x1B[0m:141: in update_migrated_issue_alert
    match=data["filter_match"],
#x1B[1m#x1B[31mE   KeyError: 'filter_match'#x1B[0m
tests.sentry.projects.project_rules.test_updater.TestUpdater::test_update_conditions
Stack Traces | 3.42s run time
#x1B[1m#x1B[.../projects/project_rules/test_updater.py#x1B[0m:107: in test_update_conditions
    self.updater.run()
#x1B[1m#x1B[.../projects/project_rules/updater.py#x1B[0m:46: in run
    workflow = update_migrated_issue_alert(self.rule)
#x1B[1m#x1B[.../workflow_engine/migration_helpers/issue_alert_dual_write.py#x1B[0m:141: in update_migrated_issue_alert
    match=data["filter_match"],
#x1B[1m#x1B[31mE   KeyError: 'filter_match'#x1B[0m
tests.sentry.projects.project_rules.test_updater.TestUpdater::test_update_project
Stack Traces | 3.48s run time
#x1B[1m#x1B[.../projects/project_rules/test_updater.py#x1B[0m:71: in test_update_project
    self.updater.run()
#x1B[1m#x1B[.../projects/project_rules/updater.py#x1B[0m:46: in run
    workflow = update_migrated_issue_alert(self.rule)
#x1B[1m#x1B[.../workflow_engine/migration_helpers/issue_alert_dual_write.py#x1B[0m:141: in update_migrated_issue_alert
    match=data["filter_match"],
#x1B[1m#x1B[31mE   KeyError: 'filter_match'#x1B[0m
tests.sentry.workflow_engine.models.test_detector.DetectorTest::test_get_error_detector_for_project__wrong_type
Stack Traces | 3.62s run time
#x1B[1m#x1B[.../workflow_engine/models/test_detector.py#x1B[0m:113: in test_get_error_detector_for_project__wrong_type
    with pytest.raises(Detector.DoesNotExist):
#x1B[1m#x1B[31mE   Failed: DID NOT RAISE <class 'sentry.workflow_engine.models.detector.Detector.DoesNotExist'>#x1B[0m
tests.sentry.workflow_engine.endpoints.test_organization_detector_details.OrganizationDetectorDetailsDeleteTest::test_error_group_type
Stack Traces | 3.62s run time
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   psycopg2.errors.SyntaxError: multiple assignments to same column "project_id"#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../workflow_engine/endpoints/test_organization_detector_details.py#x1B[0m:742: in test_error_group_type
    error_detector = self.create_detector(
#x1B[1m#x1B[.../sentry/testutils/fixtures.py#x1B[0m:707: in create_detector
    return Factories.create_detector(*args, project=project, type=type, **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:2283: in create_detector
    detector.update(config=config, name=name, **kwargs)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../db/models/query.py#x1B[0m:92: in update
    instance.__class__.objects.using(using)
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../models/manager/base_query_set.py#x1B[0m:89: in update
    return super().update(**kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:1259: in update
    rows = query.get_compiler(self.db).execute_sql(ROW_COUNT)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:2060: in execute_sql
    row_count = super().execute_sql(result_type)
#x1B[1m#x1B[31m.venv/lib/python3.13.../models/sql/compiler.py#x1B[0m:1623: in execute_sql
    cursor.execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:122: in execute
    return super().execute(sql, params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../site-packages/sentry_sdk/utils.py#x1B[0m:1849: in runner
    return original_function(*args, **kwargs)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:79: in execute
    return self._execute_with_wrappers(
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:92: in _execute_with_wrappers
    return executor(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:70: in _execute__include_sql_in_error
    return execute(sql, params, many, context)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:58: in _execute__clean_params
    return execute(sql, clean_bad_params(params), many, context)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:133: in __call__
    return execute(*params)
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:100: in _execute
    with self.db.wrap_database_errors:
#x1B[1m#x1B[31m.venv/lib/python3.13.../django/db/utils.py#x1B[0m:91: in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
#x1B[1m#x1B[31m.venv/lib/python3.13.../db/backends/utils.py#x1B[0m:105: in _execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[.../db/postgres/decorators.py#x1B[0m:16: in inner
    return func(self, *args, **kwargs)
#x1B[1m#x1B[.../db/postgres/base.py#x1B[0m:95: in execute
    return self.cursor.execute(sql, params)
#x1B[1m#x1B[31mE   django.db.utils.ProgrammingError: multiple assignments to same column "project_id"#x1B[0m
#x1B[1m#x1B[31mE   #x1B[0m
#x1B[1m#x1B[31mE   SQL: UPDATE "workflow_engine_detector" SET "config" = %s, "name" = %s, "project_id" = %s, "type" = %s, "project_id" = %s, "workflow_condition_group_id" = %s, "date_updated" = %s WHERE (NOT ("workflow_engine_detector"."status" IN (%s, %s)) AND "workflow_engine_detector"."id" = %s)#x1B[0m
tests.sentry.issues.endpoints.test_organization_group_index.GroupListTest::test_query_detector_filter
Stack Traces | 5.59s run time
#x1B[1m#x1B[.../hybridcloud/models/outbox.py#x1B[0m:312: in process
    coalesced.send_signal()
#x1B[1m#x1B[.../hybridcloud/models/outbox.py#x1B[0m:460: in send_signal
    process_control_outbox.send(
#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[.../hybridcloud/outbox/category.py#x1B[0m:115: in receiver
    maybe_instance.handle_async_replication(
#x1B[1m#x1B[.../users/models/user.py#x1B[0m:592: in handle_async_replication
    region_caching_service.clear_key(key=get_user.key_from(self.id), region_name=region_name)
#x1B[1m#x1B[.../hybridcloud/rpc/service.py#x1B[0m:354: in remote_method
    return dispatch_remote_call(
#x1B[1m#x1B[.../hybridcloud/rpc/service.py#x1B[0m:476: in dispatch_remote_call
    return remote_silo_call.dispatch(use_test_client)
#x1B[1m#x1B[.../hybridcloud/rpc/service.py#x1B[0m:511: in dispatch
    serial_response = self._send_to_remote_silo(use_test_client)
#x1B[1m#x1B[.../hybridcloud/rpc/service.py#x1B[0m:582: in _send_to_remote_silo
    self._raise_from_response_status_error(response)
#x1B[1m#x1B[.../hybridcloud/rpc/service.py#x1B[0m:605: in _raise_from_response_status_error
    raise self._remote_exception(
#x1B[1m#x1B[31mE   sentry.hybridcloud.rpc.service.RpcRemoteException: region_caching.clear_key: Error invoking rpc at '.../rpc/region_caching/clear_key/': check error logs for more details#x1B[0m

#x1B[33mThe above exception was the direct cause of the following exception:#x1B[0m
#x1B[1m#x1B[.../issues/endpoints/test_organization_group_index.py#x1B[0m:2462: in test_query_detector_filter
    self.login_as(user=self.user)
#x1B[1m#x1B[.../sentry/testutils/cases.py#x1B[0m:321: in login_as
    login(request, user)
#x1B[1m#x1B[31m.venv/lib/python3.13.../contrib/auth/__init__.py#x1B[0m:197: in login
    user_logged_in.send(sender=user.__class__, request=request, user=user)
#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[31m.venv/lib/python3.13.../contrib/auth/models.py#x1B[0m:24: in update_last_login
    user.save(update_fields=["last_login"])
#x1B[1m#x1B[.../sentry/silo/base.py#x1B[0m:159: in override
    return original_method(*args, **kwargs)
#x1B[1m#x1B[.../users/models/user.py#x1B[0m:232: in save
    with outbox_context(transaction.atomic(using=router.db_for_write(User))):
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13/contextlib.py#x1B[0m:148: in __exit__
    next(self.gen)
#x1B[1m#x1B[.../hybridcloud/models/outbox.py#x1B[0m:538: in outbox_context
    with unguarded_write(using=inner.using), enforce_constraints(inner):
#x1B[1m#x1B[.../hostedtoolcache/Python/3.13.1....../x64/lib/python3.13/contextlib.py#x1B[0m:148: in __exit__
    next(self.gen)
#x1B[1m#x1B[.../db/postgres/transactions.py#x1B[0m:115: in enforce_constraints
    with transaction:
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:229: in new_atomic_exit
    maybe_flush_commit_hooks(connection)
#x1B[1m#x1B[.../sentry/testutils/hybrid_cloud.py#x1B[0m:220: in maybe_flush_commit_hooks
    connection.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[.../hybridcloud/models/outbox.py#x1B[0m:202: in <lambda>
    transaction.on_commit(lambda: self.drain_shard(), using=router.db_for_write(type(self)))
#x1B[1m#x1B[.../hybridcloud/models/outbox.py#x1B[0m:353: in drain_shard
    processed = shard_row.process(is_synchronous_flush=not flush_all)
#x1B[1m#x1B[.../hybridcloud/models/outbox.py#x1B[0m:314: in process
    raise OutboxFlushError(
#x1B[1m#x1B[31mE   sentry.hybridcloud.models.outbox.OutboxFlushError: Could not flush shard category=0 (USER_UPDATE)#x1B[0m
tests.sentry.monitors.migrations.test_0009_backfill_monitor_detectors.BackfillMonitorDetectorsTest::test
Stack Traces | 26.5s run time
#x1B[1m#x1B[.../monitors/migrations/test_0009_backfill_monitor_detectors.py#x1B[0m:50: in test
    assert Detector.objects.all().count() == 2
#x1B[1m#x1B[31mE   assert 4 == 2#x1B[0m
#x1B[1m#x1B[31mE    +  where 4 = <bound method QuerySet.count of <BaseQuerySet [<Detector at 0x7ff2a43c2b60: id=4>, <Detector at 0x7ff2a43c3d40: id=5>, <Detector at 0x7ff2a43c0530: id=6>, <Detector at 0x7ff2a43c0460: id=7>]>>()#x1B[0m
#x1B[1m#x1B[31mE    +    where <bound method QuerySet.count of <BaseQuerySet [<Detector at 0x7ff2a43c2b60: id=4>, <Detector at 0x7ff2a43c3d40: id=5>, <Detector at 0x7ff2a43c0530: id=6>, <Detector at 0x7ff2a43c0460: id=7>]>> = <BaseQuerySet [<Detector at 0x7ff294c53e70: id=4>, <Detector at 0x7ff2ce908ad0: id=5>, <Detector at 0x7ff2946f4600: id=6>, <Detector at 0x7ff2a43c2b60: id=7>]>.count#x1B[0m
#x1B[1m#x1B[31mE    +      where <BaseQuerySet [<Detector at 0x7ff294c53e70: id=4>, <Detector at 0x7ff2ce908ad0: id=5>, <Detector at 0x7ff2946f4600: id=6>, <Detector at 0x7ff2a43c2b60: id=7>]> = <bound method BaseManager.all of <sentry.db.models.manager.base.DetectorManager object at 0x7ff2e1e2f230>>()#x1B[0m
#x1B[1m#x1B[31mE    +        where <bound method BaseManager.all of <sentry.db.models.manager.base.DetectorManager object at 0x7ff2e1e2f230>> = <sentry.db.models.manager.base.DetectorManager object at 0x7ff2e1e2f230>.all#x1B[0m
#x1B[1m#x1B[31mE    +          where <sentry.db.models.manager.base.DetectorManager object at 0x7ff2e1e2f230> = Detector.objects#x1B[0m
tests.sentry.workflow_engine.migrations.test_0084_crons_dedupe_workflows.DedupeCronWorkflowsTest::test_migration
Stack Traces | 27.1s run time
#x1B[1m#x1B[.../workflow_engine/migrations/test_0084_crons_dedupe_workflows.py#x1B[0m:285: in test_migration
    detector1_wf = DetectorWorkflow.objects.get(detector=self.detector1)
#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[31m.venv/lib/python3.13.../db/models/query.py#x1B[0m:636: in get
    raise self.model.MultipleObjectsReturned(
#x1B[1m#x1B[31mE   sentry.workflow_engine.models.detector_workflow.DetectorWorkflow.MultipleObjectsReturned: get() returned more than one DetectorWorkflow -- it returned 10!#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.

2 participants