28 lines
618 B
Python
28 lines
618 B
Python
"""enforce one open issue per detected condition
|
|
|
|
Revision ID: 4f2b9c8d7e61
|
|
Revises: 0a4c1d2e3f5b
|
|
"""
|
|
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
revision = "4f2b9c8d7e61"
|
|
down_revision = "0a4c1d2e3f5b"
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
op.create_index(
|
|
"uq_data_quality_one_open_condition",
|
|
"data_quality_issues",
|
|
["rule_type", "entity_type", "entity_id"],
|
|
unique=True,
|
|
postgresql_where=sa.text("status = 'open'"),
|
|
)
|
|
|
|
|
|
def downgrade() -> None:
|
|
op.drop_index("uq_data_quality_one_open_condition", table_name="data_quality_issues")
|